SpyBara
Go Premium

errors.md 2026-10-01 23:59 UTC to 2026-10-02 03:59 UTC

This page contains 641 additions and 613 deletions.

2026
Thu 1 23:59 Fri 2 04:57

Referensi kesalahan

Cari pesan kesalahan runtime Claude Code dengan arti masing-masing dan cara memperbaikinya.

Halaman ini mencantumkan kesalahan runtime yang ditampilkan Claude Code dan cara memulihkan dari masing-masing, ditambah apa yang harus diperiksa ketika respons tampak tidak normal tanpa kesalahan. Untuk kesalahan instalasi seperti command not found atau kegagalan TLS selama penyiapan, lihat Troubleshoot installation and login.

Kecuali untuk Wrapper and IDE errors, yang dicetak oleh program peluncur daripada Claude Code itu sendiri, kesalahan dan perintah pemulihan ini berlaku di seluruh CLI, Desktop app, dan cloud sessions, karena ketiganya membungkus CLI Claude Code yang sama. Untuk masalah spesifik surface lainnya, lihat bagian pemecahan masalah di halaman surface tersebut.

Temukan kesalahan Anda

Cocokkan pesan yang Anda lihat dengan bagian di bawah ini.

Pesan Bagian
API Error: 500 Internal server error Server errors
API Error: Repeated 529 Overloaded errors Server errors
Opus is experiencing high load / Fable is experiencing high load Server errors
Request timed out Server errors, atau Network jika pesan menyebutkan koneksi internet Anda
API Error: No response from API Server errors
Server error mid-response. The response above may be incomplete. Server errors
Connection lost mid-response / Your computer went to sleep mid-response / The response stopped arriving Server errors
Connection closed mid-response / Response stalled mid-stream Server errors
Part of the response never arrived / The response stream was malformed Server errors
API Error: Content block not found / API Error: Content block already closed / API Error: Stream event unreadable Server errors
Connection lost before a response was produced / Your computer went to sleep before a response was produced / The response stalled before a response was produced Automatic retries
Connection closed while thinking / Response stalled while thinking Automatic retries
Connection lost while your computer was asleep Automatic retries
<model> is temporarily unavailable, so auto mode cannot determine the safety of... Server errors
Auto mode could not evaluate this action and is blocking it for safety Server errors
Auto mode classifier transcript exceeded context window Server errors
Agent aborted: auto mode classifier request refused by the safety safeguard Server errors
The server-side auto mode classifier gave no verdict Server errors
Auto mode is unavailable — the server returned no safety verdict for the last 10 responses Server errors
Agent terminated early due to an API error Server errors
You've hit your session limit / You've hit your weekly limit / You've hit your Opus limit / You've hit your Sonnet limit Usage limits
Usage credits required for 1M context Usage limits
the prompt to confirm went unanswered — nothing was sent Usage limits
Server is temporarily limiting requests Usage limits
Request rejected (429) Usage limits
Credit balance is too low Usage limits
You've hit your monthly spend limit / You've hit your individual spend limit / You've hit your org's monthly spend limit / You've hit your channel's monthly spend limit / You've hit your team's shared budget / You've hit your individual usage limit Usage limits
Could not update your spend limit Usage limits
spend limit reached / spend limit unavailable Usage limits
Not logged in · Please run /login Authentication
Couldn't save your login Authentication
Authentication required · Sign in again to continue Authentication
Could not resolve authentication method Authentication
Invalid API key Authentication
Your apiKeyHelper script is failing Authentication
Invalid auth token · Fix external auth token Authentication
Invalid ANTHROPIC_CUSTOM_HEADERS · Fix the environment variable Authentication
Invalid request header from the environment · Fix the environment variable Authentication
This organization has been disabled Authentication
Your organization has disabled API key authentication Authentication
Your organization has disabled Claude subscription access Authentication
Routines are disabled by your organization's policy Authentication
Remote Control is only available when using Claude via api.anthropic.com Authentication
OAuth token refresh failed — run /login to re-authenticate Authentication
JWT refresh failed: no OAuth token — run /login Authentication
Claude.ai login expired Authentication
Claude.ai login was rejected — run /login, then /remote-control Authentication
OAuth token unavailable — run /login to restore Remote Control Authentication
Signed out of Claude — run /login, then /remote-control Authentication
signed-in claude.ai account or organization changed on this machine Authentication
Remote Control stopped — the app running this session is now signed in to a different Claude account Authentication
Remote Control stopped — the app running this session is signed out of Claude Authentication
Couldn't verify your organization's policy for remote control Troubleshoot Remote Control
Remote Control is disabled by your organization's policy Troubleshoot Remote Control
Remote Control was turned off by your organization's policy Troubleshoot Remote Control
OAuth token revoked / OAuth token has expired Authentication
API Error: 401 Invalid authentication credentials Authentication
Login expired · Please run /login Authentication
Failed to start OAuth callback server Authentication
Claude login not accepted · Run /login, then try again Authentication
Artifacts need a claude.ai login Authentication
Not signed in to the Cloud gateway — run /login. Authentication
Administrator policy requires a Cloud gateway sign-in on this machine Authentication
Failed to authenticate: OAuth session expired and could not be refreshed Authentication
Could not refresh your login because another Claude Code process is refreshing it Authentication
Failed to refresh OAuth token: another Claude Code process is refreshing it or exited mid-refresh Authentication
Your account is on hold and can't use Claude Code. View details or appeal: https://claude.ai/restricted Authentication
Your account is on hold and can't sign in to Claude Code. View details or appeal: https://claude.ai/restricted Authentication
Anthropic profile login expired · Re-authenticate your Anthropic profile Authentication
Anthropic profile login expired · Run /login to use your claude.ai account instead, or re-authenticate the profile Authentication
does not meet scope requirement user:profile Authentication
claude.ai rejected the session token / session token rejected Authentication
MCP server "<name>" needs you to sign in again (run /mcp to re-authenticate) Authentication
rejected the credential from its headersHelper / rejected the Authorization header in its config Authentication
MCP server "<name>" needs additional permissions (scope: "<scope>") — run /mcp to re-authenticate Authentication
MCP server "<name>" requires re-authorization (token expired) Authentication
This server's URL is missing or not a valid URL, so sign-in can't start Authentication
Issuer mismatch in authorization response (RFC 9207) Authentication
Refusing to send credentials to non-https token endpoint / <short-name> from the MCP SDK for <server-url> Authentication
Cloud gateway session expired — run /login to reconnect. Authentication
Cloud gateway <url> no longer accepts this session Authentication
Sign-in timed out while waiting for you to continue. Try again. Authentication
AWS credentials expired or invalid Authentication
AWS authentication failed Authentication
Google Cloud credentials expired or invalid Authentication
Google Cloud authentication failed Authentication
Microsoft Foundry authentication failed Authentication
Gateway refused the request Authentication
Could not load AWS credentials / Could not load Google Cloud credentials Authentication
AWS default-chain credential resolve timed out Authentication
Timed out after 60s waiting for AWS Authentication
A request to AWS timed out. Check your network and proxy settings, then try again. Authentication
Could not load the default credentials pada Google Cloud's Agent Platform Authentication
Unable to connect to API Network
Connection refused — / Can't reach the API server — / No internet route — / Couldn't connect through your proxy / Connection dropped, masing-masing dengan kode kesalahan dalam tanda kurung Network
Unable to connect to Anthropic services selama penyiapan Network
Socket is closed Network
Waiting for API response · will retry in Automatic retries, atau Network jika terus berlanjut
API returned an empty or malformed response Network
Streaming response ended before any complete data was received Network
Bedrock streaming response has content-type "..."; expected "application/vnd.amazon.eventstream" Network
SSL certificate verification failed Network
SSL certificate error (...) selama login atau startup Network
unable to get local issuer certificate Network
403 dengan x-deny-reason: host_not_allowed dalam sesi cloud atau routine Network
proxy refused the connection Network
403 dengan This GraphQL query is not enabled for this session dalam sesi cloud GitHub proxy
The cloud environments service returned an empty response / The cloud environments service returned a response in an unexpected format Network
Couldn't reconnect to your Remote Control session Network
N sessions ended while this machine was offline — the environment was cleaned up on the server and can't be resumed. Network
Couldn't share the transcript. Network
Couldn't send feedback Network
Prompt is too long / Input is too long for requested model Request errors
Prompt is too long · automatic compaction failed: Request errors
Prompt is too long · this conversation is a single exchange / A single-exchange conversation cannot be compacted Request errors
Context limit reached · /compact or /clear to continue Request errors
Context limit reached · /clear to continue Request errors
capability_rejected: prompt_too_long pada sesi gateway aplikasi Claude Request errors
upstream rejected the request / request too large for this upstream pada sesi gateway aplikasi Claude Upstream error messages
upstream rate limit exceeded pada sesi gateway aplikasi Claude Upstream error messages
all upstreams failed (N attempted) pada sesi gateway aplikasi Claude Upstream error messages
Claude Code may not be enabled for your organization setelah login gateway aplikasi Claude Claude apps gateway troubleshooting
Context exceeds the ...-token limit by ... tokens dalam output /context Request errors
Request too large Request errors
Request too large for the API's 32MB request limit Request errors
Image was too large Request errors
Unable to resize image Request errors
PDF too large / PDF is password protected / pdftoppm is not installed Request errors
Extra inputs are not permitted Request errors
API Error: 400 ... tools.N.custom.input_schema: JSON schema is invalid / Property keys should match pattern Request errors
tool_use.name: String should have at most 200 characters Request errors
There's an issue with the selected model Request errors
Model ... is not a recognized model id Request errors
Model ... not found Request errors
Couldn't confirm model ... with the API Request errors
API error: ... · model not changed Request errors
Claude Opus is not available with the Claude Pro plan Request errors
Claude Code ... does not support this model; version ... or newer is required Request errors
Claude Code ... is older than the minimum version required by your organization's policy Request errors
Model ... is restricted by your organization's settings Request errors
Model ... is not available. Your organization restricts model selection. Request errors
Can't switch to the default model Request errors
Model switch ... blocked by a PreModelSwitch hook Request errors
couldn't save it as your default / couldn't confirm it was saved as your default Request errors
thinking.type.enabled is not supported for this model Request errors
Effort '<level>' isn't available with thinking turned off on this model Request errors
effort '<level>' is not supported when thinking is disabled Request errors
max_tokens must be greater than thinking.budget_tokens Request errors
API Error: 400 due to tool use concurrency issues Request errors
API Error: 400 orphaned tool_result in conversation history Request errors
API Error: 400 duplicate tool_use ID in conversation history Request errors
Invalid data in redacted_thinking block Request errors
[Unsupported tool content removed] Request errors
role 'system' must precede an 'assistant' message Request errors
Invalid encrypted_content in search_result block / Invalid encrypted_index in text block / Failed to decrypt web search result content Request errors
Invalid encrypted_stdout in encrypted_code_execution_result block Request errors
server_tool_use.name: Input should be pada setiap giliran sesi yang dilanjutkan Request errors
<model> can't help with this. Start a new session to continue Request errors
Claude Code is unable to respond to this request, which appears to violate our Usage Policy Request errors
<model>'s safeguards flagged this message Request errors
<model>'s safeguards flagged this session Request errors
<model> has safety measures that flagged this message for a cybersecurity topic Request errors
Installation was killed before it could finish (exit code 137) Installation errors
The connection dropped while downloading the update Installation errors
Download timed out: exceeded the total deadline Installation errors
--bg and --print conflict Command-line errors
Error: Cannot use both --append-subagent-system-prompt and --append-subagent-system-prompt-file. Please use only one. Command-line errors
Cloud sessions cannot be created from a --restricted session Command-line errors
Cloud sessions are disabled by your organization's policy Command-line errors
Couldn't verify your organization's policy for cloud sessions Command-line errors
Error: --json-schema is not a valid JSON Schema Command-line errors
Error: Invalid --agents configuration: Command-line errors
Error: --agents takes a JSON object, or a file path only with --print (-p) Command-line errors
Error: --agents file not found Command-line errors
Error: Settings file exceeds the 2MiB limit Command-line errors
The current directory no longer exists (it was deleted or moved) / Can't read the current directory Command-line errors
Temp directory <dir> ... Refusing to use it / ENOSPC: no space left on device, mkdir '<dir>' Command-line errors
couldn't be resolved to a real location, so its skills, commands, and agents weren't loaded Command-line errors
Error: Workspace not trusted saat memulai Remote Control Command-line errors
`<flag>` before `remote-control` is not carried over to the sessions Remote Control starts Command-line errors
`claude import` is not yet available in this build Command-line errors
Could not read Claude Code config Command-line errors
Could not import <server>: <reason> Command-line errors
Cannot add MCP server to scope: managed Command-line errors
is Anthropic-hosted and doesn't support local OAuth Command-line errors
Can't read .mcp.json: it isn't a regular file or is larger than 2097152 bytes Command-line errors
MCP server "<name>" was not saved to / was not removed from Command-line errors
MCP server "<name>" may not have been saved / may not have been removed Command-line errors
Server rejected the Authorization header minted by the configured headersHelper Command-line errors
Error: MCP tool <name> (passed via --permission-prompt-tool) not found Command-line errors
OAuth callback port <port> is already in use — another process may be holding it Command-line errors
No available ports for OAuth redirect Command-line errors
Shell command failed for pattern "...", dari /security-review atau skill apa pun yang menyuntikkan konteks dinamis Command-line errors
Shell command permission check failed for pattern "...", dari skill yang menyuntikkan konteks dinamis Command-line errors
Skill <name> requires bash (`shell: bash` in frontmatter) but Git Bash was not found Command-line errors
Input must be provided either through stdin or as a prompt argument when using --print Command-line errors
Error: Input contained only whitespace Command-line errors
Blank prompt — the message was only whitespace, so nothing was sent to the model. Command-line errors
Error: stream-json input carried over 256M characters with no newline Command-line errors
Unknown command: /<name>, dengan atau tanpa saran Did you mean Command-line errors
Diff is too large for ultrareview / PR #<N> is too large for ultrareview Command-line errors
Could not find merge-base with <branch> Command-line errors
Your checkout has no branches (detached HEAD only) Command-line errors
Ultrareview clones <owner>/<repo> in the cloud with the GitHub account connected to your Claude account, and none is connected Command-line errors
Your connected GitHub account can't see <owner>/<repo> Command-line errors
The GitHub App preflight failed transiently (network or service hiccup) — retry in a moment to start from GitHub instead Command-line errors
Not uploading this working tree dengan the upload cannot follow that setting Command-line errors
GitHub isn't connected to your Claude account, so this repository can't be cloned in the cloud Command-line errors
Single sign-on authorization needed Command-line errors
Failed to resume the conversation Command-line errors
No conversation found with session ID: <session-id> Command-line errors
Windows reported an error (EBADF) when Claude Code read this session's transcript file Command-line errors
Cannot switch renderers in this session Command-line errors
Cannot switch renderers while work is running in the background Command-line errors
Couldn't open Claude Desktop Command-line errors
Failed to open Claude Desktop. Please try opening it manually. Command-line errors
Couldn't read your Zed keymap / Couldn't back up your Zed keymap / Couldn't update your Zed keymap Command-line errors
Your Zed keymap isn't a readable list of keybindings Command-line errors
Skill usage reports are not available on this connection. Command-line errors
Custom output styles can't be selected over Remote Control or from a relayed message Command-line errors
Output styles are saved to local settings (.claude/settings.local.json), which this session doesn't load Command-line errors
`plugin eval` is currently in early access / `plugin eval` is currently unavailable Plugin errors
Marketplace "<name>" is registered from an untrusted source Plugin errors
Claude Code refuses the marketplace name "<name>" Plugin errors
Marketplace name impersonates an official Anthropic/Claude marketplace Plugin errors
Marketplace "<name>" is already added from a different source Plugin errors
"<name>" is another spelling of "<reserved>", a reserved marketplace name Plugin errors
Marketplace "<name>" is added but ignored Plugin troubleshooting
Marketplace "<name>" is registered but was refused (see the debug log) Plugin troubleshooting
references ${user_config.*} in a shell-form command Plugin errors
Monitor "<name>" from plugin <plugin> references ${user_config.*} in its command Plugin errors
headersHelper for MCP server '<name>' references ${user_config.*} Plugin errors
Plugin archive integrity check failed Plugin errors
An npm plugin source must name a registry package Plugin troubleshooting
path escapes plugin directory Plugin errors
path could not be checked Plugin errors
its marketplace entry path does not stay inside the marketplace directory Plugin errors
Plugin source path refused Plugin errors
Failed to load marketplace configuration Plugin errors
Marketplace configuration file is corrupted Plugin errors
Plugin "<name>@synced" is required by your organization and can't be disabled here Plugin errors
"<plugin>" was not uninstalled: it is still switched on in <file> Plugin errors
"<plugin>" was not uninstalled: <file> is there and could not be read Plugin errors
Plugin "<plugin>" was not uninstalled: installed_plugins.json Plugin troubleshooting
would be spawned with zero tools — refusing Tool errors
File is covered by a Read deny rule in your permission settings Tool errors
cannot contain null bytes (\0) Tool errors
Path contains null bytes Tool errors
subagent_type is required: the general-purpose agent is not available in this session Tool errors
Error: this write left the memory index at MEMORY.md at ..., over its ... read limit Tool errors
pkill: refusing to run Tool errors
Failed to write to <name>'s inbox — nothing was sent Tool errors
Failed to write the plan approval request to the lead's inbox — plan not submitted Tool errors
Its agent definition was not restored: the folder its definition file came from is not trusted Tool errors
Message too large for cross-session delivery Tool errors
Too many messages to this session just now Tool errors
Cross-session message was dropped at the recipient session's inbox Tool errors
Refusing to send: reply target is a symlink / Refusing to send: cannot vet reply target Tool errors
Refusing to read <path>: its symlink resolution changed after permission was checked (<reason>) / Refusing to search <path>: its symlink resolution changed after permission was checked Tool errors
Refusing to write <path>: its parent-directory symlink resolution changed after permission was checked / Refusing to write <path>: it is a symbolic link. Write to the link's target path instead Tool errors
Refusing to write through symlink: <path> / Refusing to write into symlinked directory: <path> Tool errors
Refusing to write <path>: where it leads on disk could not be determined / Refusing to read <path>: where it leads on disk could not be determined Tool errors
Refusing to search <path>: a path one of its Read deny rules is written through changed while the search was being prepared / Refusing to search <path>: it could not be opened Tool errors
its permission check expired before it ran (too many concurrent file operations) / ripgrep was found only by name on PATH Tool errors
task output swap refused (tasks dir moved or linked) Tool errors
Command killed: its output file was replaced or could no longer be verified Tool errors
Your disk quota is full on the filesystem with Claude Code's temp directory <dir> (EDQUOT) Tool errors
The filesystem with Claude Code's temp directory <dir>, or your disk quota on it, is full (ENOSPC) Tool errors
Command output was lost: the temp filesystem at <dir> is full / is out of inodes Tool errors
the source file is not valid UTF-8 text / the source file is not valid UTF-16 text Tool errors
the source file has the replacement character U+FFFD Tool errors
Reading a local file from outside this session's connected folders, or through a link, needs the approval card Tool errors
cannot read file_path (...) — the file could not be examined, and no one can answer the approval card Tool errors
WebFetch cannot fetch localhost or other hostnames without a dot Tool errors
The safety check for domain ... is rate-limited Tool errors
The safety check for domain ... is temporarily rate-limited Tool errors
Unable to verify if domain ... is safe to fetch Tool errors
Can't open MCP settings while no terminal is attached to this background session Background session errors
Can't open MCP settings in a background session Background session errors
blocked because the path is spelled in a form that cannot be safely resolved Background session errors
blocked because the path is network-shaped Background session errors
is isolated in the worktree <path>, but this command <reason>. Refusing to run it Background session errors
too complex to verify that it stays inside the worktree Background session errors
This session has no saved transcript Background session errors
Can't open — this session is running in another terminal Background session errors
This conversation is already open in another running Claude session Background session errors
This session's saved conversation is no longer on disk Background session errors
kept <id> — its worktree is still at <path> Background session errors
kept <id> — <n> unpushed commits on <branch> Background session errors
kept <id> — worktree has commits that are not pushed anywhere Background session errors
terminal host process died — press Enter to restart / This session's terminal host process died Background session errors
Session isn't responding / Press enter again to restart this session — it isn't responding Background session errors
Session <id> was stopped while the respawn was in flight Background session errors
This session was running agent '<name>', which is no longer available Background session errors
CLAUDE_CODE_PROCESS_WRAPPER: launcher ... Background session errors
EUNKNOWN: unknown error, uv_spawn Background session errors
EACCES: permission denied, posix_spawn Background session errors
exited before it became reachable Background session errors
Couldn't start a background session (working directory no longer exists or is not accessible: ...) Background session errors
Workspace not trusted. saat memulai atau memulai ulang sesi latar belakang Background session errors
Claude Code is being updated by npm on this machine (still not runnable after 2 min, ...) Background session errors
Claude Code process exited with code N Wrapper and IDE errors
The connection to Claude Code ended before this message completed Wrapper and IDE errors
Could not locate the Claude CLI on PATH Wrapper and IDE errors
Restored the code, but skipped N files Rewind warnings and errors
No files were restored: N files failed (backup missing, or the file could not be updated) Rewind warnings and errors
Transcript writes are failing (...) Session saving warnings
Transcript saving is off — CLAUDE_CODE_SKIP_PROMPT_HISTORY is set Session saving warnings
Transcript saving is off — inherited CLAUDE_CODE_CHILD_SESSION marker Session saving warnings
Claude Code's fullscreen renderer didn't finish starting last time on this machine / Claude Code's fullscreen renderer has repeatedly failed to start on this machine Fullscreen rendering
Claude Code exited after an unrecoverable interface error (...) Configuration warnings
Agent descriptions are over the 15.0k-token limit Configuration warnings
Not loaded: rename <path>, then restart — its name uses "<name>", a name reserved for the skills synced from your claude.ai account Configuration warnings
Ignoring N permissions.allow entries from ... this workspace has not been trusted Configuration warnings
is a network path, which cannot be added as a working directory Configuration warnings
Remote managed settings failed to load (<cause>) Configuration warnings
Managed settings were not approved; exiting without applying them. Configuration warnings
Claude Code can't start: your organization's managed settings block the default model / Claude Code can't start: your organization allows only the models listed in "availableModels" Configuration warnings
Your organization's managed settings allow Claude Code to use: <providers> Configuration warnings
Your organization's managed settings allow Claude Code to use no API provider at all Configuration warnings
MCP server <name> is blocked by enterprise managed policy Configuration warnings
Managed settings document could not be parsed as a JSON object; none of its settings are in effect. Fix or remove it. Configuration warnings
Managed settings drop-in directory could not be read Configuration warnings
Unable to read managed policy settings Configuration warnings
otelHeadersHelper failed; telemetry is not being exported. See /status: ... Configuration warnings
"crossSessionInbound" must be one of "accept", "hold", "refuse" Configuration warnings
headersHelper not run — this workspace has no persisted trust Configuration warnings
Invalid permission rule "..." was skipped: Malformed Tool(content) rule Configuration warnings
... is not matched by file permission checks Configuration warnings
... has a wildcard before the rest of the command Configuration warnings
CLAUDE_CODE_DISABLE_1M_CONTEXT is set, but the 200K limit isn't enforced Configuration warnings
[claude-code:unrecognized_model] Configuration warnings
Stale sandbox mask files left by a killed session Configuration warnings
Respons tampak berkualitas lebih rendah dari biasanya Response quality

Pengulangan otomatis

Claude Code mengulangi kegagalan transien hingga 10 kali dengan exponential backoff sebelum menampilkan kesalahan kepada Anda. Tidak selalu mengulangi kegagalan yang tiba di tengah respons Claude. Ketika Anda melihat salah satu kesalahan di halaman ini, Claude Code telah membuat pengulangan apa pun yang berlaku untuk kegagalan tersebut.

Claude Code mengulangi kegagalan ini:

  • Server errors, overloaded responses, dan request timeouts yang tiba sebelum respons Claude mulai streaming.
  • Dropped connections. Ketika koneksi terputus di tengah permintaan sebelum Claude menyelesaikan bagian mana pun dari responsnya, termasuk pemikirannya, Claude Code mengeluarkan kembali permintaan dengan backoff yang sama dan giliran berlanjut, bahkan jika beberapa teks telah mulai streaming. Ketika terputus setelah Claude selesai berpikir tetapi sebelum memulai teks atau panggilan alat apa pun, Claude Code malah mengeluarkan kembali permintaan hingga dua kali dengan cepat, dan mengakhiri giliran dengan Connection lost before a response was produced jika koneksi terus terputus pada titik itu.
  • Koneksi yang Claude Code deteksi rusak karena komputer Anda tidur di tengah permintaan. Claude Code menghitungnya sebagai dropped connection sesuai aturan di atas; setelah label pengulangan menyebutkan alasan spesifik, dibaca Connection lost while your computer was asleep, dan jika giliran berakhir setelah Claude selesai berpikir tetapi sebelum teks atau panggilan alat apa pun, pesan berbunyi Your computer went to sleep before a response was produced.
  • Stalled response stream, ketika response headers telah tiba tetapi tidak ada respons Claude yang tiba, atau ketika Claude selesai berpikir tetapi belum memulai teks atau panggilan alat apa pun: Claude Code membatalkan koneksi yang macet dan mengeluarkan kembali permintaan paling banyak sekali, di luar anggaran 10-percobaan di atas. Jika respons macet untuk kedua kalinya setelah Claude selesai berpikir tetapi sebelum teks atau panggilan alat apa pun, Claude Code mengakhiri giliran dengan The response stalled before a response was produced.
  • Streaming request yang API tidak pernah jawab dengan response headers, pada koneksi di mana first-byte deadline berjalan: Claude Code membatalkannya pada deadline dan mengirimnya kembali paling banyak sekali per model request, dalam anggaran pengulangan, kemudian mengakhiri giliran dengan No response from API jika percobaan itu juga tidak dijawab. Pada koneksi lain, permintaan menunggu API_TIMEOUT_MS. Ketika Anda menetapkan CLAUDE_CODE_RETRY_WATCHDOG, batas satu pengulangan tidak berlaku.
  • Temporary 429 throttles, tetapi bukan 429 spend-limit gateway, yang bukan throttle; lihat Spend limit reached.
    • Ketika Anda masuk dengan langganan claude.ai, ini mencakup 429 throttles yang tidak membawa header kuota rencana Anda. Sebelum v2.1.199, Claude Code hanya mengulangi throttles tersebut untuk API key dan Enterprise sign-ins.
  • Permintaan ditolak karena input plus max_tokens melebihi context limit. Mengirimnya kembali tanpa perubahan akan gagal dengan cara yang sama, jadi Claude Code mengulangi dengan max_tokens yang dikurangi, dan berhenti mengulangi dan melakukan compact sebagai gantinya dalam dua kasus:
    • Ketika tidak ada pengurangan yang dapat muat, misalnya ketika percakapan itu sendiri hampir mengisi context window.
    • Ketika pengulangan tidak dapat menyusutkan max_tokens lebih jauh. Sebelum v2.1.218, Claude Code dapat mengirim kembali permintaan yang dikurangi yang masih tidak muat, seperti ketika extended thinking budget melebihi context yang tersisa, sampai anggaran pengulangan habis.
  • Expired atau missing Google Cloud credential pada Google Cloud's Agent Platform, atau AWS credentials yang gagal dimuat di mesin Anda. Claude Code membuang credentials yang di-cache dan mengulangi hingga dua kali, kemudian melaporkan kesalahan sehingga Anda dapat re-authenticate segera, seperti dijelaskan di bawah Could not load AWS or Google Cloud credentials. Sebelum v2.1.228, Claude Code mengulangi failing Google Cloud credential melalui anggaran pengulangan penuh sebelum menampilkan kesalahan.
  • 401 atau 403 dari Anthropic API, secara langsung atau melalui LLM gateway, sementara script apiKeyHelper menyediakan credential. Claude Code menjalankan kembali script dan mengulangi dengan output segar-nya, dalam anggaran pengulangan penuh. Ketika script itu sendiri gagal pada re-run, Claude Code menampilkan Your apiKeyHelper script is failing sebagai gantinya.

Sebelum v2.1.227, Connection lost before a response was produced berbunyi Connection closed while thinking, before producing a response dan The response stalled before a response was produced berbunyi Response stalled while thinking, before producing a response.

Claude Code tidak mengulangi kegagalan ini:

  • TLS certificate validation failure, seperti TLS-inspecting proxy, missing NODE_EXTRA_CA_CERTS bundle, atau expired certificate. Claude Code melaporkan kesalahan pada percobaan pertama, sehingga Anda dapat memperbaiki setup certificate dengan segera; lihat SSL certificate errors. Claude Code masih mengulangi transient TLS conditions seperti handshake timeout. Sebelum v2.1.199, Claude Code mengulangi certificate failures melalui anggaran pengulangan penuh sebelum menampilkan kesalahan.
  • Server error, dropped connection, atau stalled stream yang tiba setelah Claude menyelesaikan blok teks atau panggilan alat, atau telah memulai satu setelah menyelesaikan pemikirannya, tetapi sebelum menyelesaikan respons. Claude Code tidak menjalankan kembali permintaan, karena itu dapat mengeksekusi panggilan alat yang sama dua kali. Ini menyimpan apa yang Claude selesaikan, menjalankan panggilan alat apa pun yang Claude selesaikan, dan melanjutkan giliran dari hasil mereka. Untuk apa yang Anda lihat dalam sesi interaktif dan non-interaktif, baca The response above may be incomplete. Sebelum v2.1.199, Claude Code membuang output parsial dan melaporkan seluruh giliran sebagai kesalahan ketika server error tiba di tengah-tengah stream.
  • Kegagalan yang tiba setelah Claude menyelesaikan respons: tidak ada yang perlu diulangi, jadi Claude Code menyimpan respons lengkap dan mengakhiri giliran secara normal.
  • Amazon Bedrock streaming response dengan unexpected content-type, karena gateway atau proxy yang menulis ulang respons akan menulis ulang pengulangan dengan cara yang sama. Memerlukan Claude Code v2.1.208 atau lebih baru.
  • Non-streaming retry dari failed streaming request yang mendapat success status tetapi no Claude API message in the body. Claude Code mengakhiri giliran dengan kesalahan itu.
  • Permintaan yang policy check organisasi Anda tolak, yang muncul sebagai baris API Error: yang membawa pesan penolakan. Administrator organisasi Anda menyiapkan check dengan Inference hooks, fitur Claude Enterprise, dan pesan berakhir dengan instruksi yang mereka konfigurasi, atau secara default memberi tahu Anda untuk menghubungi mereka. Claude Code tidak mengirim kembali permintaan yang ditolak ke model yang sama atau ke fallback model, karena penolakan adalah tentang konten permintaan daripada model. Sebelum v2.1.239, Claude Code dapat mengirim kembali permintaan yang ditolak, tanpa streaming atau pada fallback model yang dikonfigurasi, sebelum menampilkan penolakan kepada Anda.

Apa yang Anda lihat saat Claude Code mengulangi atau menunggu

Saat mengulangi, spinner menampilkan countdown Retrying in Ns · attempt x/y setelah label kesalahan. Label menyebutkan alasan spesifik dari percobaan pertama untuk kegagalan yang dapat Anda tindaklanjuti segera: jaringan tidak aktif, TLS handshake gagal, atau Anda mencapai rate limit. Untuk kesalahan lain dibaca API error pada awalnya. Mulai v2.1.198 beralih ke alasan spesifik dari percobaan ketiga, atau pada percobaan terakhir ketika CLAUDE_CODE_MAX_RETRIES memungkinkan lebih sedikit dari tiga; versi sebelumnya beralih hanya pada percobaan terakhir.

Mulai v2.1.198, spinner tip biasa ditekan selama pengulangan. Setelah alasan kesalahan terungkap, jika kegagalan adalah 529 overload baris di bawah countdown juga menyebutkan di mana memeriksa status layanan: status.claude.com pada Anthropic API, atau penyedia atau host gateway yang dinamai dalam pesan pada konfigurasi lain.

Jika tidak ada data yang tiba pada response stream selama 20 detik sementara permintaan masih tertunda, spinner menampilkan Waiting for API response · will retry in … · check your network sebelum pengulangan apa pun telah dimulai. Permintaan belum gagal: countdown berjalan ke titik di mana Claude Code membatalkan koneksi yang macet. Setelah pembatalan, apa yang Anda lihat tergantung pada seberapa jauh respons telah sampai:

  • Sebelum Claude menyelesaikan blok teks atau panggilan alat, atau memulai satu setelah menyelesaikan pemikirannya, Claude Code mengulangi permintaan atau mengakhiri giliran dengan kesalahan. Automatic retries mengatakan stalls mana yang diulanginya dan berapa kali.
  • Setelah Claude menyelesaikan blok teks atau panggilan alat, atau memulai satu setelah menyelesaikan pemikirannya, tetapi sebelum Claude menyelesaikan respons, Claude Code menyimpan apa yang Claude selesaikan, melanjutkan giliran dari panggilan alat apa pun yang Claude selesaikan, dan menampilkan The response above may be incomplete. Dalam sesi non-interaktif, dan untuk respons subagent dalam sesi apa pun, Claude Code mungkin pertama-tama meminta Claude untuk melanjutkan respons; entry itu mengatakan kapan itu terjadi dan kapan Anda masih melihat pemberitahuan di sana.
  • Setelah Claude menyelesaikan respons, Claude Code mengakhiri giliran secara normal.

Banner menghapus dirinya sendiri setelah data dilanjutkan atau pengulangan berhasil. Jika muncul kembali pada setiap percobaan, perlakukan sebagai network issue. Sebelum v2.1.185, banner muncul setelah 10 detik dengan wording berbeda.

Saat Claude berkonsultasi dengan advisor, banner muncul setelah 90 detik tanpa data bukan 20, karena review advisor yang panjang dapat mengirim tidak ada selama lebih dari 20 detik. Sebelum v2.1.214, threshold 20-detik diterapkan selama advisor calls juga, jadi banner muncul selama advisor reviews bahkan ketika tidak ada yang salah.

Sesuaikan perilaku pengulangan

Anda dapat menyesuaikan perilaku pengulangan dengan variabel lingkungan ini:

Variable Default Effect
CLAUDE_CODE_MAX_RETRIES 10 Jumlah percobaan pengulangan. Dibatasi pada 15 mulai v2.1.186; mulai v2.1.199 CLAUDE_CODE_RETRY_WATCHDOG menaikkan default dan menghapus batas. Turunkan untuk menampilkan kegagalan lebih cepat dalam script.
CLAUDE_CODE_RETRY_WATCHDOG unset Atur ke 1 dalam sesi tanpa pengawasan seperti CI jobs untuk mengulangi 429 dan 529 capacity errors tanpa batas bukan gagal setelah CLAUDE_CODE_MAX_RETRIES percobaan. Claude Code gagal sekaligus ketika standard-speed request mendapat 429 yang melaporkan spend limit atau exhausted usage credits, bahkan satu dari gateway spend cap yang reset pada jadwal. Sebelum v2.1.239, watchdog mengulangi ini tanpa batas. Untuk fast mode requests, lihat Handle rate limits. Pada v2.1.199 atau lebih baru itu juga menaikkan default retry count untuk transient errors lainnya, seperti server errors, timeouts, dan dropped connections, menjadi 300, kira-kira tiga jam backoff, dan menghapus batas 15 pada CLAUDE_CODE_MAX_RETRIES jika Anda menetapkan variabel itu secara eksplisit.
API_TIMEOUT_MS 600000 Per-request timeout dalam milliseconds. Naikkan untuk jaringan lambat atau proxy. Ini juga membatasi berapa lama Claude Code menunggu response headers, dijelaskan dalam No response from API.
CLAUDE_STREAM_FIRST_BYTE_TIMEOUT_MS unset Deadline dalam milliseconds untuk first response byte dari streaming request. Memerlukan Claude Code v2.1.242 atau lebih baru. Untuk bagaimana Claude Code memilih deadline ketika ini unset, lihat No response from API.

Kesalahan server

Sebagian besar kesalahan ini berasal dari penyedia inferensi: layanan Anthropic di Anthropic API, dan layanan di balik endpoint penyedia tersebut di Amazon Bedrock, Google Cloud's Agent Platform, Microsoft Foundry, atau gateway khusus. Auto mode tidak dapat menentukan keamanan suatu tindakan dan Agent dihentikan lebih awal karena kesalahan API juga mencakup penyebab di sisi Anda, seperti akun Amazon Bedrock yang tidak dapat memanggil model pengklasifikasi atau subagent yang mencapai batas penggunaan.

API Error: 500 Internal server error

Claude Code menampilkan kode status dan pesan kesalahan API untuk respons 5xx apa pun. Contoh di bawah menunjukkan respons 500 di Anthropic API:

API Error: 500 Internal server error. This is a server-side issue, usually temporary — try again in a moment. If it persists, check https://status.claude.com.

Kalimat terakhir menyebutkan tempat untuk memeriksa kesehatan layanan dan bervariasi menurut penyedia. Konfigurasi Amazon Bedrock, Google Cloud's Agent Platform, dan Microsoft Foundry menyebutkan status layanan penyedia tersebut. ANTHROPIC_BASE_URL khusus menyebutkan host gateway.

Respons 5xx dari API itu sendiri menunjukkan kegagalan yang tidak terduga di dalam API. Ini tidak disebabkan oleh prompt, pengaturan, atau akun Anda.

Ketika proxy, load balancer, atau gateway menjawab dengan halaman kesalahan HTML, pesan menampilkan kode status dan judul halaman, seperti API Error: 502 Bad Gateway. Untuk halaman tanpa judul, pesan menampilkan kode status dan nama standarnya. Sebelum v2.1.281, kode status dijatuhkan ketika halaman memiliki judul, dan markup mentah halaman dicetak ketika tidak ada.

Yang harus dilakukan:

  • Periksa status.claude.com, atau halaman status penyedia yang disebutkan dalam pesan, untuk insiden aktif
  • Tunggu satu menit, kemudian kirim pesan Anda lagi. Pesan asli Anda masih ada dalam percakapan, jadi untuk prompt yang panjang Anda dapat mengetik try again alih-alih menempel seluruh hal.
  • Jika kesalahan berlanjut tanpa insiden yang diposting, jalankan /feedback sehingga Anthropic dapat menyelidiki dengan detail permintaan Anda. Lihat Report an error jika /feedback tidak tersedia di lingkungan Anda.

API Error: Repeated 529 Overloaded errors

API sementara pada kapasitas di semua pengguna. Claude Code telah mencoba ulang beberapa kali sebelum menampilkan pesan ini:

API Error: Repeated 529 Overloaded errors. The API is at capacity — this is usually temporary. Try again in a moment. If it persists, check https://status.claude.com.

Kalimat terakhir bervariasi menurut penyedia dengan cara yang sama seperti kesalahan 500 di atas.

529 bukan batas penggunaan Anda dan tidak dihitung terhadap kuota Anda.

Yang harus dilakukan:

  • Periksa status.claude.com, atau halaman status penyedia yang disebutkan dalam pesan, untuk pemberitahuan kapasitas

  • Coba lagi dalam beberapa menit

  • Jalankan /model dan beralih ke model yang berbeda untuk terus bekerja, karena kapasitas dilacak per model. Claude Code meminta Anda untuk melakukan ini ketika satu model mengalami beban yang sangat tinggi, misalnya Opus is experiencing high load, please use /model to switch to Sonnet. Pada model Fable pesan menyebutkan Fable.

    Dalam sesi yang dijalankan aplikasi Claude Desktop, seperti tab Code atau Cowork, pesan berbunyi Opus is experiencing high load. Switch to Sonnet. dan Anda beralih model dengan pemilih model aplikasi.

Request timed out

API tidak merespons sebelum batas waktu koneksi.

Request timed out

Ini dapat terjadi selama periode beban tinggi atau ketika model menghasilkan respons yang sangat besar. Timeout permintaan default adalah 10 menit.

Yang harus dilakukan:

  • Coba lagi permintaan
  • Jika penyebabnya adalah jaringan lambat atau proxy, naikkan API_TIMEOUT_MS seperti yang dijelaskan dalam Automatic retries
  • Jika timeout sering terjadi dan jaringan Anda sehat, lihat Network and connection errors di bawah

No response from API

Claude Code mengirim permintaan streaming dan API tidak mengembalikan header respons dalam batas waktu untuk byte pertama, jadi Claude Code membatalkan permintaan alih-alih menunggu timeout permintaan API_TIMEOUT_MS penuh, 10 menit secara default. Claude Code mengirim permintaan lagi paling banyak sekali, jika retry budget memungkinkan. Ketika retry juga tidak dijawab, giliran berakhir dengan pesan ini, yang menunjukkan berapa lama setiap upaya menunggu. Ketika Anda menetapkan CLAUDE_CODE_RETRY_WATCHDOG, batas satu retry tidak berlaku dan Claude Code mencoba ulang di bawah anggaran yang dijelaskan dalam Tune retry behavior.

API Error: No response from API (waited 3m, then 10m on the retry). If a proxy or gateway on your network holds responses until they complete, raise API_TIMEOUT_MS or CLAUDE_STREAM_FIRST_BYTE_TIMEOUT_MS to wait longer.

Claude Code menetapkan tunggu header respons upaya pertama dan tunggu retry secara terpisah:

  • Upaya pertama: CLAUDE_STREAM_FIRST_BYTE_TIMEOUT_MS ketika Anda menetapkannya ke 1 atau lebih, diklem antara 10 detik dan 30 menit. Jika tidak, Claude Code menggunakan timeout watchdog tingkat byte yang tercantum dalam Streaming idle watchdogs, jadi variabel yang mengubah timeout itu mengubah tunggu ini juga. Bagaimanapun, Claude Code menambahkan satu detik untuk setiap 32KB badan permintaan.
  • Retry: satu detik kurang dari API_TIMEOUT_MS, hanya di bawah 10 menit secara default, sehingga retry dapat melampaui proxy atau gateway yang menahan respons hingga generasi selesai. Di Amazon Bedrock, retry menggunakan batas waktu yang sama dengan upaya pertama, dan pesan menunjukkan satu durasi alih-alih dua.

Tidak ada tunggu yang melebihi satu detik kurang dari API_TIMEOUT_MS positif, dan API_TIMEOUT_MS positif di bawah 11 detik mematikan batas waktu. Watchdog tingkat byte dimulai hanya setelah header respons tiba, jadi respons yang berhenti mengirim byte setelah itu mengikuti stalled-stream rules alih-alih batas waktu ini.

Yang harus dilakukan:

  • Kirim pesan Anda lagi. Pesan asli Anda masih ada dalam percakapan, jadi untuk prompt yang panjang Anda dapat mengetik try again alih-alih menempel seluruh hal.
  • Jika terulang, perlakukan sebagai network or proxy problem.
  • Jika proxy atau gateway di jaringan Anda menahan respons hingga selesai, naikkan API_TIMEOUT_MS sehingga retry menunggu lebih lama. Di Amazon Bedrock, naikkan CLAUDE_STREAM_FIRST_BYTE_TIMEOUT_MS juga.
  • Jika upaya pertama terus habis waktu dan retry kemudian berhasil, naikkan CLAUDE_STREAM_FIRST_BYTE_TIMEOUT_MS sehingga upaya pertama juga menunggu cukup lama.

Sebelum v2.1.242, Claude Code menunggu timeout permintaan API_TIMEOUT_MS penuh, 10 menit secara default, sebelum menggagalkan permintaan streaming yang tidak dijawab. Sebelum v2.1.261, retry menunggu batas waktu yang sama dengan upaya pertama dan pesan tidak menunjukkan durasi.

The response above may be incomplete

Permintaan streaming gagal sementara respons masih berlangsung, setelah Claude menyelesaikan blok teks atau panggilan tool, atau telah memulai satu setelah menyelesaikan pemikirannya. Mengirim ulang permintaan dapat menjalankan panggilan tool yang sama dua kali, jadi Claude Code menyimpan output yang Claude selesaikan dan menambahkan pemberitahuan ini alih-alih membuang giliran. Varian mana yang Anda lihat menyebutkan penyebabnya:

API Error: Server error mid-response. The response above may be incomplete.
API Error: Connection lost mid-response. The response above may be incomplete.
API Error: Your computer went to sleep mid-response. The response above may be incomplete.
API Error: The response stopped arriving. The response above may be incomplete.
API Error: Part of the response never arrived. The response above may be incomplete.
API Error: The response stream was malformed. The response above may be incomplete.
  • Server error mid-response: kesalahan server overloaded atau 5xx mid-stream. Varian ini memerlukan Claude Code v2.1.199 atau lebih baru; sebelumnya kasus itu membuang output parsial dan melaporkan seluruh giliran sebagai kesalahan.
  • Connection lost mid-response: koneksi putus. Anda juga melihat varian ini ketika proxy atau gateway mengakhiri badan respons dengan bersih sebelum respons selesai.
  • Your computer went to sleep mid-response: Claude Code mendeteksi bahwa komputer Anda tertidur saat respons streaming. Setelah komputer Anda bangun, Claude Code memperlakukan koneksi sebagai rusak dan berhenti membacanya.
  • Part of the response never arrived: peristiwa stream dijatuhkan antara API dan Claude Code, jadi peristiwa yang lebih baru mereferensikan konten yang tidak pernah tiba. Sebelum v2.1.281, kasus ini mengakhiri giliran dengan API Error: Content block not found.
  • The response stream was malformed: peristiwa tiba untuk blok konten yang sudah selesai, atau peristiwa tiba rusak. Peristiwa yang rusak adalah peristiwa yang datanya bukan JSON yang valid, yang kontennya hilang, atau yang kontennya tidak cocok dengan jenis peristiwa. Sebelum v2.1.284, kesalahan parser mentah, seperti yang dimulai dengan API Error: JSON Parse error, muncul sebagai gantinya ketika peristiwa dengan JSON yang tidak valid tiba setelah Claude menyelesaikan pemikirannya, blok teks, atau panggilan tool. Sebelum v2.1.287, ketika guardrail Amazon Bedrock memblokir respons yang sudah melakukan streaming thinking dan sebagian teks, varian ini muncul menggantikan pesan guardrail tersebut.
  • The response stopped arriving: koneksi tetap terbuka tetapi berhenti mengirimkan data, jadi watchdog streaming idle membatalkannya. Sebelum v2.1.222, Claude Code juga dapat melaporkan kegagalan ini pada koneksi gateway yang dicapai melalui ANTHROPIC_BASE_URL atau ANTHROPIC_AWS_BASE_URL sementara ping keep-alive server masih tiba, karena hanya menghitung peristiwa respons yang diurai di sana; upgrade menghentikan timeout palsu itu di rute tersebut. Gateway yang dicapai melalui URL dasar penyedia seperti ANTHROPIC_BEDROCK_BASE_URL tidak dibungkus oleh watchdog byte; lihat Streaming idle watchdogs.

Sebelum v2.1.227, Connection lost mid-response berbunyi Connection closed mid-response dan The response stopped arriving berbunyi Response stalled mid-stream.

Ketika peristiwa stream yang dijatuhkan, diduplikasi, atau rusak tiba sebelum Claude memulai teks atau panggilan tool apa pun, Anda tidak melihat pemberitahuan ini:

  • Jika Claude hanya menyelesaikan pemikirannya, Claude Code mengeluarkan kembali permintaan. Ketika stream yang diterbitkan kembali putus dengan cara yang sama, giliran berakhir dengan Part of the response never arrived and no response was produced. Try again. atau The response stream was malformed and no response was produced. Try again.
  • Jika tidak ada yang selesai, Claude Code mengirim ulang permintaan tanpa streaming. Jika Anda mematikan fallback itu dengan CLAUDE_CODE_DISABLE_NONSTREAMING_FALLBACK, giliran berakhir dengan API Error: Content block not found untuk peristiwa yang dijatuhkan atau API Error: Content block already closed untuk peristiwa yang diduplikasi. Untuk peristiwa yang rusak dengan fallback dimatikan, giliran berakhir dengan API Error: Stream event unreadable atau kesalahan parser mentah.

Dalam empat kasus, Claude Code menangani kegagalan tanpa menampilkan pemberitahuan ini segera:

  • Sebelumnya dalam respons, Claude Code baik mencoba ulang kegagalan atau mengakhiri giliran dengan kesalahan yang berbeda. Lihat Automatic retries.
  • Ketika salah satu kegagalan ini tiba setelah Claude menyelesaikan respons, Claude Code menyimpan respons lengkap dan mengakhiri giliran secara normal, tanpa pemberitahuan ini. Sebelum v2.1.222, Claude Code menampilkan pemberitahuan ini ketika koneksi putus atau macet setelah respons selesai, dan melaporkan giliran sebagai kesalahan meskipun respons lengkap.
  • Dalam non-interactive session, seperti run -p, run Agent SDK, atau cloud session, Anda tidak harus mengirim continue sendiri ketika respons cut-off berada dalam percakapan utama dan berisi teks tetapi tidak ada panggilan tool: Claude Code menyimpan output parsial dan meminta Claude untuk melanjutkan dari tempat ia berhenti, hingga tiga kali berturut-turut. Anda melihat pemberitahuan ini untuk respons seperti itu hanya setelah Claude Code menggunakan kelanjutan itu. Sebelum v2.1.246, Claude Code mengakhiri giliran non-interaktif dengan pemberitahuan ini pada cut-off pertama.
  • Dalam subagent, apakah sesi interaktif atau tidak: ketika respons cut-off-nya berisi teks tetapi tidak ada panggilan tool, Claude Code meminta subagent untuk melanjutkan. Pemberitahuan menjadi pesan terakhir subagent hanya setelah kelanjutan itu digunakan. Sebelum v2.1.257, subagent menampilkan pemberitahuan ini pada cut-off pertama.

Yang harus dilakukan:

  • Dalam sesi interaktif, baca respons yang tetap di layar: Claude Code menyimpan setiap blok yang Claude selesaikan sebelum kesalahan, tetapi membuang blok akhir yang terputus ketika giliran berakhir, jadi kalimat atau panggilan tool terakhir mungkin hilang. Balas dengan continue untuk membuat Claude melanjutkan dari blok terakhir yang diselesaikannya.
  • Dalam non-interactive mode (-p):
    • Dengan output teks default, Claude Code mencetak blok teks terakhir yang diselesaikan yang masih dipegang dari sebelumnya dalam giliran, diikuti oleh pesan ini. Ketika tidak memegang apa pun, Claude Code mencetak pesan ini saja, misalnya karena Claude Code memadatkan percakapan di tengah-giliran dan menghapus teks itu. Sebelum v2.1.219, Claude Code hanya mencetak pesan ini dalam output teks -p dan menjatuhkan respons yang sudah dihasilkan.
    • Dengan --output-format json atau stream-json, Claude Code melaporkan pesan ini di bidang result.
    • Untuk melanjutkan giliran setelah koneksi stabil, lanjutkan sesi dan kirim continue seperti yang dijelaskan dalam Continue conversations.

Auto mode cannot determine the safety of an action

Model yang auto mode gunakan untuk mengklasifikasikan tindakan tidak dapat menghasilkan keputusan, jadi auto mode tidak menyetujui tindakan secara otomatis. Pesan yang Anda lihat tergantung pada bagaimana pengklasifikasi gagal.

Pembacaan, pencarian, dan pengeditan di dalam direktori kerja Anda melewati pengklasifikasi, jadi mereka terus bekerja dalam semua kasus ini.

Ketika model pengklasifikasi tidak tersedia:

<model> is temporarily unavailable, so auto mode cannot determine the safety of <tool> right now. Wait a moment and then try this action again.

Ketika Claude Code dapat menentukan kategori kegagalan, ia menyebutkan kategori dalam tanda kurung setelah temporarily unavailable, misalnya <model> is temporarily unavailable (rate-limited), so auto mode cannot determine the safety of <tool> right now. Kategorinya adalah (rate-limited), (overloaded), (server error), (timed out), dan (connection failed). Jika (timed out) atau (connection failed) terulang, periksa koneksi Anda; lihat Unable to connect to API. Sebelum v2.1.229, pesan tidak pernah menyebutkan kategori dan berbunyi Wait briefly and then try this action again.

Ketika tidak ada kategori yang cocok, pesan muncul tanpa kategori dalam tanda kurung; lebih dari satu kegagalan menghasilkan bentuk itu. Di Amazon Bedrock, termasuk Mantle endpoint, itu juga muncul ketika akun AWS Anda tidak dapat memanggil model yang disebutkan dalam pesan, dan kegagalan itu terulang pada setiap retry sampai akun Anda diberi akses ke model.

Yang harus dilakukan:

  • Coba lagi setelah beberapa detik; Claude melihat pesan yang sama dan biasanya mencoba ulang sendiri. Kegagalan sementara tidak terkait dengan auto mode eligibility; Anda tidak perlu mengubah pengaturan
  • Jika retry terus gagal, lanjutkan dengan tugas read-only dan kembali ke tindakan yang diblokir nanti
  • Di Amazon Bedrock, jika pesan kembali pada setiap retry, periksa bahwa akun Anda dapat memanggil model yang disebutkan: untuk model Amazon Bedrock standar, konfirmasi IAM policy Anda memungkinkan memanggilnya; untuk ID model Mantle, hubungi tim akun AWS Anda

Ketika permintaan pengklasifikasi gagal karena token OAuth Anda kedaluwarsa atau diputar oleh sesi lain, Claude Code menyegarkan token dan mencoba ulang permintaan sekali, jadi kedaluwarsa token biasa tidak muncul sebagai pesan ini. Sebelum v2.1.216, token yang kedaluwarsa atau diputar menggagalkan setiap permintaan pengklasifikasi, dan auto mode menolak setiap tindakan yang diperiksa dengan pesan ini sampai token disegarkan.

Ketika pengklasifikasi mengembalikan respons yang tidak dapat diurai:

Auto mode could not evaluate this action and is blocking it for safety — run with --debug for details

Yang harus dilakukan:

  • Coba lagi tindakan; ini biasanya berhasil pada upaya berikutnya
  • Jalankan claude --debug dan ulangi tindakan untuk detail dalam log debug

Ketika pemeriksaan keamanan API terpisah memblokir permintaan pengklasifikasi karena konten percakapan sebelumnya:

Auto mode could not evaluate this action and is blocking it for safety — a safety check separate from auto mode blocked this request because of earlier conversation content — it isn't about the action itself — run with --debug for details

Claude Code menolak tindakan tetapi memberi tahu Claude bahwa ini bukan penilaian bahwa tindakan tidak aman, dan untuk melanjutkan dengan tugas lain daripada mencoba ulang. Penolakan ini tidak dihitung terhadap auto mode's pause thresholds. Dalam run -p non-interactive, Claude Code tidak menghentikan run. Apa yang Claude terima tergantung pada tempat ia meminta tindakan:

  • Ke background subagent dalam run -p tanpa --input-format stream-json, Claude Code mengembalikan hasil kesalahan yang berisi Agent aborted: auto mode classifier request refused by the safety safeguard in headless mode
  • Di tempat lain, termasuk sesi interaktif dan percakapan utama run -p, Claude Code mengembalikan penolakan itu ke Claude

Sebelum v2.1.225, Claude Code menghitung penolakan ini terhadap ambang batas jeda dan mengembalikan pesan penolakan yang sama seperti blok pengklasifikasi asli.

Yang harus dilakukan:

  • Ini bukan keputusan tentang tindakan Anda. Konten yang sudah ada dalam percakapan Anda memicu filter keamanan di API ketika auto mode mengirim percakapan ke pengklasifikasi
  • Mencoba ulang tidak akan membantu; konten percakapan yang sama akan memicu filter lagi
  • Dalam sesi interaktif, beralih ke permission mode yang berbeda sehingga Anda dapat menyetujui tindakan ketika diminta
  • Mulai percakapan segar tanpa konten pemicu

Ketika percakapan telah tumbuh lebih besar dari context window pengklasifikasi:

Auto mode classifier transcript exceeded context window — falling back to manual approval (try /compact to reduce conversation size)

Apa yang terjadi pada tindakan tergantung pada tempat Claude memintanya:

  • Dalam sesi interaktif, auto mode melakukan fallback ke dialog izin normal untuk tindakan itu sehingga Anda dapat menyetujui atau menolaknya secara manual
  • Ke background subagent dalam run -p non-interactive tanpa --input-format stream-json, Claude Code mengembalikan hasil kesalahan yang berisi Agent aborted: auto mode classifier transcript exceeded context window in headless mode, dan run berlanjut
  • Di tempat lain dalam run -p tanpa --permission-prompt-tool, tidak ada dialog izin untuk fallback, jadi tindakan tidak berjalan dan run berlanjut

Yang harus dilakukan:

  • Dalam sesi interaktif, setujui atau tolak tindakan dalam dialog izin yang muncul
  • Dalam sesi interaktif, jalankan /compact untuk mengurangi ukuran percakapan sehingga tindakan berikutnya cocok dalam jendela pengklasifikasi lagi

The server returned no safety verdict

Di bawah server-side classifier review, auto mode menolak tindakan ketika server tidak memberikan putusan untuk itu. Penolakan menyebutkan kategori dalam tanda kurung ketika Claude Code dapat menentukan satu, seperti (timed out):

The server-side auto mode classifier gave no verdict (timed out), so auto mode cannot determine the safety of <tool>.

Sisa pesan memberi tahu Claude apakah satu retry dapat membantu. Sebelum beberapa penolakan ini, Claude Code menunggu sehingga upaya Claude berikutnya tidak mengikuti sekaligus. Selama tunggu dalam sesi interaktif, spinner menunjukkan Auto mode check unavailable dengan hitungan mundur, dan menekan Esc mengganggu giliran.

Setelah sepuluh respons berturut-turut tanpa putusan, auto mode menghentikan giliran:

Auto mode is unavailable — the server returned no safety verdict for the last 10 responses, so Claude stopped. Send a message to try again, or switch out of auto mode.

Pesan berhenti muncul di tempat yang berbeda dalam setiap jenis sesi:

  • Dalam sesi interaktif, pesan muncul sebagai peringatan dalam transkrip dan giliran berakhir
  • Dalam run -p non-interactive, run berakhir dan melaporkan kesalahan eksekusi. Dengan output teks default, pesan dicetak di stderr.
  • Ketika subagent mencapai batas, subagent berhenti sebelum selesai, dan Claude menerima apa pun yang dihasilkan dengan catatan bahwa auto mode menghentikannya

Yang harus dilakukan:

  • Kirim pesan lain untuk membuat Claude mencoba lagi. Hitungan respons dimulai dari awal.
  • Jika berhenti terulang dan permintaan Anda melewati LLM gateway or proxy, periksa apakah itu memotong respons streaming pendek atau menulis ulangnya. Server-side classifier review mengatakan perilaku gateway mana yang menyebabkan penolakan, dan gateway compatibility guide mencantumkan apa yang harus dilewatkan tanpa perubahan.
  • Atur CLAUDE_CODE_AUTO_MODE_SERVER=0 sebelum Anda memulai Claude Code untuk menggunakan permintaan pengklasifikasi miliknya sendiri. Sebelum v2.1.281, Claude Code tidak membaca variabel pada koneksi langsung ke Anthropic API.
  • Untuk menyetujui tindakan sendiri, switch out of auto mode

Sebelum v2.1.280, Claude Code menolak setiap tindakan dari respons tanpa putusan segera dan tidak pernah menghentikan giliran.

Agent terminated early due to an API error

Permintaan API subagent gagal secara terminal, misalnya karena batas penggunaan tercapai atau retry untuk kesalahan server habis, jadi subagent berhenti sebelum menyelesaikan tugasnya. Pesan ini memerlukan Claude Code v2.1.199 atau lebih baru; sebelumnya teks kesalahan API dikembalikan ke Claude seolah-olah itu adalah hasil subagent.

Agent terminated early due to an API error: <error detail>

Yang harus dilakukan:

  • Cocokkan detail kesalahan setelah titik dua dengan bagiannya sendiri di halaman ini, seperti Usage limits atau Server errors, dan ikuti langkah bagian itu
  • Setelah kesalahan yang mendasar hilang, minta Claude untuk mencoba ulang tugas atau resume the subagent

Ketika rate limit, overload, atau kesalahan server mengganggu subagent foreground yang sudah menghasilkan output teks, Claude menerima output parsial itu ditandai sebagai tidak lengkap alih-alih kesalahan ini. Subagent yang satu-satunya output adalah panggilan tool mendapat kesalahan ini juga; dalam v2.1.199 bentuk itu mengembalikan hasil parsial kosong. Lihat API errors in subagents.

Batas penggunaan

Sebagian besar kesalahan di bagian ini berarti kuota yang terikat pada akun atau paket Anda telah tercapai. Tiga kesalahan bekerja berbeda: Server is temporarily limiting requests adalah throttle sisi server yang tidak terkait dengan kuota paket Anda, Usage credits required for 1M context adalah pemeriksaan hak akses daripada kuota yang habis, dan The prompt to confirm went unanswered berarti prompt persetujuan usage credits ditutup tanpa jawaban, terlepas dari apakah kuota tercapai atau tidak.

You've hit your session limit

Paket langganan mencakup tunjangan penggunaan bergulir. Ketika habis, Anda akan melihat salah satu pesan ini:

You've hit your session limit · resets 3:45pm
You've hit your weekly limit · resets Mon 12:00am
You've hit your Opus limit · resets 3:45pm
You've hit your Sonnet limit · resets 3:45pm

Claude Code memblokir permintaan lebih lanjut hingga waktu reset yang ditunjukkan dalam pesan. Batas sesi dan mingguan dibagikan di semua model, jadi beralih model tidak mengembalikan akses. Batas Opus dan Sonnet masing-masing hanya berlaku untuk permintaan ke keluarga model tersebut, jadi beralih ke model di luar keluarga dengan /model membuat Anda tetap bekerja.

Dalam sesi interaktif yang masuk dengan langganan claude.ai, Claude Code juga dapat menunggu di sesi terbuka dan melanjutkan tugas yang terputus segera setelah reset. Saat menunggu, baris di bagian bawah sesi berbunyi Usage limit reached · continuing automatically at 3:45pm · esc to cancel. Tekan Esc pada prompt kosong untuk membatalkan penantian. Lihat Wait for a usage limit to reset untuk melihat apa yang Anda lihat, cara memulai atau membatalkan penantian, dan cara mematikan lanjutan otomatis. Sebelum v2.1.234, Claude Code tidak menawarkan penantian ini.

Penggunaan dihitung terhadap tunjangan sesi dan mingguan pada saat yang sama. Satu ledakan aktivitas berat, seperti fanout alur kerja besar, dapat menghabiskan tunjangan mingguan sebelum jendela sesi direset.

Yang harus dilakukan:

  • Tunggu waktu reset yang ditunjukkan dalam kesalahan
  • Di tab Code dari Desktop app, kartu batas sesi menawarkan kotak centang Auto-continue when limits reset. Kartu batas mingguan tidak. Ketika dicentang, aplikasi Desktop mencoba kembali giliran yang terputus setelah reset dan menampilkan waktu percobaan kembali pada kartu. Kotak centang Desktop dan pengaturan Continue automatically at usage limit CLI di /config terpisah, jadi matikan masing-masing secara terpisah.
  • Untuk batas Opus atau Sonnet, jalankan /model dan beralih ke model di luar keluarga tersebut untuk terus bekerja. Setiap model memiliki cache prompt-nya sendiri, jadi permintaan berikutnya membaca ulang seluruh percakapan tanpa cache hits; lihat Switching models
  • Jalankan /usage untuk melihat batas paket Anda dan kapan mereka direset
  • Jalankan /usage-credits untuk membeli penggunaan tambahan di Pro dan Max, atau memintanya dari admin Anda di Team dan Enterprise. Lihat usage credits for paid plans untuk cara ini ditagih.
  • Untuk meningkatkan paket Anda untuk batas dasar yang lebih tinggi, lihat claude.com/pricing

Sebelum jendela habis, Claude Code dapat memperingatkan Anda bahwa Anda telah menggunakan sebagian besar, dengan pesan seperti You've used 85% of your session limit · resets 3:45pm. Untuk memantau tunjangan sisa Anda secara terus-menerus, tambahkan bidang rate_limits ke custom status line, atau di aplikasi Desktop klik usage ring di sebelah pemilih model.

Usage credits required for 1M context

Model yang dipilih menggunakan jendela konteks diperluas 1M-token, dan paket Anda hanya mencakupnya melalui usage credits.

API Error: Usage credits required for 1M context · run /usage-credits to turn them on (they take effect after you restart Claude Code), or /model to switch to standard context

Dalam sesi yang dijalankan aplikasi Claude Desktop, petunjuk tidak menyebutkan perintah apa pun: petunjuk menunjuk ke halaman pengaturan penggunaan claude.ai, atau pada paket Team dan Enterprise mengatakan untuk mengaktifkan usage credits di claude.ai/admin-settings/usage atau untuk meminta admin Anda.

Ini adalah pemeriksaan hak akses, bukan kehabisan kuota. Ini muncul bahkan ketika tunjangan sesi dan mingguan Anda memiliki kapasitas yang tersisa. Lihat Extended context untuk paket mana yang mencakup konteks 1M secara langsung dan mana yang memerlukan usage credits.

Ketika kesalahan ini muncul di tengah percakapan karena konteks tumbuh melampaui 200K token, Claude Code secara otomatis mengompres percakapan kembali di bawah batas konteks standar dan menjaga sesi pada batas itu sesudahnya, jadi tidak ada tindakan yang diperlukan. Pada versi sebelum v2.1.172, kesalahan berulang pada setiap permintaan berikutnya termasuk /compact; jalankan /clear pada versi tersebut untuk pulih. Langkah-langkah di bawah berlaku ketika Anda secara eksplisit memilih model [1m].

Yang harus dilakukan:

  • Jalankan /model dan pilih varian tanpa akhiran [1m] untuk kembali ke jendela konteks standar
  • Di mana pesan menyebutkan /usage-credits, jalankan untuk mengaktifkan penagihan terukur untuk varian 1M di Pro dan Max, atau untuk meminta usage credits dari admin Anda di Team dan Enterprise. Setelah usage credits aktif, mulai ulang Claude Code atau mulai sesi baru, mana pun yang pesan katakan. Sampai saat itu, sesi tetap pada batas konteks standar.
  • Jika kesalahan berlanjut setelah /model, ID model 1M mungkin diatur di tempat lain. Lihat Setting your model untuk lokasi konfigurasi yang harus diperiksa dalam urutan prioritas.
  • Untuk menghapus varian 1M dari pemilih model sepenuhnya, atur CLAUDE_CODE_DISABLE_1M_CONTEXT=1

Sebelum v2.1.268, pesan berakhir dengan run /usage-credits to turn them on, or /model to switch to standard context dan tidak menyebutkan restart.

The prompt to confirm went unanswered

Jika akun Anda memerlukan Fable usage-credits consent, Claude Code meminta Anda untuk mengonfirmasi sebelum permintaan Fable menagih usage credits. Ketika prompt persetujuan ditutup tanpa ada yang menjawabnya, Claude Code mengakhiri giliran dengan salah satu pesan ini:

Fable limit reached · continuing on Fable 5.1 uses usage credits, and the prompt to confirm went unanswered — nothing was sent · answer it where this session is running, or /model to change
Fable 5.1 now uses usage credits · the prompt to confirm went unanswered — nothing was sent · answer it where this session is running, or /model to change

Pesan menyebutkan model Fable sesi, jadi di Fable 5 mereka membaca continuing on Fable 5 dan Fable 5 now uses usage credits. Sebelum v2.1.257, pesan pertama dimulai dengan Fable 5 limit reached.

Ini terjadi dalam sesi Remote Control, background sessions, agent team sesi rekan tim, dan sesi yang aplikasi lain menghosting melalui Agent SDK. Untuk kapan Claude Code menutup prompt, lihat Fable and usage credits.

Yang harus dilakukan:

  • Di mana sesi berjalan, di terminal atau di aplikasi yang menghosting, kirim prompt lain dan jawab prompt persetujuan ketika muncul kembali. Untuk sesi latar belakang, lampirkan terlebih dahulu dari agents view. Mengirim ulang dari klien Remote Control menampilkan pesan ini lagi, karena klien tidak dapat menampilkan prompt.
  • Jalankan /model untuk beralih ke model yang tidak menagih usage credits
  • Untuk memberi diri Anda lebih banyak waktu, atur dialogExpiry ke nilai yang lebih lama atau "never"

Sebelum v2.1.236, pesan ini tidak muncul: sementara klien Remote Control terhubung, Claude Code menunggu 60 detik untuk jawaban dan kemudian melanjutkan giliran pada model default Anda.

Server is temporarily limiting requests

API menerapkan throttle jangka pendek yang tidak terkait dengan kuota paket Anda.

API Error: Server is temporarily limiting requests (not your usage limit)

Claude Code membedakan ini dari batas paket Anda dengan tidak adanya header kuota terpadu yang dibawa respons batas nyata. Mulai dari v2.1.199 ini dicoba ulang secara otomatis dengan backoff sebelum ditampilkan, terlepas dari cara Anda mengautentikasi. Pada versi sebelumnya, sesi yang masuk dengan langganan claude.ai gagal pada giliran pertama; hanya API key dan Enterprise sign-ins yang mencoba ulangnya.

Yang harus dilakukan:

Request rejected (429)

Anda telah mencapai batas laju yang dikonfigurasi untuk kunci API, proyek Amazon Bedrock, atau proyek Google Cloud Anda.

API Error: Request rejected (429) · this may be a temporary capacity issue. If it persists, check https://status.claude.com.

Kalimat di akhir menyebutkan di mana memeriksa kesehatan layanan dan bervariasi menurut penyedia. Konfigurasi Amazon Bedrock, Agent Platform Google Cloud, dan Microsoft Foundry menyebutkan status layanan penyedia itu sebagai gantinya dari halaman status Anthropic. ANTHROPIC_BASE_URL kustom menyebutkan host gateway.

Ketika proxy, load balancer, atau gateway antara Claude Code dan API menjawab dengan halaman HTML 429-nya sendiri, teks setelah · adalah judul halaman itu ketika memiliki satu, seperti Too Many Requests. Sebelum v2.1.281, markup halaman lengkap dicetak setelah ·.

Yang harus dilakukan:

  • Jalankan /status dan konfirmasi kredensial aktif adalah yang Anda harapkan. ANTHROPIC_API_KEY yang tersesat di lingkungan Anda dapat merutekan permintaan melalui kunci tingkat rendah daripada langganan Anda.
  • Periksa konsol penyedia Anda untuk batas aktif dan minta tingkat yang lebih tinggi jika diperlukan
  • Untuk kunci API Anthropic, lihat rate limits reference untuk cara kerja tingkat dan cara menetapkan batas per-workspace
  • Kurangi concurrency: turunkan CLAUDE_CODE_MAX_TOOL_USE_CONCURRENCY, hindari menjalankan banyak subagen paralel, atau beralih ke model yang lebih kecil dengan /model untuk run skrip volume tinggi

You've hit your monthly spend limit

Penggunaan yang disertakan paket Anda tidak dapat menutupi permintaan ini, dan usage credits yang sebaliknya akan membayarnya telah mencapai batas pengeluaran. Itu terjadi ketika salah satu jendela penggunaan paket Anda telah habis, atau ketika permintaan adalah permintaan yang hanya dibayar oleh usage credits, seperti permintaan ke model yang bills to usage credits. Pesan menyebutkan batas siapa yang memblokir Anda. Teks setelah · mengatakan cara meningkatkan batas itu, dan bervariasi dengan paket Anda dan apakah Anda mengelola penagihan:

You've hit your monthly spend limit · raise it at claude.ai/settings/usage
You've hit your individual spend limit · ask your admin for a higher limit
You've hit your org's monthly spend limit · visit claude.ai/admin-settings/usage to raise it
You've hit your team's shared budget · ask your admin to raise it at claude.ai/admin-settings/usage
You've hit your channel's monthly spend limit · an org owner or channel manager can raise it in the channel's Claude settings

team's shared budget adalah anggaran terpusat yang admin tetapkan untuk grup yang Anda termasuk; pesan tidak menyebutkan grup. channel's monthly spend limit adalah anggaran dari satu saluran Slack tempat sesi berjalan, jadi organisasi Anda mungkin masih memiliki anggaran di luar itu.

Ketika salah satu jendela paket Anda adalah yang habis, pesan juga mengatakan kapan jendela itu direset, misalnya · your session limit resets 3:45pm, dan akses kembali kemudian tanpa siapa pun menaikkan batas. Pada organisasi dengan penagihan berbasis penggunaan, pesan mengatakan usage limit sebagai gantinya dari spend limit, seperti dalam You've hit your individual usage limit.

Sebelum v2.1.239, pesan tidak menyebutkan waktu reset jendela paket. Sebelum v2.1.268, anggaran terpusat grup menghasilkan pesan individual spend limit daripada team's shared budget.

Jika Anda terhubung melalui gateway aplikasi Claude dan melihat spend limit reached huruf kecil, itu adalah batas operator gateway Anda sebagai gantinya; lihat Spend limit reached.

Yang harus dilakukan:

  • Di Pro dan Max, tingkatkan batas pengeluaran bulanan Anda di Settings > Usage di claude.ai, atau jalankan /usage-credits
  • Di Team dan Enterprise, tingkatkan batas di Admin settings > Usage jika Anda mengelola penagihan, atau minta admin untuk melakukannya. /usage-credits mengirim permintaan itu ke admin Anda untuk Anda
  • Untuk batas saluran, minta pemilik org atau manajer saluran untuk menaikkannya di claude.ai. Lihat Per-channel limits dalam dokumentasi Claude Tag
  • Jika pesan menyebutkan waktu reset untuk jendela paket Anda, Anda dapat menunggunya sebagai gantinya
  • Jalankan /usage untuk melihat jendela paket Anda dan kapan masing-masing direset

Spend limit reached

Anda terhubung melalui Claude apps gateway dan telah melampaui spend cap yang operator gateway Anda tetapkan. Gateway memblokir permintaan Anda sampai periode yang dinamai direset atau operator menaikkan batas. Ini menandai setiap respons 429 yang diblokir x-should-retry: false, jadi Claude Code menampilkan pesan ini tanpa mencoba ulang.

spend limit reached (daily; resets 2026-08-09 00:00 UTC)

Pesan menyebutkan periode batas dan waktu reset, dan ketika operator mengonfigurasi blocked_message, instruksi mereka mengikutinya. Sebelum v2.1.225, pesan hanya berbunyi spend limit reached; gateway pada versi yang lebih lama masih mengirim bentuk yang lebih pendek itu.

Yang harus dilakukan:

  • Tunggu waktu reset yang pesan namakan, atau ikuti instruksi operator jika pesan membawanya
  • Minta operator gateway Anda untuk menaikkan batas jika Anda mencapainya secara rutin

Pesan terkait, spend limit unavailable, berarti gateway tidak dapat membaca catatan pengeluarannya dan memblokir permintaan sebagai tindakan pencegahan daripada atas batas Anda. Biasanya ini hilang dengan sendirinya; jika terus berlanjut, beri tahu operator gateway Anda.

Credit balance is too low

Organisasi Console Anda telah kehabisan kredit prabayar, atau Claude Code mengirim permintaan Anda dengan kunci API Console ketika Anda bermaksud menggunakan langganan Anda.

Credit balance is too low

Yang harus dilakukan:

  • Jika Anda memiliki paket Pro, Max, Team, atau Enterprise dan melihat ini, jalankan /status dan periksa baris API key. ANTHROPIC_API_KEY yang disetujui di lingkungan Anda merutekan permintaan melalui kunci itu daripada langganan Anda. Batalkan pengaturannya di shell saat ini dan hapus dari profil shell Anda, kemudian luncurkan ulang claude. Jalankan /login jika Anda belum masuk dengan langganan Anda.
  • Tambahkan kredit di platform.claude.com/settings/billing, dan pertimbangkan untuk mengaktifkan auto-reload di sana sehingga saldo diisi ulang sebelum mencapai nol
  • Atur batas pengeluaran per-workspace di Console untuk mencegah satu proyek menguras saldo org. Lihat Manage costs effectively.

Could not update your spend limit

Server menolak perubahan batas pengeluaran yang Anda buat dari prompt yang muncul ketika Anda mencapai batas pengeluaran Anda.

Could not update your spend limit: <reason from the server>

Ketika server menjelaskan penolakan, pesan berakhir dengan alasan itu, dan mencoba ulang nilai yang sama gagal lagi. Ketika kegagalan tidak memiliki alasan yang disediakan server, seperti koneksi yang terputus, pesan berbunyi Could not update your spend limit. Press Enter to retry. dan mencoba ulang dapat berhasil. Sebelum v2.1.216, Claude Code menampilkan bentuk generik untuk setiap kegagalan.

Yang harus dilakukan:

  • Jika pesan menyertakan alasan, pilih batas yang memuaskannya, seperti jumlah yang lebih rendah
  • Jika pesan hanya menampilkan bentuk generik, coba ulang; kegagalan mungkin bersifat sementara
  • Jika perubahan terus gagal, buatlah dari claude.ai billing settings Anda di browser sebagai gantinya

Kesalahan autentikasi

Kesalahan-kesalahan ini berarti Claude Code tidak dapat membuktikan identitas Anda kepada API. Jalankan /status kapan saja untuk melihat kredensial mana yang sedang aktif.

Belum masuk

Tidak ada kredensial valid yang tersedia untuk sesi ini.

Not logged in · Please run /login

Dalam sesi yang dijalankan oleh aplikasi Claude Desktop, seperti tab Code atau Cowork, pesannya berbunyi Authentication required · Sign in again to continue, dan Anda masuk kembali dari aplikasi tersebut.

Jika Anda masuk dengan akun claude.ai Anda di jendela Claude Code lain yang menggunakan direktori konfigurasi yang sama, sesi interaktif yang menampilkan pesan ini akan mulai menggunakan login tersebut dengan sendirinya. Anda tidak perlu memulai ulang sesi tersebut.

Sebelum v2.1.286 di macOS, sesi dapat terus menampilkan pesan tersebut setelah Anda masuk dari jendela lain. Pada versi-versi tersebut, mulai ulang sesi yang menampilkan pesan tersebut.

Yang harus dilakukan:

  • Jalankan /login untuk melakukan autentikasi dengan langganan Claude atau akun Console Anda
  • Jika Anda mengharapkan environment variable mengautentikasi Anda, pastikan ANTHROPIC_API_KEY telah diatur dan diekspor di shell tempat Anda menjalankan claude
  • Untuk CI atau otomatisasi yang tidak memungkinkan login interaktif, konfigurasikan skrip apiKeyHelper yang mengambil kunci saat startup
  • Lihat Prioritas autentikasi untuk memahami kredensial mana yang digunakan Claude Code ketika terdapat beberapa kredensial

Jika Anda berulang kali diminta untuk masuk, lihat Belum masuk atau token kedaluwarsa untuk pemeriksaan jam sistem dan langkah pemulihan penyimpanan kredensial macOS.

Tidak dapat menentukan metode autentikasi

Sesi mencapai klien API tanpa kredensial apa pun. Sesi latar belakang dan sesi cloud menampilkan pesan ini ketika worker dimulai tanpa kredensial. Proses interaktif, -p, dan Agent SDK melaporkan kondisi yang sama sebagai Belum masuk dan hanya menulis string ini ke log debug mereka, jadi jika Anda menemukannya di sana, ikuti entri tersebut.

Could not resolve authentication method. Expected one of apiKey, authToken, credentials, config, or profile to be set. Or for one of the "X-Api-Key" or "Authorization" headers to be explicitly omitted

Pada versi saat ini, kesalahan ini berarti tidak ada kredensial yang tersedia untuk proses worker. Sebelum v2.1.174, sesi latar belakang yang ditugaskan ke worker pra-inisialisasi yang menganggur dapat gagal dengan cara ini bahkan ketika kredensial yang valid telah dikonfigurasi. Sebelum v2.1.176, sesi cloud yang menganggur sebelum diklaim juga dapat gagal dengan cara ini. Lakukan upgrade untuk memulihkannya.

Yang harus dilakukan:

  • Upgrade ke v2.1.176 atau yang lebih baru jika pesan ini muncul di sesi latar belakang atau sesi cloud dan kredensial Anda sudah dikonfigurasi
  • Pastikan ANTHROPIC_API_KEY, CLAUDE_CODE_OAUTH_TOKEN, atau kredensial penyedia cloud Anda diatur di lingkungan yang menjalankan worker, bukan hanya di shell interaktif Anda
  • Untuk Agent SDK, lihat penyiapan autentikasi di mulai cepat
  • Jalankan /status dalam sesi interaktif di lingkungan yang sama untuk memastikan sumber kredensial mana yang digunakan

Kunci API tidak valid

Environment variable ANTHROPIC_API_KEY atau skrip apiKeyHelper mengembalikan kunci yang ditolak oleh API, atau Claude Code memblokir kunci dari ANTHROPIC_API_KEY sebelum mengirimkannya.

Invalid API key · Fix external API key

Ketika pesan berlanjut setelah Fix external API key dengan deskripsi seperti Invalid X-Api-Key header value from ANTHROPIC_API_KEY: it contains a line break at character 41 (120 characters on 2 lines)., API tidak pernah melihat kunci tersebut. Claude Code menemukan karakter yang tidak dapat dibawa oleh header HTTP dan menghentikan permintaan sebelum mengirimkannya. Lihat Nilai header permintaan tidak valid untuk cara membaca deskripsi dan memperbaiki nilainya.

Yang harus dilakukan:

  • Periksa kesalahan ketik dan pastikan kunci belum dicabut di Console
  • Di shell yang sama, jalankan env | grep ANTHROPIC, atau di PowerShell Get-ChildItem Env:ANTHROPIC*. Alat seperti direnv, plugin shell dotenv, dan terminal IDE dapat memuat kunci usang dari file .env di proyek Anda tanpa Anda mengaturnya secara eksplisit.
  • Hapus pengaturan ANTHROPIC_API_KEY dan jalankan /login untuk menggunakan autentikasi langganan sebagai gantinya
  • Jika kunci berasal dari skrip apiKeyHelper, jalankan skrip tersebut secara langsung untuk memastikan skrip mencetak kunci yang valid ke stdout
  • Jalankan /status untuk memastikan sumber kredensial mana yang sebenarnya digunakan Claude Code

Skrip apiKeyHelper Anda gagal

Claude Code menjalankan perintah di pengaturan apiKeyHelper Anda dan tidak mendapatkan kunci kembali. Tanpa kunci, permintaan mencapai API dengan kredensial placeholder, dan API menolaknya dengan 401. Panel Authentication di terminal menunjukkan mana yang terjadi di antara berikut ini:

  • Perintah keluar dengan kesalahan atau mengalami timeout
  • Perintah tidak mencetak apa pun ke stdout
  • Perintah mencetak sesuatu selain kunci, seperti banner login atau baris log. Panel menampilkan returned output that cannot be used as an API key dan menyebutkan apa yang salah, tanpa mengulang output tersebut. Sebelum v2.1.227, Claude Code mengirimkan apa pun yang dicetak perintah, setelah memangkas spasi di sekitarnya.
Your apiKeyHelper script is failing · This usually means you need to re-authenticate with your provider · Run /status to see the script's error output

Dalam mode non-interaktif, stderr juga memuat alasan spesifiknya, dengan awalan apiKeyHelper failed:.

Claude Code menjalankan ulang skrip dan mencoba ulang permintaan hingga dua kali lagi sebelum menampilkan pesan ini, sehingga kegagalan muncul dalam tiga percobaan. Sebelum v2.1.208, Claude Code menghabiskan seluruh anggaran retry untuk mengirim ulang permintaan dengan kredensial placeholder, lalu melaporkan kesalahan autentikasi 401 generik alih-alih kegagalan skrip.

Menjalankan /login tidak membantu di sini: output helper diutamakan daripada login tersimpan selama pengaturan tersebut ada.

Yang harus dilakukan:

  • Jalankan perintah yang dikonfigurasi di apiKeyHelper secara langsung di shell Anda untuk mereproduksi kegagalan
  • Jika perintah melaporkan sesi yang kedaluwarsa, lakukan autentikasi ulang dengan penyedia kredensial Anda, misalnya dengan masuk kembali ke SSO atau vault rahasia Anda
  • Perbaiki perintah agar hanya mencetak kunci ke stdout, sebagai satu token ASCII yang dapat dicetak hingga 16.384 karakter, dan keluar dengan kode 0. Lihat merotasi kredensial dengan apiKeyHelper untuk penyiapan yang berfungsi.
  • Jalankan /status untuk melihat kegagalan dan memastikan apiKeyHelper adalah sumber kredensial yang aktif. Baris apiKeyHelper menampilkan Failing dengan detail kegagalan terakhir, seperti exit code dan output kesalahan perintah, dan menghilang setelah eksekusi berhasil berikutnya. Sebelum v2.1.274, /status hanya menampilkan sumber kredensial, bukan kegagalannya.
  • Setiap kali perintah gagal, exit code dan output kesalahannya juga muncul di panel Authentication di terminal. Sebelum v2.1.212, panel tersebut berjudul Cloud authentication.

Nilai header permintaan tidak valid

Nilai yang hendak dikirim Claude Code sebagai header permintaan mengandung karakter yang tidak dapat dibawa oleh header HTTP: jeda baris, byte NUL, atau karakter di atas U+00FF, seperti tanda kutip melengkung atau spasi lebar-nol. Claude Code menghentikan permintaan sebelum apa pun dikirim dan menyebutkan variabel atau pengaturan yang perlu diperbaiki. Penyebab umumnya adalah kredensial yang ditempel dari dokumen atau obrolan yang membawa karakter tak terlihat atau jeda baris yang tidak disengaja.

Claude Code menjalankan pemeriksaan ini ketika mengirim permintaan ke Claude API secara langsung atau melalui LLM gateway. Pada penyedia cloud pihak ketiga seperti Amazon Bedrock, Claude Code tidak menjalankannya sebelum mengirim.

Invalid auth token · Fix external auth token
Invalid ANTHROPIC_CUSTOM_HEADERS · Fix the environment variable
Invalid request header from the environment · Fix the environment variable

Bagian pertama pesan bergantung pada asal nilai yang salah:

  • Invalid auth token: bearer token dari ANTHROPIC_AUTH_TOKEN atau CLAUDE_CODE_OAUTH_TOKEN
  • Invalid ANTHROPIC_CUSTOM_HEADERS: nama atau nilai header yang Anda atur di ANTHROPIC_CUSTOM_HEADERS. Deskripsi menghitung pasangan Name: Value mana yang bermasalah, seperti distinct header 2 of 3 parsed from ANTHROPIC_CUSTOM_HEADERS, tanpa mengulang nama atau nilainya, karena Anda yang memilih keduanya.
  • Invalid request header from the environment: nilai yang disalin Claude Code ke header permintaan dari environment variable lain, seperti CLAUDE_AGENT_SDK_CLIENT_APP. Deskripsi menyebutkan variabel yang perlu diperbaiki.

Claude Code melaporkan ANTHROPIC_API_KEY yang salah yang tertangkap oleh pemeriksaan ini sebagai Kunci API tidak valid, dengan deskripsi penutup yang sama. Claude Code melaporkan kredensial /login tersimpan yang salah sebagai Belum masuk; jalankan /login untuk menyimpan kredensial baru. Output skrip apiKeyHelper tidak pernah mencapai pemeriksaan ini: Claude Code memvalidasinya saat skrip dijalankan, dan output yang tidak dapat dibawa oleh header HTTP akan gagal dengan Skrip apiKeyHelper Anda gagal.

Setelah · kedua, pesan menjelaskan masalahnya, seperti pada contoh lengkap berikut:

Invalid auth token · Fix external auth token · Invalid Authorization header value from ANTHROPIC_AUTH_TOKEN: it contains a line break at character 41 (120 characters on 2 lines).

Posisi menghitung karakter mulai dari satu. Deskripsi dibangun dari frasa tetap dan jumlah karakter, sehingga tidak pernah menyertakan nilai itu sendiri. Deskripsi menyebutkan karakter yang bermasalah hanya jika karakter tersebut adalah karakter tak terlihat atau tipografis yang dikenal luas, seperti byte-order mark, spasi lebar-nol, atau tanda kutip melengkung, dan melaporkan karakter lainnya sebagai a non-ASCII character.

Yang harus dilakukan:

  • Atur ulang variabel atau pengaturan yang disebutkan pesan, dengan mengetik ulang karakter di sekitar posisi yang dilaporkan alih-alih menempel lagi dari sumber yang sama
  • Untuk ANTHROPIC_CUSTOM_HEADERS, pertahankan satu pasangan Name: Value per baris dan tulis ulang pasangan yang dihitung oleh pesan
  • Jalankan /status untuk memastikan sumber kredensial mana yang aktif

Organisasi ini telah dinonaktifkan

Claude Code menggunakan ANTHROPIC_API_KEY usang dari organisasi Console yang dinonaktifkan. Ketika Anda memiliki login langganan yang tersimpan, kunci tersebut menimpanya.

Your ANTHROPIC_API_KEY belongs to a disabled organization · Unset the environment variable to use your subscription instead
Your ANTHROPIC_API_KEY belongs to a disabled organization · Update or unset the environment variable
API Error: 400 ... This organization has been disabled.

Petunjuk setelah · bergantung pada kredensial tersimpan Anda: bentuk pertama muncul ketika /login yang tersimpan dapat menggantikannya setelah Anda menghapus pengaturan kunci, dan bentuk kedua ketika kunci tersebut adalah satu-satunya kredensial Anda.

Environment variable diutamakan daripada /login, sehingga kunci yang diekspor di profil shell Anda atau dimuat dari file .env tetap digunakan bahkan ketika Anda memiliki langganan Pro atau Max yang berfungsi. Dalam mode non-interaktif (-p), kunci selalu digunakan jika ada.

Yang harus dilakukan:

  • Hapus pengaturan ANTHROPIC_API_KEY di shell saat ini dan hapus dari profil shell Anda, lalu jalankan ulang claude
  • Jika pesan menyebutkan Update or unset, Anda tidak memiliki login tersimpan untuk dijadikan cadangan. Hapus pengaturan kunci dan jalankan /login, atau ganti kunci dengan kunci dari organisasi Console yang aktif.
  • Jalankan /status setelahnya untuk memastikan kredensial yang aktif adalah langganan Anda
  • Jika tidak ada environment variable yang diatur dan kesalahan tetap terjadi, hubungi dukungan atau masuk dengan akun lain.

Organisasi Anda telah menonaktifkan autentikasi kunci API

Pesan ini memerlukan Claude Code v2.1.169 atau yang lebih baru. Admin organisasi Console Anda telah mematikan autentikasi kunci API, sehingga API menolak kunci yang dikirim Claude Code. Petunjuk pemulihan setelah · bervariasi tergantung dari mana kunci berasal:

Your organization has disabled API key authentication · Run /login to sign in with your claude.ai account
Your organization has disabled API key authentication · Unset ANTHROPIC_API_KEY to use your claude.ai account instead
Your organization has disabled API key authentication · Unset ANTHROPIC_API_KEY and run /login to sign in with your claude.ai account
Your organization has disabled API key authentication · Unset the apiKeyHelper setting and run /login to sign in with your claude.ai account
Your organization has disabled API key authentication · Sign in again with your claude.ai account

Bentuk terakhir muncul dalam sesi yang dijalankan oleh aplikasi Claude Desktop, seperti tab Code atau Cowork, tempat Anda masuk kembali dari aplikasi tersebut.

Environment variable dan apiKeyHelper diutamakan daripada /login, sehingga menjalankan /login saja tidak membantu selama salah satunya masih menyediakan kunci. Lihat Prioritas autentikasi.

Yang harus dilakukan:

  • Jika pesan menyebutkan ANTHROPIC_API_KEY, hapus pengaturannya di shell saat ini dan hapus dari profil shell atau file .env Anda, lalu jalankan ulang claude
  • Jika pesan menyebutkan apiKeyHelper, hapus pengaturan apiKeyHelper dari settings.json Anda
  • Jalankan /login untuk masuk dengan akun claude.ai Anda
  • Jalankan /status setelahnya untuk memastikan kredensial yang aktif adalah langganan Anda, bukan kunci API
  • Jika Anda memerlukan autentikasi kunci API untuk otomatisasi, minta admin organisasi Anda untuk mengaktifkannya kembali di Console

Organisasi Anda telah menonaktifkan akses langganan Claude

Organisasi Claude Anda tidak mengizinkan masuk ke Claude Code dengan login langganan. Menjalankan /login lagi dengan akun yang sama akan menghasilkan kesalahan yang sama.

Your organization has disabled Claude subscription access for Claude Code · Use an Anthropic API key instead, or ask your admin to enable access

Ini adalah pengaturan organisasi di sisi server, sehingga tidak dapat ditimpa dari pengaturan lokal, environment variable, atau flag CLI.

Agent SDK dan mode non-interaktif -p menampilkan ini sebagai kode kesalahan oauth_org_not_allowed.

Yang harus dilakukan:

  • Minta admin Anda untuk mengaktifkan akses Claude Code bagi organisasi Anda
  • Lakukan autentikasi dengan kunci API Console alih-alih langganan Anda. Lihat Autentikasi Claude Console untuk penyiapan.
  • Jika Anda adalah admin dan tidak melihat opsi untuk mengaktifkan akses, hubungi dukungan Anthropic

Routines dinonaktifkan oleh kebijakan organisasi Anda

Seorang Owner di organisasi Team atau Enterprise Anda telah mematikan routine di tingkat organisasi. Kesalahan muncul ketika Anda mencoba membuat atau menjalankan routine, misalnya dari UI Routines di claude.ai/code. Pada Claude Code v2.1.227 atau yang lebih baru, pengaturan yang sama juga menyembunyikan /schedule di CLI.

Routines are disabled by your organization's policy.

Ini adalah pengaturan di sisi server, sehingga tidak dapat ditimpa dari pengaturan lokal, environment variable, atau flag CLI.

Yang harus dilakukan:

Remote Control memerlukan Anthropic API

Sesi tidak berkomunikasi langsung dengan Anthropic API, yang diperlukan oleh Remote Control.

Remote Control is only available when using Claude via api.anthropic.com. CLAUDE_CODE_USE_BEDROCK is set, so this session is using Amazon Bedrock — unset it (or run in a shell without it) to use Remote Control.

Kalimat kedua menjelaskan apa yang mengalihkan sesi dari Anthropic API; sebelum v2.1.219, pesan hanya berisi kalimat pertama. Bergantung pada penyebabnya, pesan menyebutkan:

  • Variabel penyedia CLAUDE_CODE_USE_*, seperti CLAUDE_CODE_USE_BEDROCK untuk Amazon Bedrock atau CLAUDE_CODE_USE_VERTEX untuk Agent Platform milik Google Cloud
  • ANTHROPIC_BASE_URL yang mengarah ke host selain api.anthropic.com, seperti LLM gateway atau proxy, bahkan ketika Anda masuk dengan claude.ai; sebelum v2.1.196, base URL kustom tidak memblokir Remote Control
  • ANTHROPIC_UNIX_SOCKET diatur, sehingga sesi mengirim permintaannya melalui socket lokal alih-alih ke api.anthropic.com
  • Login cloud gateway enterprise yang dilakukan melalui /login, yang tidak mendukung Remote Control dan tidak memiliki variabel untuk dihapus pengaturannya

Yang harus dilakukan:

  • Hapus pengaturan variabel yang disebutkan pesan, seperti CLAUDE_CODE_USE_BEDROCK atau ANTHROPIC_BASE_URL, dan mulai ulang sesi, atau mulai Remote Control dari sesi yang berkomunikasi langsung dengan Anthropic API
  • Jika variabel tidak diatur di shell Anda, periksa kunci env di file pengaturan Anda, yang menerapkan environment variable ke setiap sesi
  • Untuk pesan ini dan pesan startup Remote Control lainnya, lihat Pemecahan masalah Remote Control

Remote Control tidak dapat memperbarui login Anda

Claude Code menjalankan koneksi Remote Control aktif dengan kredensial berumur pendek yang diperoleh dan diperbaruinya menggunakan login claude.ai tersimpan Anda. Ketika claude.ai berhenti menerima login tersebut, atau Claude Code tidak lagi memiliki login tersimpan, Claude Code menghentikan Remote Control dan mengharuskan Anda masuk kembali. Kedua kegagalan ini dapat terjadi saat Claude Code masih menyambungkan atau nanti, saat memperbarui kredensial.

Ketika Claude Code meminta layanan login untuk memperbarui login tersimpan Anda dan tidak mendapat jawaban, Claude Code tetap menjalankan Remote Control dan mencoba pembaruan lagi selama kredensial koneksi saat ini masih valid. Pembaruan tidak mendapat jawaban ketika Claude Code tidak dapat menjangkau layanan login, permintaan mengalami timeout, atau layanan gagal tanpa menolak login Anda. Jika layanan login masih belum menjawab saat kredensial tersebut kedaluwarsa, Claude Code menghentikan Remote Control dan melaporkan OAuth token refresh failed.

Ketika Claude Code menghentikan Remote Control, Claude Code menampilkan alasannya dalam peringatan dan dalam baris transkrip yang diawali dengan Remote Control disconnected. Sesi lokal Anda tetap berjalan tanpa Remote Control. Bagian ini membahas baris-baris berikut:

Remote Control disconnected — Claude.ai login expired — run /login to restore Remote Control
Remote Control disconnected — Claude.ai login expired — run /login, then /remote-control
Remote Control disconnected — Claude.ai login was rejected — run /login, then /remote-control
Remote Control disconnected — OAuth token unavailable — run /login to restore Remote Control
Remote Control disconnected — OAuth token refresh failed — run /login to re-authenticate
Remote Control disconnected — JWT refresh failed: no OAuth token — run /login
Remote Control disconnected — Signed out of Claude — run /login, then /remote-control

Claude Code menyebutkan penyebabnya di bagian tengah pesan:

  • Claude.ai login expired dan Claude.ai login was rejected: claude.ai tidak lagi menerima token login tersimpan Anda, karena token tersebut kedaluwarsa atau dicabut
  • OAuth token unavailable: Claude Code tidak memiliki token login tersimpan ketika kredensial koneksi jatuh tempo untuk diperbarui
  • OAuth token refresh failed: claude.ai menolak token login tersimpan Anda saat Claude Code sedang menyambung ulang, dan pembaruan token tidak menghasilkan token baru
  • JWT refresh failed: no OAuth token: Claude Code tidak menemukan token login tersimpan untuk melakukan pembaruan
  • Signed out of Claude: Anda keluar di mesin ini, misalnya dengan menjalankan /logout di terminal lain, sehingga Claude Code tidak lagi memiliki login tersimpan untuk memperbarui koneksi

Yang harus dilakukan:

  • Jalankan /login untuk masuk kembali
  • Jalankan /remote-control untuk menyambungkan ulang sesi. Pesan yang diakhiri dengan run /login to restore Remote Control tidak memerlukan langkah ini: Claude Code menyambung ulang dengan sendirinya setelah Anda masuk.

Sebelum v2.1.224, OAuth token refresh failed — run /login to re-authenticate berbunyi OAuth token refresh failed — re-authenticate, then re-enable Remote Control, dan JWT refresh failed: no OAuth token — run /login berbunyi no OAuth token available for recovery (code <N>). Pesan Claude.ai login expired, Claude.ai login was rejected, dan OAuth token unavailable ditambahkan di v2.1.225.

Sebelum v2.1.238, Claude Code melaporkan kasus-kasus yang kini berbunyi Signed out of Claude sebagai JWT refresh failed: no OAuth token — run /login, dan menghentikan Remote Control dengan Claude.ai login expired — run /login to restore Remote Control segera setelah satu pembaruan login tidak mendapat jawaban.

Remote Control berhenti karena akun yang masuk berubah

Claude Code menampilkan baris ini selama sesi Remote Control ketika Anda masuk ke akun atau organisasi claude.ai yang berbeda di mesin ini. Anda melakukan peralihan di luar sesi Claude Code, misalnya dengan menjalankan /login di terminal lain.

Sesi Remote Control yang Anda mulai saat masuk melalui /login dimiliki oleh akun dan organisasi claude.ai yang sedang masuk pada saat itu.

Remote Control disconnected — signed-in claude.ai account or organization changed on this machine — run /remote-control to start a session for the current account, or /login to switch back, then /remote-control

Claude Code menghentikan sesi Remote Control segera setelah claude.ai mengonfirmasi bahwa akun atau organisasi telah berubah. Sesi lokal Anda tetap berjalan tanpa Remote Control.

Yang harus dilakukan:

  • Jalankan /remote-control untuk memulai sesi Remote Control baru di bawah akun atau organisasi saat ini
  • Untuk beralih kembali, jalankan /login dan masuk lagi ke akun atau organisasi sebelumnya. Lalu jalankan /remote-control.

Sebelum v2.1.234, Claude Code tidak menyadari ketika Anda beralih ke akun atau organisasi lain di luar sesi Claude Code. Claude Code tetap menyambungkan sesi Remote Control hingga permintaan berikutnya ke server Remote Control gagal dengan Remote Control server rejected the request (HTTP 404). Kegagalan tersebut dapat terjadi berjam-jam setelah peralihan.

Remote Control berhenti karena aplikasi yang menjalankan sesi keluar atau beralih akun

Ketika aplikasi desktop Claude atau IDE menjadi host sesi Anda, Claude Code mendapatkan token login dari aplikasi tersebut, bukan dari /login. Ketika claude.ai menolak token tersebut, Claude Code meminta token baru dari aplikasi. Jika aplikasi menjawab bahwa aplikasi sudah keluar, atau bahwa aplikasi kini masuk ke akun Claude yang berbeda, Claude Code mengakhiri sesi Remote Control dan mengirimkan salah satu baris berikut ke aplikasi:

Remote Control stopped — the app running this session is now signed in to a different Claude account
Remote Control stopped — the app running this session is signed out of Claude. Sign in there, then turn Remote Control back on

Sesi lokal Anda tetap berjalan tanpa Remote Control.

Yang harus dilakukan:

  • Jika aplikasi sudah keluar, masuk kembali ke aplikasi tersebut, lalu aktifkan kembali Remote Control di aplikasi
  • Jika aplikasi beralih akun, Claude Code tidak dapat melanjutkan sesi yang telah berakhir di bawah akun baru. Mulai sesi Remote Control baru di bawah akun tersebut.

Sebelum v2.1.238, Claude Code mengirimkan pesan run /login yang tercantum di bawah Remote Control tidak dapat memperbarui login Anda ke aplikasi dalam kedua kasus.

Token OAuth dicabut atau kedaluwarsa

Login tersimpan Anda tidak lagi valid. Token yang dicabut berarti Anda keluar di semua tempat atau admin menghapus akses; token yang kedaluwarsa berarti pembaruan otomatis gagal di tengah sesi.

Kedua pesan melaporkan penolakan yang dikembalikan API untuk permintaan yang dikirim Claude Code. Ketika login tersimpan sudah dihapus setelah pembaruan yang gagal, Anda akan melihat Login kedaluwarsa. Jika Anda melakukan autentikasi dengan token berumur panjang di CLAUDE_CODE_OAUTH_TOKEN, Anda akan melihat pesan yang sama ketika token tersebut kedaluwarsa atau dicabut.

OAuth token revoked · Please run /login
Please run /login · API Error: 401 OAuth token has expired ...

Yang harus dilakukan:

  • Jalankan /login untuk masuk kembali
  • Jika Anda melakukan autentikasi dengan environment variable CLAUDE_CODE_OAUTH_TOKEN, Claude Code tetap mengirimkan nilai yang Anda atur setelah permintaan gagal dengan 401, alih-alih beralih ke token login tersimpan. /status menampilkan kredensial ini sebagai baris Auth token yang berbunyi CLAUDE_CODE_OAUTH_TOKEN. Buat token baru dengan claude setup-token dan mulai ulang dengan token tersebut, atau hapus pengaturan variabel dan jalankan /login. Sebelum v2.1.225, Claude Code dapat mengganti nilai variabel di tengah sesi dengan access token berumur pendek dari login tersimpan, dan sesi kembali gagal dengan kesalahan 401 setelah token tersebut kedaluwarsa.
  • Untuk permintaan masuk yang berulang di setiap peluncuran, lihat pemeriksaan jam sistem dan langkah pemulihan penyimpanan kredensial macOS di Pemecahan masalah
  • Untuk kegagalan lain termasuk 403 Forbidden dan masalah browser OAuth, lihat Login dan autentikasi

API Error: 401 Invalid authentication credentials

API mengenali format kredensial Anda tetapi menolak akun atau organisasi di baliknya. Anthropic mengembalikan pesan ini ketika kredensial baru saja dicabut, ketika organisasi dinonaktifkan atau menghapus akses Anda, atau ketika akun itu sendiri dinonaktifkan, sehingga token yang kedaluwarsa bukanlah penyebabnya. Kredensial tersebut dapat berupa login tersimpan Anda atau ANTHROPIC_API_KEY yang disetujui, dan perbaikannya berbeda, jadi mulailah dengan menjalankan /status untuk melihat mana yang aktif.

Please run /login · API Error: 401 Invalid authentication credentials

Yang harus dilakukan:

  • Jika /status menampilkan baris API key yang tidak ditandai sebagai tidak digunakan, ANTHROPIC_API_KEY yang disetujui adalah kredensial aktif dan diutamakan daripada login Anda, sehingga /login tidak menggantikannya. Rotasi kunci di Claude Console, atau kembali ke langganan Anda dengan menjalankan unset ANTHROPIC_API_KEY, atau di PowerShell Remove-Item Env:ANTHROPIC_API_KEY.
  • Jika /status hanya menampilkan login Anda, jalankan /login sekali. Jika kredensial telah dicabut, login baru akan menggantikannya.
  • Jika pesan yang sama muncul kembali untuk akun login yang sama, akun atau organisasi tersebut tidak lagi aktif. Periksa akun dan organisasi yang dilaporkan /status, dan minta admin organisasi Anda untuk memulihkan akses.
  • Jika ANTHROPIC_BASE_URL mengarah ke LLM gateway, teks setelah 401 adalah pesan dari gateway Anda, bukan dari Anthropic, dan /login tidak mengubahnya. Perbaiki kredensial yang diharapkan gateway Anda.

Login kedaluwarsa

Claude Code mencoba memperbarui login claude.ai tersimpan Anda dan layanan OAuth menolak refresh token yang tersimpan, sehingga Claude Code menghapus kredensial tersimpan. Setelah itu, setiap permintaan model berhenti secara lokal dengan pesan ini sebelum mencapai API, karena hanya /login yang dapat membuat kredensial baru.

Sebelum v2.1.206, Claude Code tetap mengirimkan permintaan model dengan kredensial apa pun yang tersisa di lingkungan, dan setiap model kemudian gagal dengan Ada masalah dengan model yang dipilih atau 401 alih-alih permintaan untuk masuk.

Login expired · Please run /login

Dalam mode non-interaktif (-p) dan Agent SDK, pesannya berbunyi sebagai berikut, dan kode kesalahan terstrukturnya adalah authentication_failed:

Failed to authenticate: OAuth session expired and could not be refreshed

Ini bukan kondisi yang sama dengan Token OAuth dicabut atau kedaluwarsa. Pesan-pesan tersebut melaporkan penolakan yang dikembalikan API. Claude Code sendiri yang menghasilkan Login expired untuk login yang sudah gagal diperbaruinya, sehingga tidak mengirim permintaan. Ketika pembaruan gagal karena akun itu sendiri ditangguhkan, bukan karena login yang usang, Claude Code menampilkan Akun Anda ditangguhkan.

Sesi yang diautentikasi dengan kunci API, CLAUDE_CODE_OAUTH_TOKEN, atau penyedia pihak ketiga tidak menggunakan login tersimpan dan tidak pernah melihat pesan ini.

Anda dapat memeriksa kondisi ini sebelum permintaan gagal: /status menampilkan baris Login yang berbunyi Expired — log in again, ditambah organisasi dan email yang tersimpan untuk login yang kedaluwarsa. Baris ini hanya muncul ketika login tersimpan adalah kredensial aktif Anda dan tidak dapat diperbarui lagi. Sesi yang diautentikasi dengan cara lain tidak menampilkan baris ini, meskipun login yang kedaluwarsa masih tersimpan. Sebelum v2.1.210, /status tidak memberikan indikasi apa pun dalam kondisi ini bahwa pernah ada login, karena kredensial yang dihapus tidak menyisakan apa pun untuk dilaporkan.

Yang harus dilakukan:

  • Jalankan /login untuk masuk kembali. Mencoba ulang tanpa masuk akan menampilkan pesan yang sama pada setiap permintaan.
  • Jika Anda masuk dengan akun claude.ai Anda di jendela Claude Code lain, lihat Belum masuk untuk mengetahui kapan sesi ini mulai menggunakan login tersebut dengan sendirinya.
  • Dalam mode non-interaktif, jalankan claude di lingkungan yang sama, selesaikan /login, lalu jalankan ulang perintah Anda. Untuk otomatisasi yang tidak dapat masuk secara interaktif, lakukan autentikasi dengan ANTHROPIC_API_KEY atau buat token berumur panjang dengan claude setup-token.
  • Jika masuk terus gagal, lihat Login dan autentikasi

Tidak dapat memperbarui login Anda karena proses Claude Code lain sedang memperbaruinya

Pesan ini tidak berarti login Anda ditolak. Login claude.ai tersimpan Anda telah kedaluwarsa dan perlu diperbarui. Proses Claude Code lain di mesin yang sama memegang kunci pembaruan bersama, atau keluar dan meninggalkannya, dan pembaruan tidak mengalami kemajuan selama sesi ini menunggu. Claude Code menghentikan permintaan sebelum mengirimkannya:

Could not refresh your login because another Claude Code process is refreshing it (or exited mid-refresh) · Try again in a minute; if it keeps happening, close other Claude Code windows or sign in again with /login

Dalam mode non-interaktif (-p) dan Agent SDK, pesannya berbunyi sebagai berikut, dan kode kesalahan terstrukturnya adalah server_error:

Failed to refresh OAuth token: another Claude Code process is refreshing it or exited mid-refresh. This is usually transient; retry in a minute, and if it persists close other Claude Code processes or sign in again

Sesi yang diautentikasi dengan kunci API, CLAUDE_CODE_OAUTH_TOKEN, atau penyedia pihak ketiga tidak menggunakan login tersimpan dan tidak pernah melihat pesan ini.

Yang harus dilakukan:

  • Coba lagi dalam satu menit. Jika proses lain menyelesaikan pembaruan terlebih dahulu, sesi ini menggunakan login yang telah diperbarui.
  • Jika pesan terus muncul, tutup jendela dan proses Claude Code lainnya, lalu coba lagi.
  • Jika pesan muncul tanpa ada proses Claude Code lain yang berjalan, jalankan /login. Masuk kembali tidak menunggu kunci pembaruan.

Tidak dapat menyimpan login Anda

Anda masuk dengan claude.ai, tetapi Claude Code tidak dapat menyimpan login ke penyimpanan kredensialnya, sehingga login tidak selesai. Di macOS, hal ini dapat terjadi ketika keychain login terkunci, misalnya saat sleep atau idle, setelah Claude Code sudah membaca atau menyimpan kredensial di dalamnya selama sesi yang sama.

Couldn't save your login. If your Mac's keychain is locked, unlock it and log in again.
Couldn't save your login. Try logging in again.

Bentuk pertama muncul di macOS dan bentuk kedua di platform lainnya. Kegagalan penyimpanan kredensial yang bersifat sementara, seperti timeout atau penyimpanan yang tidak dapat dibaca, menghasilkan pesan yang sama.

Yang harus dilakukan:

  • Di macOS, buka kunci keychain login, lalu jalankan /login lagi
  • Di platform lain, jalankan /login lagi
  • Jika login masih tidak tersimpan, lihat Belum masuk atau token kedaluwarsa untuk perintah membuka kunci keychain dan langkah pemulihan penyimpanan kredensial lainnya

Gagal memulai server callback OAuth

Ketika /login, claude auth login, atau claude setup-token memasukkan Anda melalui browser, Claude Code membuka port yang mendengarkan di 127.0.0.1 agar browser Anda dapat mengembalikan hasil login kepadanya. Pesan ini berarti Claude Code tidak dapat membuka port tersebut, dan proses masuk berhenti sebelum jendela browser atau URL login muncul:

Failed to start OAuth callback server: Failed to start server. Is port 0 in use?

Jika pesan Anda diakhiri dengan Is port 0 in use?, upaya untuk mendengarkan di alamat loopback IPv4 127.0.0.1 gagal sepenuhnya. Karena kegagalan terjadi sebelum URL login ada, alur Paste code here if prompted tidak tersedia sebagai solusi alternatif.

Yang harus dilakukan:

  • Untuk langsung masuk tanpa listener lokal: jika Anda menggunakan langganan claude.ai, jalankan claude setup-token di mesin tempat proses masuk berfungsi dan atur token yang dicetaknya sebagai CLAUDE_CODE_OAUTH_TOKEN di mesin ini. Jika tidak, atur ANTHROPIC_API_KEY ke kunci dari Claude Console. Prioritas autentikasi menjelaskan cara Claude Code memilih di antara kredensial.
  • Untuk menggunakan login browser di mesin ini, Claude Code harus dapat mendengarkan di 127.0.0.1. Jika Claude Code berjalan di dalam sandbox, periksa apakah kebijakan sandbox mengizinkan mendengarkan di port lokal, lalu jalankan /login lagi. Jika seharusnya bisa dan masih gagal, jalankan /feedback agar laporan menyertakan detail lingkungan Anda.

Login Claude tidak diterima

Anda mencoba memulai sesi cloud, dan server menolak membuatnya dengan 401: server tidak menerima login Claude yang dikirim mesin ini, biasanya karena login telah kedaluwarsa atau dicabut.

Bagian pertama baris adalah alasan dari server itu sendiri jika server memberikannya. Jika tidak, barisnya berbunyi:

Claude login not accepted · Run /login, then try again

Yang harus dilakukan:

  • Jalankan /login, selesaikan proses masuk, lalu mulai sesi lagi

Artifact memerlukan login claude.ai

Claude Code menolak publikasi atau pembacaan artifact karena sesi tidak memiliki login claude.ai yang dapat digunakan untuk artifact.

Setiap bentuk pesan diawali dengan kata-kata yang sama, diikuti dengan solusi yang bergantung pada cara sesi Anda diautentikasi. Tanpa kredensial yang bersaing, pesannya berbunyi:

Artifacts need a claude.ai login. Run /login and select "Claude account with subscription", then retry — the "Anthropic Console account" option does not provide claude.ai credentials.

Yang harus dilakukan:

  • Jalankan /login dan pilih Claude account with subscription. Opsi Anthropic Console account tidak menyediakan kredensial claude.ai.
  • Ketika pesan menyebutkan kredensial yang diutamakan, seperti ANTHROPIC_API_KEY, pengaturan apiKeyHelper, atau kunci Console yang disimpan oleh /login sebelumnya, hapus kredensial tersebut sesuai petunjuk pesan, lalu jalankan /login
  • Ketika pesan menyebutkan bahwa sesi jarak jauh ini diautentikasi melalui mesin yang meluncurkannya, masuk ke claude.ai di mesin tersebut, lalu sambungkan ulang sesi
  • Ketika pesan menyebutkan bahwa kredensial disuntikkan oleh lingkungan host sesi, Anda tidak dapat mengubahnya di sesi tersebut; mulai sesi yang telah masuk ke claude.ai
  • Lihat Ketersediaan untuk persyaratan lain yang dimiliki artifact, seperti paket, penyedia model, dan kebijakan organisasi

Kebijakan administrator mengharuskan login Cloud gateway

Pengaturan terkelola administrator di mesin ini mengatur forceLoginMethod ke "gateway" atau mengatur forceLoginGatewayUrl. Kecuali Anda memilih penyedia cloud melalui variabel seperti CLAUDE_CODE_USE_BEDROCK, Claude Code kemudian hanya menerima login Claude apps gateway. Anda akan melihat salah satu dari dua pesan:

Not signed in to the Cloud gateway — run /login.

Permintaan model gagal dengan pesan ini ketika sesi tidak memiliki login gateway, misalnya karena Anda belum menjalankan /login sejak kebijakan tersebut mencapai mesin.

Jika mesin juga menyimpan kredensial yang diterbitkan Anthropic dan pengaturan terkelola mengatur forceLoginMethod atau forceLoginOrgUUID, Claude Code keluar saat startup. Kredensial tersebut dapat berupa variabel ANTHROPIC_API_KEY atau ANTHROPIC_AUTH_TOKEN, pengaturan apiKeyHelper, atau kunci API yang disimpan oleh login Claude Console sebelumnya. Pesannya diawali dengan:

Administrator policy requires a Cloud gateway sign-in on this machine; the
Anthropic-issued credential configured here (ANTHROPIC_API_KEY,
ANTHROPIC_AUTH_TOKEN, or apiKeyHelper) is not used.

Yang harus dilakukan:

  • Jalankan /login dan selesaikan proses masuk di layar Cloud gateway
  • Untuk pesan startup, hapus pengaturan ANTHROPIC_API_KEY, ANTHROPIC_AUTH_TOKEN, atau apiKeyHelper yang Anda konfigurasikan. Untuk menghapus kunci API Console yang tersimpan, jalankan claude auth logout, yang juga menghapus login claude.ai yang tersimpan. Jika Anda memilih penyedia cloud dengan CLAUDE_CODE_USE_*, sesi kemudian dimulai tanpa login. Jika tidak, mulai claude dan jalankan /login
  • Jika Anda yakin mesin tersebut seharusnya tidak mengharuskan gateway, minta administrator yang mengelolanya untuk menghapus forceLoginMethod dan forceLoginGatewayUrl dari pengaturan terkelolanya

Pada v2.1.265, sebuah regresi juga menampilkan pesan pertama di beberapa konfigurasi LLM gateway dan proxy yang melakukan autentikasi dengan kunci API, apiKeyHelper, atau header kustom, bahkan tanpa persyaratan administrator di mesin tersebut. Perbarui ke v2.1.266 atau yang lebih baru. Anda tidak perlu mengubah konfigurasi Anda.

Sebelum v2.1.261, pada mesin yang mengatur forceLoginMethod ke "gateway", Claude Code menggunakan login tersimpan yang tersisa alih-alih menggagalkan permintaan model, dan melaporkan kredensial lingkungan yang dikonfigurasi dengan This machine's managed settings require a first-party login alih-alih pesan startup. Sebelum v2.1.265, mesin yang pengaturan terkelolanya hanya mengatur forceLoginGatewayUrl tidak mengharuskan login gateway, dan Claude Code menggunakan kredensial yang tersisa di sana.

Akun Anda ditangguhkan

Akun Claude di balik login Anda telah ditangguhkan. Claude Code menampilkan pesan pertama ketika mencoba memperbarui login tersimpan Anda dan mengetahui adanya penangguhan, dan pesan kedua ketika proses masuk yang Anda selesaikan di browser melaporkannya:

Your account is on hold and can't use Claude Code. View details or appeal: https://claude.ai/restricted
Your account is on hold and can't sign in to Claude Code. View details or appeal: https://claude.ai/restricted

Masuk kembali dengan akun yang sama tidak menghilangkan pesan ini, karena penangguhan berlaku pada akun, bukan pada login. Dalam mode non-interaktif (-p) dan Agent SDK, kode kesalahan terstrukturnya adalah account_on_hold. Sebelum v2.1.235, Claude Code melaporkan akun yang ditangguhkan sebagai Login expired · Please run /login, yang langkah pemulihannya tidak dapat menghapus penangguhan.

Yang harus dilakukan:

  • Buka tautan di pesan untuk melihat detail penangguhan atau mengajukan banding
  • Jika Anda memiliki akun Claude lain atau kunci API yang tidak terpengaruh oleh penangguhan, Anda dapat terus bekerja selama penangguhan diselesaikan: jalankan /login dengan akun tersebut, atau atur kunci dengan ANTHROPIC_API_KEY

Login profil Anthropic kedaluwarsa

Claude Code melakukan autentikasi melalui profil kredensial Anthropic yang kredensial login tersimpannya telah kedaluwarsa, dan profil tersebut tidak menyimpan kredensial pembaruan yang dapat digunakan Claude Code untuk memperbaruinya. Claude Code menghentikan setiap permintaan secara lokal tanpa mencoba ulang, karena retry akan membaca kredensial kedaluwarsa yang sama.

Anthropic profile login expired · Re-authenticate your Anthropic profile
Anthropic profile login expired · Run /login to use your claude.ai account instead, or re-authenticate the profile

Pesan ini hanya muncul ketika kredensial aktif berasal dari profil kredensial Anthropic, yaitu profil yang Anda pilih dengan environment variable ANTHROPIC_PROFILE, yang ditemukan Claude Code sebagai profil aktif di direktori konfigurasi Anthropic Anda, atau yang ditulis Claude Code ketika Anda masuk tanpa kunci API. Sesi yang diautentikasi dengan kunci API, bearer token seperti ANTHROPIC_AUTH_TOKEN, atau penyedia pihak ketiga tidak pernah melihat pesan ini.

Pada mesin yang menawarkan login tanpa kunci, jalankan /login, pilih akun Anthropic Console, dan masuk kembali untuk memperbarui profil yang ditulis oleh login Console tanpa kunci atau oleh ant auth login dari Claude Platform CLI. Claude Code mengganti kredensial yang kedaluwarsa di profil tersebut. Untuk profil federasi atau profil yang dibuat oleh alat lain, /login tidak memperbarui kredensial. Bentuk yang Anda lihat bergantung pada apakah Anda memilih profil tersebut atau Claude Code menemukannya:

  • Ketika Anda mengatur ANTHROPIC_PROFILE secara eksplisit, pesan diakhiri dengan Re-authenticate your Anthropic profile.
  • Ketika Claude Code menemukan profil dari direktori konfigurasi Anda, pesan menawarkan /login, karena Claude Code mengutamakan /login yang berfungsi daripada profil yang ditemukan, lalu melakukan autentikasi dengan akun claude.ai atau Console Anda. Sebelum v2.1.234, Claude Code menampilkan bentuk Re-authenticate your Anthropic profile dalam kasus ini juga.

Yang harus dilakukan:

  • Masuk kembali ke profil, lalu coba lagi: pada mesin yang menawarkan login tanpa kunci, jalankan /login dan pilih akun Anthropic Console untuk profil yang ditulis oleh login Console tanpa kunci atau oleh ant auth login dari Claude Platform CLI; untuk profil lain, gunakan alat yang membuatnya
  • Jika administrator menyediakan kredensial profil tersebut, minta mereka untuk menerbitkan yang baru
  • Jalankan /status untuk memastikan sumber kredensial aktif dan nama profil
  • Untuk berhenti menggunakan profil, hapus pengaturan ANTHROPIC_PROFILE jika Anda mengaturnya, lalu lakukan autentikasi dengan cara lain, seperti /login atau ANTHROPIC_API_KEY

Persyaratan scope OAuth

Token tersimpan dibuat sebelum adanya scope izin yang dibutuhkan oleh fitur yang lebih baru:

OAuth token does not meet scope requirement: user:profile

Yang harus dilakukan:

  • Jalankan /login untuk mendapatkan token baru dengan scope saat ini. Anda tidak perlu keluar terlebih dahulu.

claude.ai menolak token sesi

Permintaan konektor claude.ai gagal karena claude.ai menolak token dari login Claude Code Anda. Token yang ditolak adalah login Anda, bukan otorisasi konektor itu sendiri di claude.ai, sehingga mengotorisasi ulang konektor tidak menyelesaikannya. Di /mcp, konektor ditampilkan sebagai session token rejected dan tampilan detailnya berbunyi:

claude.ai rejected the session token. Run /login, then reconnect.

Yang harus dilakukan:

  • Jalankan /login untuk masuk kembali
  • Sambungkan ulang konektor dari /mcp, atau jalankan /mcp reconnect <server>. Menyambung ulang sebelum Anda masuk kembali akan membiarkan konektor dalam kondisi yang sama. Opsi Reconnect di panel /mcp melaporkan your claude.ai session token was rejected; bentuk /mcp reconnect <server> yang diketik melaporkan penyambungan ulang yang berhasil meskipun token masih ditolak.

Sebelum v2.1.222, Claude Code menandai konektor sebagai memerlukan autentikasi, yang mengarahkan Anda ke alur otorisasi konektor meskipun menyelesaikannya tidak menyelesaikan kondisi tersebut.

Server MCP mengharuskan Anda masuk kembali

Server MCP jarak jauh menolak kredensial pada panggilan tool di tengah sesi, biasanya karena login atau token telah kedaluwarsa atau karena token tidak memiliki izin yang dibutuhkan tool tersebut. Panggilan tool gagal, dan /mcp menandai server sebagai memerlukan autentikasi.

Untuk server yang Anda masuki dari Claude Code, termasuk konektor claude.ai, login telah kedaluwarsa atau dicabut:

MCP server "<name>" needs you to sign in again (run /mcp to re-authenticate)

Jalankan /mcp, pilih server, dan masuk kembali dari menunya.

Untuk server yang dikonfigurasi dengan skrip headersHelper, Claude Code telah menjalankan ulang helper dan mencoba ulang panggilan sekali sebelum menampilkan ini:

MCP server "<name>" rejected the credential from its headersHelper (check the helper and run /mcp to reconnect, or to authenticate if the server also uses OAuth)

Periksa apakah helper mengembalikan kredensial yang diterima server, lalu sambungkan ulang dari /mcp, yang menjalankan helper lagi.

Untuk server dengan header Authorization statis dalam konfigurasinya:

MCP server "<name>" rejected the Authorization header in its config (update it, then run /mcp to reconnect)

Perbarui nilai header di tempat server dikonfigurasi, lalu sambungkan ulang dari /mcp.

Sebelum v2.1.273, kasus login kedaluwarsa, headersHelper, dan header Authorization semuanya menampilkan MCP server "<name>" requires re-authorization (token expired).

Server juga dapat menolak panggilan tool dengan HTTP 403 insufficient_scope untuk meminta Anda mengotorisasi suatu scope, terkadang scope yang sudah tercantum dalam token Anda. Pesan menyebutkan scope tersebut:

MCP server "<name>" needs additional permissions (scope: "<scope>") — run /mcp to re-authenticate

Jalankan /mcp, pilih server, dan lakukan autentikasi ulang dari menunya.

Ketika konfigurasi server tidak mengatur oauth.scopes maupun authServerMetadataUrl, Claude Code meminta scope yang disebutkan server. Dengan salah satu pengaturan tersebut, Claude Code meminta scope dari pengaturan tersebut. Jika Anda menetapkan oauth.scopes, tambahkan scope yang kurang ke daftar tersebut sebelum Anda melakukan autentikasi ulang.

Sebelum v2.1.274, kasus ini menampilkan pesan needs you to sign in again, dan sebelum v2.1.273 kasus ini menampilkan requires re-authorization (token expired) seperti kasus lainnya.

URL server MCP tidak ada atau bukan URL yang valid

Claude Code menolak memulai login OAuth untuk server MCP jarak jauh karena url yang dikonfigurasi untuk server tersebut tidak dapat diurai sebagai URL. Kecuali Claude Code memiliki masalah konfigurasi yang lebih spesifik untuk dilaporkan bagi server tersebut, menjalankan claude mcp login <name> di shell Anda mencetak penolakan tersebut sebagai:

Couldn't complete authentication for "<name>": This server's URL is missing or not a valid URL, so sign-in can't start. Fix the URL in its MCP config (or set the environment variable it uses) and try again.

Yang harus dilakukan:

  • Atur url entri ke endpoint server yang sebenarnya di tempat server dikonfigurasi, atau atur environment variable yang disebutkan oleh referensi ${VAR}-nya, lalu jalankan proses masuk lagi.

Ketidakcocokan issuer dalam respons otorisasi

Selama login OAuth MCP, server otorisasi mengalihkan kembali ke Claude Code dengan parameter iss yang tidak menyebutkan issuer yang diharapkan Claude Code dari metadata OAuth server. Issuer yang salah pada langkah ini adalah tanda serangan mix-up server otorisasi, sehingga Claude Code menggagalkan proses masuk alih-alih menukarkan kode otorisasi. Claude Code menampilkan kesalahan di menu server /mcp setelah proses masuk di browser:

Issuer mismatch in authorization response (RFC 9207): expected "https://auth.example.com", received "https://other.example.com"

expected adalah issuer dari metadata OAuth server, dan received adalah nilai iss yang dibawa oleh pengalihan. Proses masuk yang pengalihannya tidak membawa parameter iss lolos pemeriksaan, kecuali metadata server mengatur authorization_response_iss_parameter_supported, yang dalam hal ini Claude Code menggagalkan proses masuk.

Yang harus dilakukan:

  • Coba proses masuk lagi dari /mcp
  • Jika kesalahan berulang, laporkan ke operator server. Perbaikannya ada di sisi server: server otorisasi harus mengembalikan issuer yang sama di parameter iss dengan yang diiklankannya di metadata
  • Untuk terhubung selagi server diperbaiki, mulai Claude Code dengan MCP_SDK_GENERATION=v1, yang runtime-nya tidak menjalankan pemeriksaan ini. Ini menghilangkan perlindungan terhadap serangan mix-up, jadi utamakan perbaikan di sisi server

Sebelum v2.1.232, Claude Code hanya menggunakan runtime v2 dalam peluncuran bertahap atau ketika Anda mengatur MCP_SDK_GENERATION=v2.

Menolak mengirim kredensial ke token endpoint non-https

Pada runtime v2, Claude Code mengirim permintaan token OAuth MCP hanya ke token endpoint yang dilayani melalui HTTPS atau di localhost, 127.0.0.1, atau ::1. Pesan ini berarti token endpoint server bukan salah satunya, sehingga Claude Code berhenti sebelum mengirim permintaan. Hal itu terjadi setelah proses masuk di browser, sehingga langkah browser berhasil terlebih dahulu, dan terjadi lagi setiap kali Claude Code memperbarui token server.

Dalam bentuk lengkapnya, pesan ini berasal dari MCP SDK dan mengutip token endpoint yang ditolaknya. Di log debug, pesan ini mengikuti Error during auth completion: untuk proses masuk atau Token refresh failed: untuk pembaruan. Di shell Anda, claude mcp login <name> mencetaknya setelah Couldn't complete authentication for "<name>":, dan dalam sesi, /mcp menampilkannya di bawah menu server:

Refusing to send credentials to non-https token endpoint 'http://192.168.1.50:8123/oauth/token'. OAuth token requests MUST use TLS (localhost / 127.0.0.1 / ::1 are exempt).

Claude Code memperlakukan URL server yang memiliki query string atau segmen path panjang yang tampak acak sebagai kemungkinan rahasia. Untuk server semacam itu, Claude Code menyamarkan kesalahan login yang dimunculkan MCP SDK sebelum menampilkan atau mencatatnya ke log. Kesalahan ini kemudian terbaca sebagai nama pendek yang dapat berubah antar rilis, seperti io, diikuti dengan from the MCP SDK for dan URL server yang disamarkan. Kesalahan lain dari MCP SDK memiliki bentuk yang sama di sana. Pesan yang disamarkan dapat berupa kesalahan ini hanya jika token endpoint server adalah http:// biasa di alamat selain localhost, 127.0.0.1, atau ::1.

Yang harus dilakukan:

  • Layani token endpoint tersebut melalui HTTPS, misalnya dengan menempatkan server di belakang reverse proxy atau tunnel yang menangani TLS dan mengonfigurasi server untuk mengiklankan alamat https://
  • Untuk terhubung tanpa mengubah server, mulai Claude Code dengan MCP_SDK_GENERATION=v1, yang runtime-nya tidak menerapkan aturan ini dan mengirim permintaan token melalui HTTP biasa. Pilihan tersebut berlaku hingga Anda keluar dan berlaku untuk setiap server. Runtime v1 juga melewati pemeriksaan issuer, jadi utamakan melayani endpoint melalui HTTPS

Kredensial AWS kedaluwarsa atau tidak valid

Token sesi AWS Anda telah kedaluwarsa atau ditolak. Pesan ini muncul pada 401 dari Claude Platform on AWS atau endpoint Mantle, yang merupakan cara penyedia tersebut melaporkan token keamanan yang kedaluwarsa.

Petunjuk tindakan di bagian tengah bervariasi sesuai penyiapan Anda. Bagian yang tetap adalah AWS credentials expired or invalid di awal:

AWS credentials expired or invalid · run /login and select "Claude Platform on AWS · refresh credentials", or run `aws sso login --profile myprofile` in another terminal · API Error: 401 ...

Sebelum v2.1.273, pesan ini hanya muncul ketika awsAuthRefresh dikonfigurasi.

Yang harus dilakukan:

  • Jika petunjuk menyebutkan bahwa kredensial dikelola oleh lingkungan ini, aplikasi yang meluncurkan Claude Code memiliki kredensial tersebut dan langkah-langkah lain di sini tidak berlaku: coba lagi, atau hubungi administrator Anda
  • Jika awsAuthRefresh diatur, jalankan perintah yang disebutkan dalam pesan, seperti aws sso login --profile myprofile, di terminal lain dan selesaikan proses masuk di browser, lalu coba lagi. Jika tidak, perbarui sendiri kredensial AWS yang Anda gunakan: login SSO, access key, kunci API, atau token proxy Anda
  • Dengan awsAuthRefresh diatur dalam sesi interaktif, Anda dapat menjalankan /login, memilih 3rd-party platform, lalu memilih Claude Platform on AWS · refresh credentials di bawah Using 3rd-party platforms untuk menjalankan perintah yang sama tanpa memulai ulang Claude Code. Lihat Mengonfigurasi kredensial AWS
  • Jika kesalahan berulang setelah perintah pembaruan berhasil, pastikan identitas valid di luar Claude Code dengan aws sts get-caller-identity di shell dan profil yang sama

Autentikasi AWS gagal

Penyedia AWS Anda mengembalikan 403, atau Amazon Bedrock mengembalikan 401.

Amazon Bedrock melaporkan token keamanan yang kedaluwarsa sebagai 403, tetapi 403 juga merupakan cara Amazon Bedrock melaporkan penolakan otorisasi, seperti AccessDeniedException karena izin IAM yang tidak ada. Claude Code tidak dapat membedakan kedua penyebab tersebut.

401 dari Amazon Bedrock juga masuk ke sini alih-alih ke Kredensial AWS kedaluwarsa atau tidak valid, karena Amazon Bedrock tidak melaporkan token yang kedaluwarsa sebagai 401. 401 dari endpoint tersebut biasanya berasal dari hal lain di jalur permintaan, seperti proxy perusahaan.

Pembaruan kredensial memperbaiki token yang kedaluwarsa dan tidak dapat memperbaiki penyebab lainnya, sehingga pesan menawarkan keduanya:

AWS authentication failed · run /login and select "Claude Platform on AWS · refresh credentials", or run `aws sso login --profile myprofile` in another terminal · if credentials are current, check AWS permissions and model access · API Error: 403 ...

Petunjuk tindakan di bagian tengah bervariasi sesuai penyiapan Anda. Bagian yang tetap adalah AWS authentication failed di awal.

Ketika 403 tersebut adalah jawaban Amazon Bedrock bahwa Anda tidak memiliki akses ke model dengan ID model yang ditentukan, petunjuknya justru meminta Anda untuk mengaktifkan model untuk akun dan region Anda di konsol Amazon Bedrock.

Sebelum v2.1.273, pesan ini hanya muncul ketika awsAuthRefresh dikonfigurasi.

Yang harus dilakukan:

  • Jika petunjuk menyebutkan bahwa kredensial dikelola oleh lingkungan ini, aplikasi yang meluncurkan Claude Code memiliki kredensial tersebut dan langkah-langkah lain di sini tidak berlaku: coba lagi, atau hubungi administrator Anda
  • Perbarui kredensial AWS Anda untuk berjaga-jaga jika kredensial yang kedaluwarsa adalah penyebabnya: jalankan perintah awsAuthRefresh yang disebutkan dalam pesan jika ada, atau perbarui sendiri login SSO, access key, kunci API, atau token proxy Anda
  • Jika kredensial Anda masih berlaku, pastikan izin IAM di Konfigurasi IAM terpasang pada identitas yang Anda gunakan dan bahwa model yang dipilih diaktifkan untuk akun dan region Anda
  • Jalankan aws sts get-caller-identity untuk memastikan identitas mana yang digunakan permintaan Anda

Kredensial Google Cloud kedaluwarsa atau tidak valid

Kredensial Google Cloud Anda untuk Agent Platform milik Google Cloud telah kedaluwarsa atau ditolak: permintaan mengembalikan 401, yang merupakan cara Agent Platform melaporkan kedaluwarsanya kredensial.

Petunjuk tindakan di bagian tengah bervariasi sesuai penyiapan Anda. Bagian yang tetap adalah Google Cloud credentials expired or invalid di awal:

Google Cloud credentials expired or invalid · refresh your Google Cloud credentials (application default sign-in, or the key file in GOOGLE_APPLICATION_CREDENTIALS) and retry · API Error: 401 ...

Yang harus dilakukan:

  • Jika petunjuk menyebutkan bahwa kredensial dikelola oleh lingkungan ini, aplikasi yang meluncurkan Claude Code memiliki kredensial tersebut dan langkah-langkah lain di sini tidak berlaku: coba lagi, atau hubungi administrator Anda
  • Jika Anda melakukan autentikasi dengan application default credentials, jalankan perintah gcpAuthRefresh yang disebutkan dalam pesan, atau gcloud auth application-default login, dan selesaikan proses masuk, lalu coba lagi
  • Jika Anda merutekan melalui LLM gateway dengan CLAUDE_CODE_SKIP_VERTEX_AUTH diatur, perbarui token gateway di ANTHROPIC_AUTH_TOKEN atau ANTHROPIC_CUSTOM_HEADERS, lalu coba lagi
  • Jika Anda melakukan autentikasi dengan file kunci service account, pastikan GOOGLE_APPLICATION_CREDENTIALS mengarah ke kunci yang valid. Lihat Mengonfigurasi kredensial GCP
  • Jika kesalahan berulang setelah pembaruan, pastikan identitas berfungsi di luar Claude Code dengan gcloud auth application-default print-access-token di shell yang sama

Sebelum v2.1.273, 401 dari Agent Platform menampilkan pesan generik Please run /login atau Failed to authenticate, yang tidak dapat memperbarui kredensial Google Cloud.

Autentikasi Google Cloud gagal

Agent Platform milik Google Cloud mengembalikan 403, yang digunakannya untuk penolakan otorisasi, bukan untuk kredensial yang kedaluwarsa. Biasanya identitas yang Anda gunakan untuk autentikasi tidak memiliki izin IAM, atau model tidak diaktifkan untuk proyek Anda.

Petunjuk tindakan di bagian tengah bervariasi sesuai penyiapan Anda. Bagian yang tetap adalah Google Cloud authentication failed di awal:

Google Cloud authentication failed · refresh your Google Cloud credentials (application default sign-in, or the key file in GOOGLE_APPLICATION_CREDENTIALS) and retry · if credentials are current, check GCP IAM permissions and Vertex AI model access · API Error: 403 ...

Yang harus dilakukan:

  • Jika petunjuk menyebutkan bahwa kredensial dikelola oleh lingkungan ini, aplikasi yang meluncurkan Claude Code memiliki kredensial tersebut dan langkah-langkah lain di sini tidak berlaku: coba lagi, atau hubungi administrator Anda
  • Pastikan peran di Konfigurasi IAM diberikan kepada identitas yang Anda gunakan untuk autentikasi
  • Pastikan model diaktifkan untuk proyek Anda. Lihat Meminta akses model

Sebelum v2.1.273, 403 dari Agent Platform menampilkan pesan generik Please run /login atau Failed to authenticate, yang tidak dapat memperbarui kredensial Google Cloud.

Autentikasi Microsoft Foundry gagal

Microsoft Foundry mengembalikan 401 atau 403: kredensial Azure pada permintaan ditolak, atau identitas di baliknya tidak memiliki akses ke sumber daya Foundry. /login tidak dapat membuat kredensial Azure. Petunjuk tindakan di bagian tengah bervariasi sesuai pengaturan Anda. Bagian yang tetap adalah awalan Microsoft Foundry authentication failed:

Microsoft Foundry authentication failed · refresh your Foundry credential (ANTHROPIC_FOUNDRY_AUTH_TOKEN, ANTHROPIC_FOUNDRY_API_KEY, Azure sign-in for Entra, or your proxy token) and retry · if credentials are current, check access to the Foundry resource · API Error: 401 ...

Yang harus dilakukan:

  • Jika petunjuk menyatakan bahwa kredensial dikelola oleh lingkungan ini, aplikasi yang meluncurkan Claude Code memiliki kredensial tersebut dan langkah-langkah lain di sini tidak berlaku: coba lagi, atau hubungi administrator Anda
  • Perbarui kredensial yang Anda konfigurasikan di Konfigurasikan kredensial Azure: rotasi ANTHROPIC_FOUNDRY_API_KEY, buat ANTHROPIC_FOUNDRY_AUTH_TOKEN yang baru, atau jalankan az login agar rantai kredensial Microsoft Entra default dapat masuk kembali
  • Jika kredensial masih berlaku, pastikan identitas tersebut memiliki akses ke sumber daya Foundry. Lihat Konfigurasi Azure RBAC

Sebelum v2.1.273, 401 atau 403 dari Microsoft Foundry menampilkan pesan generik Please run /login atau Failed to authenticate, yang tidak dapat memperbarui kredensial Azure.

Tidak dapat memuat kredensial AWS atau Google Cloud

Claude Code tidak dapat memperoleh kredensial yang dapat digunakan dari rantai penyedia kredensial AWS atau dari kredensial default aplikasi Google Anda di mesin tempat Claude Code berjalan, sehingga tidak ada permintaan yang mencapai penyedia cloud Anda. Claude Code menghapus kredensial yang di-cache dan mencoba ulang dua kali sebelum menampilkan pesan ini. Detail setelah · menyebutkan penyebab spesifiknya, seperti sesi SSO yang kedaluwarsa, kredensial default aplikasi yang tidak ada yang dilaporkan sebagai Could not load the default credentials, atau proses masuk yang dicabut yang dilaporkan sebagai invalid_grant:

API Error: Could not load AWS credentials · Could not load credentials from any providers. Check or refresh your AWS credentials and try again.
API Error: Could not load Google Cloud credentials · invalid_grant. Check or refresh your Google Cloud credentials and try again.

Dalam mode non-interaktif dengan -p dan di Agent SDK, kode kesalahan terstrukturnya adalah cloud_credential_error. Sebelum v2.1.267, pesan hanya menampilkan teks detail setelah API Error:, dan kode terstrukturnya adalah server_error atau unknown.

Yang harus dilakukan:

Resolusi kredensial rantai default AWS mengalami timeout

Rantai penyedia kredensial default AWS tidak menghasilkan kredensial dalam 60 detik, sehingga Claude Code menghentikan resolusi dan menggagalkan permintaan. Timeout ini adalah salah satu penyebab Tidak dapat memuat kredensial AWS atau Google Cloud. Kegagalan ini terjadi pada resolusi kredensial lokal: permintaan tidak pernah mencapai Amazon Bedrock, Claude Platform on AWS, atau endpoint Mantle. Claude Code menghapus cache kredensial dan mencoba ulang sebelum kesalahan ini muncul, sehingga saat Anda melihatnya, rantai tersebut telah macet pada beberapa percobaan berulang.

API Error: Could not load AWS credentials · AWS default-chain credential resolve timed out. Check or refresh your AWS credentials and try again.

Penyebab umumnya adalah perintah credential_process di profil AWS Anda yang menunggu input yang tidak dapat diterimanya, serta container atau VM yang layanan metadata instance-nya (IMDS) tidak pernah menjawab probe dari rantai tersebut.

Sebelum v2.1.267, pesannya berbunyi API Error: AWS default-chain credential resolve timed out. Sebelum v2.1.207, rantai yang macet membuat permintaan menunggu tanpa batas alih-alih gagal.

Yang harus dilakukan:

  • Jalankan aws sts get-caller-identity di shell yang sama dengan AWS_PROFILE yang sama. Jika perintah itu juga macet, perbaiki profilnya; perintah credential_process yang meminta input secara interaktif adalah penyebab umum.
  • Selesaikan langkah masuk sebelum memulai Claude Code, misalnya aws sso login --profile myprofile
  • Jika rantai Anda menjalankan proses masuk interaktif yang memang membutuhkan lebih dari 60 detik, seperti SSO dengan MFA melalui wrapper seperti aws-vault, naikkan batasnya dalam milidetik dengan CLAUDE_CODE_AWS_CHAIN_RESOLVE_TIMEOUT_MS

Verifikasi penyiapan Bedrock mengalami timeout saat menunggu AWS

Panggilan ke AWS selama verifikasi kredensial di wizard penyiapan Bedrock, seperti pencarian kredensial atau pemeriksaan identitas, tidak selesai dalam batas 60 detik. Wizard berhenti menunggu dan menggagalkan langkah verifikasi:

Timed out after 60s waiting for AWS. Check your network and proxy settings; if a credential helper needs longer to prompt you, raise CLAUDE_CODE_AWS_CHAIN_RESOLVE_TIMEOUT_MS.

Angka tersebut mencerminkan batas Anda: 60 detik secara default, atau nilai yang Anda tetapkan di CLAUDE_CODE_AWS_CHAIN_RESOLVE_TIMEOUT_MS.

Penyebab umumnya adalah jaringan atau proxy yang menahan permintaan ke AWS, termasuk pembaruan token SSO, serta credential helper yang masih menunggu input yang tidak dapat Anda lihat. Naikkan batas hanya jika helper tersebut memang membutuhkan waktu lebih lama.

Satu permintaan ke AWS yang macet juga dapat gagal karena timeout per permintaannya sendiri, yang menampilkan pesan lebih singkat pada langkah yang sama:

A request to AWS timed out. Check your network and proxy settings, then try again.

Ketika timeout yang sama terjadi pada langkah penyematan model, wizard menandai model sebagai unreachable alih-alih menampilkan salah satu pesan tersebut.

Yang harus dilakukan:

  • Jalankan aws sts get-caller-identity di shell yang sama. Jika perintah itu juga macet, kemacetan berada di luar Claude Code, yaitu di jaringan Anda, proxy Anda, atau credential helper di profil AWS Anda; perbaiki itu terlebih dahulu.
  • Selesaikan proses masuk interaktif apa pun sebelum membuka wizard, misalnya aws sso login --profile myprofile
  • Jika credential helper di profil AWS Anda memang membutuhkan lebih dari 60 detik untuk meminta input Anda, naikkan batasnya dalam milidetik dengan CLAUDE_CODE_AWS_CHAIN_RESOLVE_TIMEOUT_MS

Sesi cloud gateway kedaluwarsa

Anda masuk melalui Claude apps gateway, dan sesi gateway yang tersimpan di mesin ini telah kedaluwarsa dan tidak dapat diperbarui, atau gateway tidak lagi menerimanya, misalnya setelah JWT secret gateway diganti. Jika Anda melihat baris ini saat memulai claude secara interaktif, sesi telah dibuka dalam keadaan keluar dari gateway:

Cloud gateway session expired — run /login to reconnect.

Baris yang sama dapat muncul di tengah sesi ketika kredensial gateway kedaluwarsa dan Claude Code tidak dapat memperbaruinya.

Dalam eksekusi non-interaktif, sesi latar belakang atau sesi tanpa pengawasan lainnya, atau subperintah claude selain claude auth, Claude Code keluar dengan pesan ini sebagai gantinya ketika gateway tidak lagi menerima sesi tersebut:

Cloud gateway <url> no longer accepts this session. Start `claude` and sign in again with /login.

Yang harus dilakukan:

  • Jalankan /login di sesi tersebut dan selesaikan proses masuk melalui browser
  • Untuk peluncuran non-interaktif, mulai claude di lingkungan yang sama, jalankan /login, lalu jalankan ulang perintah Anda

Proses masuk mengalami timeout saat menunggu Anda melanjutkan

Selama proses masuk Claude apps gateway, gateway menyebutkan akun yang masuk, dan Claude Code meminta Anda mengonfirmasinya sebelum menyimpan kredensial. Anda membiarkan konfirmasi terbuka melewati masa berlaku proses masuk itu sendiri, dan gateway tidak menerbitkan refresh token yang dapat memperbaruinya, sehingga Claude Code tidak menyimpan apa pun saat Anda melanjutkan:

Sign-in timed out while waiting for you to continue. Try again.

Yang harus dilakukan:

  • Jalankan /login lagi dan konfirmasikan akun sebelum proses masuk kedaluwarsa

Gateway menolak permintaan

Anda masuk melalui Claude apps gateway, dan sebuah permintaan mengembalikan 403: gateway, atau upstream di belakangnya, menolaknya. Masuk kembali tidak mengubah penolakan, sehingga pesan tersebut mengarahkan Anda ke administrator gateway Anda:

Gateway refused the request · signing in again won't change this — check with your gateway administrator · API Error: 403 ...

Yang harus dilakukan:

  • Minta administrator gateway Anda untuk menelusuri permintaan tersebut. Bagian akhir API Error: memuat penolakan yang dikembalikan gateway
  • Untuk administrator: aturan kontrol akses pada gateway mengembalikan 403 yang dicatat oleh log audit beserta alasannya, dan penolakan otorisasi dari upstream diteruskan sesuai Pesan kesalahan upstream

Sebelum v2.1.273, 403 pada sesi gateway menampilkan pesan generik Please run /login atau Failed to authenticate, dan masuk kembali tidak menghilangkan penolakan tersebut.

Kesalahan jaringan dan koneksi

Sebagian besar kesalahan ini berarti permintaan jaringan dari Claude Code gagal mencapai tujuannya, atau sesuatu antara Claude Code dan API mengubah respons dalam perjalanannya kembali; jika entri juga memiliki penyebab lokal, seperti penulisan arsip yang gagal, isinya akan mengatakan demikian. Mereka biasanya berasal dari jaringan lokal Anda, proxy, atau firewall, atau dari kebijakan jaringan lingkungan cloud.

Unable to connect to API

Koneksi TCP ke API gagal atau tidak pernah selesai. Untuk kode kesalahan koneksi umum, nama pesan menunjukkan jenis kegagalan dan menyimpan kode dalam tanda kurung:

Unable to connect to API. Check your internet connection
Connection refused — a firewall or proxy may be blocking it (ConnectionRefused)
Can't reach the API server — check your internet or DNS (ENOTFOUND)
No internet route — check your connection or VPN (EHOSTUNREACH)
Couldn't connect through your proxy (ERR_PROXY_TUNNEL) — the proxy refused the tunnel: check its credentials and that it allows this host
Connection dropped (ECONNRESET)
Request timed out. Check your internet connection and proxy settings

Kode yang Claude Code tidak kenali muncul sebagai Unable to connect to API diikuti oleh kode dalam tanda kurung. Beberapa pesan ini dapat menampilkan lebih dari satu kode: Connection refused dapat menampilkan ConnectionRefused atau ECONNREFUSED, misalnya, dan Can't reach the API server dapat menampilkan ENOTFOUND atau FailedToOpenSocket.

Sebelum v2.1.227, setiap pesan berkode ini berbunyi Unable to connect to API diikuti oleh kode, misalnya Unable to connect to API (ECONNREFUSED).

Penyebab umum termasuk tidak ada akses internet, VPN yang memblokir api.anthropic.com, atau proxy perusahaan yang diperlukan yang tidak dikonfigurasi.

Yang harus dilakukan:

  • Konfirmasi Anda dapat menjangkau host API dari shell yang sama dengan menjalankan curl -I https://api.anthropic.com. Di Windows PowerShell gunakan curl.exe -I https://api.anthropic.com sehingga alias Invoke-WebRequest bawaan tidak digunakan.
  • Jika Anda berada di belakang proxy perusahaan, atur HTTPS_PROXY sebelum meluncurkan Claude Code dan lihat Konfigurasi jaringan
  • Jika Anda merutekan melalui gateway LLM atau relay, atur ANTHROPIC_BASE_URL ke alamatnya. Lihat Hubungkan Claude Code ke gateway LLM untuk pengaturan.
  • Pastikan firewall Anda memungkinkan host yang tercantum dalam Persyaratan akses jaringan
  • Kegagalan intermiten diulang secara otomatis; kegagalan persisten menunjukkan masalah jaringan lokal

Jika curl berhasil tetapi Claude Code masih gagal, penyebabnya biasanya sesuatu antara runtime dan jaringan daripada jaringan itu sendiri:

  • Periksa apakah ANTHROPIC_BASE_URL diatur dengan menjalankan echo $ANTHROPIC_BASE_URL, atau echo $env:ANTHROPIC_BASE_URL di PowerShell, dan cari di blok env dari file pengaturan Anda. Ketika diatur, Claude Code mengirim permintaan model ke alamat itu daripada api.anthropic.com, jadi nilai sisa yang menunjuk ke proxy lokal atau gateway yang tidak lagi berjalan menghasilkan Connection refused meskipun curl menjangkau API. Hapus dari profil shell atau pengaturan Anda dan mulai Claude Code dari terminal baru.
  • Di Linux dan WSL, periksa /etc/resolv.conf untuk nameserver yang tidak dapat dijangkau. WSL khususnya dapat mewarisi resolver yang rusak dari host.
  • Di macOS, klien VPN yang terputus atau dihapus dapat meninggalkan antarmuka terowongan atau aturan perutean. Periksa ifconfig untuk antarmuka utun yang basi dan hapus ekstensi jaringan VPN di Pengaturan Sistem.
  • Docker Desktop dan runtime kontainer serupa dapat mencegat lalu lintas keluar. Keluar dari mereka dan coba lagi untuk mengesampingkan ini.

Unable to connect to Anthropic services

Selama pengaturan pertama kali, Claude Code memeriksa bahwa dapat menjangkau api.anthropic.com dan platform.claude.com sebelum menampilkan langkah masuk. Ketika salah satu pemeriksaan gagal, Claude Code mencetak alasannya dan keluar.

Unable to connect to Anthropic services
Failed to connect to api.anthropic.com: ECONNREFUSED
Connection to api.anthropic.com timed out after 10 seconds
A proxy is configured via HTTPS_PROXY. Check that it allows connections to the host above.

Claude Code mengirim pemeriksaan melalui konfigurasi proxy yang sama dengan permintaan API dan memberikan setiap probe 10 detik. Ketika probe yang gagal melewati proxy, pesan menamai variabel lingkungan yang mengonfigurasinya, seperti HTTPS_PROXY. Sebelum v2.1.222, pemeriksaan menggunakan transport proxy yang berbeda tanpa batas waktu: di belakang URL proxy dengan skema https://, dapat macet pada Checking connectivity... tanpa batas dan kemudian gagal meskipun permintaan API melalui proxy yang sama berhasil.

Claude Code melewati pemeriksaan ini ketika file pengaturan terkelola, kebijakan MDM, atau pembantu kebijakan menetapkan forceLoginMethod ke "gateway", atau menetapkan forceLoginGatewayUrl tanpa forceLoginMethod. Dengan salah satu konfigurasi, Claude Code membuka langkah masuk di layar Cloud gateway daripada metode masuk Anthropic. Claude Code juga melewati pemeriksaan ketika sumber pengaturan terkelola di mesin ada tetapi tidak dapat dibaca, karena sumber itu mungkin menyimpan konfigurasi gateway. Sebelum v2.1.247, Claude Code menjalankan pemeriksaan di bawah konfigurasi ini juga, dan keluar dengan kesalahan ini ketika titik akhir Anthropic tidak dapat dijangkau.

Yang harus dilakukan:

  • Jika pesan menamai variabel proxy, periksa bahwa nilainya menunjuk ke proxy yang tepat dan minta tim jaringan Anda untuk memungkinkan koneksi HTTPS melaluinya ke host dalam pesan. Lihat Konfigurasi jaringan.
  • Kerjakan pemeriksaan dalam Unable to connect to API. Tes curl dan panduan firewall di sana berlaku untuk pemeriksaan ini juga.
  • Jika jaringan Anda terbuka dan kegagalan berlanjut, Claude Code mungkin tidak tersedia di negara Anda

Socket is closed

Socket is closed berarti koneksi yang membawa respons streaming ditutup sementara respons masih tiba. Penyebab paling umum adalah proxy perusahaan di Windows yang menjatuhkan terowongan yang sudah terbentuk di tengah respons.

Tergantung seberapa jauh respons telah berkembang, Claude Code mengulang permintaan, menyimpan apa yang Claude hasilkan, atau mengakhiri giliran. Lihat Pengulangan otomatis.

Sebelum v2.1.214, Claude Code tidak mengulang kegagalan ini, dan giliran berhenti dengan kesalahan yang berisi Socket is closed.

Yang harus dilakukan:

  • Jika Anda melihat kesalahan ini, perbarui ke v2.1.214 atau lebih baru dengan claude update, kemudian kirim pesan Anda lagi
  • Jika giliran terus gagal di belakang proxy yang sama setelah memperbarui, kerjakan Unable to connect to API dan periksa pengaturan proxy dalam Konfigurasi jaringan

API returned an empty or malformed response

Claude Code menampilkan kesalahan ini ketika pengulangan non-streaming dari permintaan streaming yang gagal mendapatkan status kesuksesan HTTP tetapi isi bukan pesan API Claude: biasanya halaman kesalahan HTML atau masuk, isi kosong, atau JSON dalam format lain. Proxy, gateway, atau halaman masuk jaringan yang menjawab di tempat API adalah sumber biasa. Claude Code tidak mengulang permintaan, dan giliran berakhir dengan kesalahan ini.

API returned an empty or malformed response (HTTP 200) — check for a proxy or gateway intercepting the request.

Setelah pembukaan itu, pesan melaporkan apa yang kembali dan permintaan mana yang gagal:

  • Klausa Response: dengan tipe konten, jenis isi, seperti body is an HTML page atau empty body, ukurannya dalam byte, dan apakah respons membawa id permintaan Anthropic. Ketika respons menamai server yang dapat dikenali, seperti nginx atau cloudflare, atau membawa header perantara, seperti cf-ray atau via, klausa mencantumkan yang itu juga.
  • Kalimat yang menamai id permintaan streaming yang gagal dan kegagalan yang memicu pengulangan. Ketika aliran telah dibuka sebelum kegagalan, ia juga melaporkan berapa banyak peristiwa aliran yang tiba dan, jika ada, berapa lama aliran telah diam ketika upaya gagal.

Sebelum v2.1.234, pesan berakhir setelah intercepting the request.

Sebelum v2.1.271, balasan yang membawa pesan API yang valid di bawah tipe konten non-JSON seperti text/plain juga mengakhiri giliran dengan kesalahan ini. Beberapa gateway LLM menggunakan tipe konten itu untuk balasan non-streaming.

Yang harus dilakukan:

  • Baca klausa Response: untuk melihat sistem mana yang menjawab. Isi HTML, tidak ada id permintaan Anthropic, atau server bernama seperti nginx atau cloudflare berarti sesuatu antara Claude Code dan API menjawab di tempatnya
  • Jika Anda merutekan melalui gateway LLM, uji rute dengan permintaan langsung dan perbaiki hop yang mengembalikan respons non-API
  • Di jaringan dengan halaman masuk, seperti Wi-Fi tamu, selesaikan masuk di browser, kemudian coba lagi
  • Jika hanya rute non-streaming melalui gateway Anda yang rusak, atur CLAUDE_CODE_DISABLE_NONSTREAMING_FALLBACK=1 untuk mematikan fallback ini, kecuali ketika titik akhir streaming itu sendiri mengembalikan 404, di mana Claude Code masih jatuh kembali

Streaming response ended before any complete data was received

Respons streaming dari penyedia model Anda selesai tanpa memberikan data yang dapat digunakan, jadi Claude Code mengirim ulang permintaan tanpa streaming untuk menyelesaikan giliran. Claude Code menampilkan peringatan sekali per sesi, hanya dalam sesi interaktif. Sebelum v2.1.239, Claude Code diam-diam mengulang tanpa streaming.

Streaming response ended before any complete data was received. Retrying without streaming. If this keeps happening, check any proxy or gateway between Claude Code and your model provider.

Claude Code mengirim setiap permintaan yang terpengaruh dua kali: upaya streaming kosong dan pengulangan. Penyebab biasa adalah proxy atau gateway yang mengonsumsi atau mengubah isi respons streaming dalam perjalanannya kembali.

Yang harus dilakukan:

Bedrock streaming response has an unexpected content-type

Gateway atau proxy antara Claude Code dan Amazon Bedrock mengubah isi respons streaming atau header Content-Type nya. Amazon Bedrock melakukan streaming respons sebagai application/vnd.amazon.eventstream. Daripada mendekode isi yang tidak dapat dibaca, Claude Code menolak respons streaming yang berhasil yang melaporkan tipe konten yang berbeda. Claude Code tidak mengulang permintaan.

Bedrock streaming response has content-type "text/event-stream"; expected "application/vnd.amazon.eventstream". A gateway or proxy between Claude Code and Bedrock is likely transforming the response body — Bedrock's binary event-stream format must be passed through unmodified. Set CLAUDE_CODE_DISABLE_BEDROCK_CONTENT_TYPE_GUARD=1 to suppress this check while the gateway is being fixed.

Sebelum v2.1.208, kesalahan konfigurasi yang sama muncul sebagai API Error: Truncated event message received setelah seluruh respons telah di-buffer.

Yang harus dilakukan:

  • Konfigurasikan gateway untuk melewatkan isi respons InvokeModelWithResponseStream dan header Content-Type nya tanpa dimodifikasi. Perantara yang memancarkan ulang aliran sebagai peristiwa yang dikirim server adalah penyebab umum.
  • Menetapkan CLAUDE_CODE_DISABLE_BEDROCK_CONTENT_TYPE_GUARD=1 menyembunyikan kesalahan ini, tetapi Claude Code tidak mendekode isi biner di bawah header yang ditulis ulang, jadi permintaan itu jatuh kembali ke jalur non-streaming yang lebih lambat. Lihat Kesalahan streaming di belakang gateway atau proxy.

SSL certificate errors

Proxy atau perangkat keamanan di jaringan Anda mencegat lalu lintas TLS dengan sertifikat mereka sendiri, dan Claude Code tidak mempercayainya.

Unable to connect to API: SSL certificate verification failed (UNABLE_TO_GET_ISSUER_CERT_LOCALLY). The certificate comes from an authority Claude Code doesn't trust, usually a TLS-inspecting corporate proxy or a gateway signed by a private CA: set NODE_EXTRA_CA_CERTS to that CA bundle, or add it to the system certificate store · see https://code.claude.com/docs/en/network-config
Unable to connect to API: Self-signed certificate detected (SELF_SIGNED_CERT_IN_CHAIN). The certificate comes from an authority Claude Code doesn't trust, usually a TLS-inspecting corporate proxy or a gateway signed by a private CA: set NODE_EXTRA_CA_CERTS to that CA bundle, or add it to the system certificate store · see https://code.claude.com/docs/en/network-config

Sebelum v2.1.273, kedua pesan berakhir di Check your proxy or corporate SSL certificates, tanpa kode OpenSSL atau petunjuk NODE_EXTRA_CA_CERTS.

Mulai dari v2.1.199, kegagalan validasi sertifikat tidak diulang, jadi kesalahan ini muncul pada upaya pertama daripada setelah anggaran pengulangan penuh. Versi sebelumnya menghabiskan beberapa menit mengulang sebelum menampilkannya. Kondisi TLS sementara, seperti batas waktu jabat tangan, masih mengulang.

Selama /login dan pemeriksaan konektivitas startup, kegagalan yang sama menghasilkan pesan yang berbeda:

SSL certificate error (UNABLE_TO_GET_ISSUER_CERT_LOCALLY). If you are behind a corporate proxy or TLS-intercepting firewall, set NODE_EXTRA_CA_CERTS to your CA bundle path, or ask IT to allowlist *.anthropic.com. Run `claude doctor` for details.

Di Amazon Bedrock, permintaan yang Claude Code sendiri kirim ke AWS, seperti panggilan kredensial peran STS dan SSO, penemuan model, dan pemeriksaan wizard pengaturan, bergantung pada konfigurasi sertifikat yang sama. Lihat Kesalahan sertifikat di belakang proxy yang memeriksa TLS.

Yang harus dilakukan:

  • Ekspor bundel CA organisasi Anda dan arahkan Claude Code ke sana dengan NODE_EXTRA_CA_CERTS=/path/to/ca-bundle.pem
  • Lihat Konfigurasi jaringan untuk instruksi pengaturan lengkap
  • Jangan atur NODE_TLS_REJECT_UNAUTHORIZED=0, yang menonaktifkan validasi sertifikat sepenuhnya

Host not allowed in a cloud session

Permintaan HTTP keluar dari sesi cloud atau rutinitas diblokir oleh kebijakan jaringan lingkungan.

HTTP 403
x-deny-reason: host_not_allowed

Anda juga dapat melihat sertifikat TLS yang tidak cocok dengan sertifikat asli tujuan. Sesi cloud merutekan lalu lintas keluar melalui proxy yang memberlakukan kebijakan jaringan, jadi sertifikat yang tidak cocok berarti proxy mengakhiri koneksi, bukan tujuan.

Ini bukan masalah jaringan sisi klien. Sesi cloud dan rutinitas berjalan di dalam VM yang di-sandbox yang lalu lintas keluarnya melalui jaringan sesi disaring ke daftar izin lingkungan cloud; operasi GitHub dan lalu lintas konektor MCP menggunakan saluran terpisah, itulah mengapa mereka dapat terus bekerja sementara host lain diblokir. Lingkungan Default menggunakan akses Trusted, yang memungkinkan daftar izin default dari registri paket, API penyedia cloud, registri kontainer, dan domain pengembangan umum dan memblokir domain lain di jalur itu.

Yang harus dilakukan:

Langkah-langkah ini mengubah salah satu lingkungan Anda sendiri. Lingkungan bersama organisasi terbuka hanya-baca di pemilih, jadi minta Pemilik untuk mengubah akses jaringannya dari halaman Cloud environments dalam pengaturan admin.

  • Buka lingkungan Anda untuk pengeditan, baik dari formulir rutinitas atau dari pemilih lingkungan tempat Anda memulai sesi cloud.
  • Dalam dialog Edit cloud environment, ubah Network access dari Trusted ke Custom, kemudian tambahkan domain yang diblokir ke Allowed domains. Masukkan satu domain per baris. Periksa Also include default list of common package managers untuk menyimpan daftar izin default bersama domain kustom Anda. Pilih Full sebagai gantinya jika Anda menginginkan akses tanpa batas.
  • Klik Save changes. Jalankan berikutnya menggunakan daftar izin yang diperbarui. Untuk sesi cloud yang sudah terbuka, lihat kapan perubahan akses jaringan mencapai sesi yang ada.

Lihat Akses jaringan untuk tingkat akses dan daftar izin default. Sesi CLI lokal tidak terpengaruh oleh kebijakan ini.

The proxy refused the connection

Anda melihat pesan ini ketika Claude membaca artefak melalui proxy yang Anda atur dalam HTTPS_PROXY atau variabel proxy terkait. Konten artefak berasal dari *.frame.claudeusercontent.com, jadi Claude Code terlebih dahulu mengirim proxy permintaan CONNECT yang memintanya membuka terowongan ke host itu. Ketika proxy menolak, tidak ada yang mencapai host, dan pesan membawa status HTTP proxy:

artifact content fetch failed (proxy refused the connection: HTTP 407)
artifact content fetch failed (proxy refused the connection: HTTP 403)
the proxy refused the connection to the artifact's content host (HTTP 502)

Status adalah jawaban proxy terhadap CONNECT. Host tidak pernah menjawab, jadi setiap status menunjuk ke perbaikan yang berbeda:

  • HTTP 407: proxy memerlukan kredensial yang tidak didapatkan. Masukkan mereka dalam URL proxy, seperti yang ditunjukkan Autentikasi Dasar.
  • HTTP 403: proxy menolak untuk menggali terowongan ke *.frame.claudeusercontent.com. Minta siapa pun yang menjalankan proxy untuk memungkinkan host itu, yang Persyaratan akses jaringan cantumkan.
  • Status apa pun yang lain, seperti HTTP 502: proxy tidak membuka terowongan karena alasannya sendiri, seperti gagal menjangkau host. Cari status dalam log proxy.
  • unreadable reply sebagai pengganti status: apa pun yang ada di alamat proxy tidak menjawab dengan baris status HTTP. Periksa bahwa alamatnya adalah proxy HTTP.

Yang harus dilakukan:

  • Periksa alamat dan kredensial dalam variabel proxy, seperti yang dijelaskan Konfigurasi Proxy, kemudian jalankan curl -x http://proxy.example.com:8080 -I https://api.anthropic.com dari shell tempat Anda memulai Claude Code, menggunakan URL proxy Anda sendiri. Di Windows PowerShell, jalankan curl.exe. Jika probe ini gagal dengan cara yang sama, perbaiki pengaturan proxy terlebih dahulu. Jika berhasil, penolakan khusus untuk host artefak.
  • Jika jaringan Anda membiarkan Claude Code menjangkau host artefak secara langsung, tambahkan .frame.claudeusercontent.com ke NO_PROXY. Simpan entri itu sempit: entri .claudeusercontent.com yang lebih luas juga melewati proxy untuk bridge.claudeusercontent.com, yang organisasi dengan IP allowlisting perlu menyimpan di proxy.

Sebelum v2.1.238, Claude Code melaporkan terowongan yang ditolak sebagai kesalahan jaringan generik.

The cloud environments service returned an empty or unexpected response

Claude Code meminta daftar cloud environments Anda di beberapa titik, seperti ketika Anda membuat sesi cloud dari CLI atau menjalankan /remote-env. Ketika tidak dapat membaca jawaban server, menampilkan salah satu pesan ini:

The cloud environments service returned an empty response (HTTP 200 with no body). This is usually temporary — try again in a moment.
The cloud environments service returned a response in an unexpected format (HTTP 200 with a non-JSON body). This is usually temporary — try again in a moment.
The cloud environments service returned a response in an unexpected format (HTTP 200 without a usable environments list). This is usually temporary — try again in a moment.

Server menerima permintaan tetapi menjawab dengan isi yang bukan daftar lingkungan: kosong, bukan JSON, atau JSON tanpa daftar. Ini biasanya menyertai gangguan sisi layanan dan menghapus sendiri. Tergantung pada permukaan yang meminta daftar, Claude Code dapat menambahkan awalan, seperti couldn't list environments: dalam dialog /remote-env.

Yang harus dilakukan:

  • Coba lagi tindakan. Claude Code meminta daftar lagi setiap kali
  • Jika pesan terus muncul, periksa status.claude.com untuk insiden aktif

Sebelum v2.1.236, Claude Code menampilkan TypeError JavaScript mentah daripada pesan-pesan ini.

Couldn't reconnect to your Remote Control session

Couldn't reconnect to your Remote Control session. Retry, or start a fresh session without --resume.

Melanjutkan dengan claude --resume atau claude --continue menghubungkan kembali ke sesi Remote Control yang dicatat dalam percakapan itu. Pesan ini berarti koneksi kembali gagal karena alasan yang mungkin sementara, seperti gangguan jaringan atau kesalahan server, jadi Claude Code tidak dapat mengkonfirmasi apakah sesi jarak jauh masih ada. Sesi lokal Anda terus berjalan tanpa Remote Control.

Yang harus dilakukan:

  • Jalankan /remote-control untuk mencoba lagi koneksi
  • Mulai sesi baru dengan claude --remote-control untuk membuat sesi Remote Control baru
  • Untuk pesan startup Remote Control lainnya, lihat Troubleshoot Remote Control

Jika server melaporkan sebaliknya bahwa sesi sebelumnya hilang, Anda tidak melihat pesan ini. Claude Code memulai sesi baru di tempatnya atau menampilkan Previous session is unavailable — run /remote-control to start a new one.

Sessions ended while this machine was offline

Claude Code menampilkan pesan ini di terminal yang menjalankan claude remote-control setelah mesin Anda offline cukup lama sehingga server membersihkan lingkungan Remote Control yang mesin Anda layani. Sesi di lingkungan itu berakhir, dan Anda tidak dapat melanjutkannya. Hitungannya adalah jumlah sesi yang berakhir.

2 sessions ended while this machine was offline — the environment was cleaned up on the server and can't be resumed.

Yang harus dilakukan:

  • Ketika Claude Code mencantumkan worktrees yang disimpan di bawah pesan ini, ambil pekerjaan yang tidak dikomit dari mereka
  • Jalankan claude remote-control untuk memulai lingkungan segar

Couldn't share the transcript

Setelah Anda setuju untuk berbagi transkrip sesi Anda dari prompt survei, seperti survei kualitas sesi, Claude Code mengunggahnya ke Anthropic, atau menyimpan arsip lokal sebagai gantinya di penyedia pihak ketiga, di sesi Claude apps gateway, dan ketika tidak ada kredensial Anthropic yang tersedia. Pesan ini berarti berbagi tidak selesai.

Couldn't share the transcript.

Unggahan harus sesuai dengan batas 8 MiB. Dalam sesi yang panjang, Claude Code secara progresif menjatuhkan bagian dari berbagi, pengaturan model permintaan terakhir terlebih dahulu, kemudian percakapan terstruktur dan transkrip subagen, dan menampilkan pesan ini hanya ketika tidak ada versi yang dikurangi yang dapat dikirim atau kesalahan jaringan atau server menghentikan unggahan. Ketika Claude Code menyimpan arsip lokal sebagai gantinya, pesan berarti tidak dapat menulis arsip.

Yang harus dilakukan:

  • Jalankan /feedback untuk mengirim transkrip dengan deskripsi apa yang terjadi. Lihat Report an error jika /feedback tidak tersedia di lingkungan Anda
  • Jika permintaan lain juga gagal, periksa koneksi jaringan Anda dan lihat Unable to connect to API

Couldn't send feedback

Anda mengirim laporan dari dialog /feedback, /bug, atau /share dan unggahan ke Anthropic gagal. Dialog menyimpan teks Anda sehingga Anda dapat mencoba lagi.

Couldn't send feedback (couldn't reach the service). If it keeps failing, you can file at https://github.com/anthropics/claude-code/issues instead.

Teks setelah awalan menamai apa yang gagal:

  • : not signed in. Run /login, then retry.: dialog mengunggah hanya ketika Claude Code menemukan kredensial Anthropic saat dibuka, dan tidak ada yang dapat digunakan pada saat Anda mengirim. Misalnya, Anda keluar di mesin ini sementara itu, atau login Anda tidak lagi dapat disegarkan.
  • Tanda kurung: (server returned <status>) adalah kode respons layanan; (request timed out) dan (couldn't reach the service) adalah kegagalan jaringan. Ketika Claude Code tidak dapat menamai alasan, tanda kurung tidak ada.

Dalam antrian draf umpan balik, kegagalan yang sama berakhir dengan The draft is still queued. Try again later. sebagai gantinya, dan draf tetap dalam antrian untuk upaya lain.

Yang harus dilakukan:

Sebelum v2.1.281, setiap pengiriman gagal dengan pesan ini sekali Remote Control Stop atau pesan lintas-sesi mendesak telah tiba saat dialog terbuka. Di versi tersebut, tutup dialog, buka kembali, dan kirim lagi.

Kesalahan permintaan

Kesalahan ini berkaitan dengan konten permintaan Anda. Sebagian besar kembali dari API setelah menolak permintaan; beberapa diproduksi secara lokal oleh Claude Code sebelum permintaan dikirim.

Prompt terlalu panjang

Percakapan ditambah file yang dilampirkan melebihi jendela konteks model.

Prompt is too long

Dalam sesi interaktif, Claude Code menampilkan kesalahan ini sebagai:

Context limit reached · /compact or /clear to continue

Baris hanya menyebutkan /clear ketika DISABLE_COMPACT diatur. Bentuk kesalahan yang lebih panjang, seperti bentuk kegagalan pemadatan di bawah, tetap mempertahankan pesan Prompt is too long ·. Dalam output -p dan transkrip, teksnya tetap Prompt is too long.

Ketika Anda mematikan auto-compact di pengaturan pengguna, baris juga mengatakan demikian:

Context limit reached · /compact or /clear to continue · auto-compact is off · /config to turn it on

Tombol Auto-compact di /config menulis autoCompactEnabled ke pengaturan pengguna. Petunjuk muncul hanya ketika perubahan /config akan berlaku. Misalnya, tidak muncul ketika DISABLE_AUTO_COMPACT atau DISABLE_COMPACT mematikan auto-compact. Juga tidak muncul ketika cakupan prioritas lebih tinggi, seperti pengaturan proyek atau terkelola, menetapkan autoCompactEnabled ke false. Sebelum v2.1.235, baris tidak membawa petunjuk auto-compact.

Amazon Bedrock melaporkan kondisi ini sebagai Input is too long for requested model., yang Claude Code tangani dengan cara yang sama. Sebelum v2.1.217, Claude Code tidak mengenali pesan Bedrock, jadi auto-compact tidak pernah dipicu dan /compact gagal dengan kesalahan yang sama.

Gateway Claude apps melaporkan kondisi ini sebagai capability_rejected: prompt_too_long ketika upstream cloud menolak permintaan dalam bentuk kesalahan penyedia sendiri. Claude Code memperlakukan token yang sama dengan Prompt is too long. Sebelum v2.1.228, Claude Code tidak mengenali token, jadi auto-compact tidak dipicu.

Ketika pemadatan otomatis berjalan pada giliran ini dan gagal pada kesalahan yang mendasar, seperti model yang tidak tersedia atau kegagalan autentikasi, pesan menyebutkan kesalahan itu setelah pemisah:

Prompt is too long · automatic compaction failed: <the underlying error>

Selesaikan kesalahan yang dinamai terlebih dahulu; /compact gagal pada kesalahan yang sama sampai Anda melakukannya. Sebelum v2.1.229, pemadatan otomatis yang gagal menampilkan Prompt is too long tanpa penyebabnya.

Ketika pemadatan otomatis berjalan pada kesalahan ini, biasanya merangkum pertukaran tertua Anda dan menyimpan yang terbaru. Sebagai upaya terakhir, Claude Code merangkum secara berbeda:

  • Ketika tidak dapat merangkum seluruh pertukaran, Claude Code menyimpan prompt terbaru Anda kata demi kata dan merangkum semuanya sebelumnya.
  • Dalam hal itu, ketika percakapan tidak berakhir dengan prompt Anda, Claude Code merangkum seluruh percakapan sebagai gantinya.

Claude Code melewati pemulihan ini ketika konten yang akan dibawanya tidak menyimpan balasan model dan kurang dari sekitar 1.000 token teks Anda sendiri, seperti pengiriman ulang singkat setelah tempel berukuran besar. Jalankan /clear untuk memulai segar. Sebelum v2.1.269, pemadatan gagal setiap kali tidak dapat merangkum seluruh pertukaran, jadi sesi dalam keadaan itu mengalami kesalahan ini lagi pada setiap giliran.

Percakapan pertukaran tunggal tidak memiliki giliran sebelumnya untuk dirangkum. Ketika pemadatan otomatis akan berjalan pada satu, Claude Code melewati upaya dan menjelaskan apa yang mengisi permintaan sebagai gantinya. Ketika API tidak melaporkan jumlah token dalam kesalahannya, pesan berbunyi:

Prompt is too long · this conversation is a single exchange and cannot be compacted — the request size comes mostly from system prompt, tool definitions, or attachments.

Ketika API melaporkan jumlah token dalam kesalahannya, Claude Code membandingkannya dengan estimasi sendiri tentang ukuran percakapan untuk mengetahui mana yang paling banyak dari permintaan: konten percakapan sendiri, atau prompt sistem, definisi alat, dan konten lampiran yang Claude Code kirim dengannya. Ketika konten percakapan sendiri paling banyak dari permintaan, pesan berbunyi:

Prompt is too long · the request is ~<request tokens> tokens (limit <limit>) and this conversation's own content is most of it. A single-exchange conversation cannot be compacted; start with less content (smaller files or pasted text).

Ketika sebagian besar permintaan berada di luar percakapan, pesan berbunyi:

Prompt is too long · the request is ~<request tokens> tokens (limit <limit>) but this conversation is only ~<conversation tokens> tokens — the rest is system prompt, tool definitions, and attachment content. A single-exchange conversation cannot be compacted; reduce attached files/tools or start with less context.

Sebelum v2.1.162, Claude Code mencoba pemadatan bagaimanapun dan menampilkan Prompt is too long biasa ketika gagal.

Yang harus dilakukan:

  • Jalankan /compact untuk merangkum giliran sebelumnya dan membebaskan ruang, atau /clear untuk memulai segar. Jika /compact menjawab Not enough messages to compact., percakapan adalah pertukaran tunggal tanpa apa pun sebelumnya untuk dirangkum, jadi ruang diambil oleh satu prompt itu dan apa yang Claude Code kirim dengan setiap permintaan: jalankan /clear dan kirim ulang dengan teks tempel lebih sedikit atau lampiran lebih kecil, atau kurangi definisi alat dan file memori menggunakan langkah-langkah di bawah
  • Jalankan /context untuk melihat rincian apa yang mengonsumsi jendela: prompt sistem, alat, file memori, dan pesan
  • Nonaktifkan server MCP yang tidak Anda gunakan dengan /mcp disable <name> untuk menghapus definisi alat mereka dari konteks
  • Pangkas file memori CLAUDE.md besar, atau pindahkan instruksi ke aturan bersifat jalur yang dimuat hanya ketika relevan
  • Auto-compact aktif secara default dan biasanya mencegah kesalahan ini. Jika Anda mematikannya di /config atau dengan DISABLE_AUTO_COMPACT, aktifkan kembali. Jika Anda tetap mematikannya, jalankan /compact sendiri sebelum jendela penuh.

Lihat Jelajahi jendela konteks untuk tampilan interaktif tentang bagaimana konteks terisi.

Konteks melebihi batas token

/context menampilkan peringatan ini di bagian atas outputnya ketika percakapan telah melampaui jendela konteks model. Permintaan gagal dengan Prompt is too long sampai Anda membebaskan ruang. Sesi interaktif menampilkan kesalahan itu sebagai baris Context limit reached.

Context exceeds the 200k-token limit by 94k tokens — run /compact or /clear to continue.

Ketika batas yang Anda lampaui adalah jendela pemadatan, seperti batas 200K pada model konteks 1M, peringatan berbunyi berbeda. Jendela pemadatan dapat duduk di bawah jendela konteks model, jadi permintaan melewatinya masih dapat berhasil.

Context is 94k tokens past the 200k-token compaction window — run /compact to reduce usage.

Kedua bentuk menyebutkan /clear bukan /compact ketika Anda telah menetapkan DISABLE_COMPACT.

Yang harus dilakukan:

  • Dalam percakapan multi-giliran, jalankan /compact untuk merangkum giliran sebelumnya dan membebaskan ruang. Untuk memulai segar sebagai gantinya, jalankan /clear
  • Untuk cara lebih banyak mengurangi penggunaan, lihat Prompt terlalu panjang

Sebelum v2.1.216, /context menampilkan penggunaan di atas 100% tanpa baris peringatan yang menjelaskan apa artinya atau cara pulih.

Permintaan terlalu besar

Badan permintaan mentah melebihi batas 32MB API sebelum tokenisasi, biasanya karena konten tempel besar, hasil alat, atau lampiran. Batas ini terpisah dari jendela konteks.

Request too large (max 32MB). Accumulated images and attachments in the conversation pushed the request over the limit. Run /compact, or double press esc to go back and remove attachments.

Ketika permintaan langsung ke Claude API dan API sendiri menolaknya, Claude Code mengukur percakapan dan merumuskan pesan berdasarkan apakah pemulihan dapat bekerja. Melalui proxy, gateway, atau penyedia cloud Anda mendapatkan pesan umum. Bentuk yang diukur:

  • Request too large (max 32MB; 20.1MB of about 33.4MB is images or documents).: gambar atau dokumen mendorong permintaan melampaui batas. Claude Code mencoba ulang dengan mereka dihapus.
  • Request too large for the API's 32MB request limit: pesan saja sudah melampaui batas, jadi pesan mengatakan compacting cannot make it fit dan Claude Code tidak mencoba ulang. Dalam mode non-interaktif, pesan memberi tahu Anda untuk mengurangi input atau memulai sesi baru sebagai gantinya.

Sebelum v2.1.212, percakapan dengan cukup banyak gambar terakumulasi gagal pada setiap giliran dengan Request too large (max 32MB). Double press esc to go back and try with a smaller file. Sebelum v2.1.229, Claude Code menampilkan saran lampiran untuk setiap penolakan, bahkan ketika pemadatan tidak dapat membantu.

Yang harus dilakukan:

  • Jika pesan mengatakan compacting cannot make it fit, tekan Esc dua kali untuk mundur melampaui giliran yang menambahkan konten besar, atau jalankan /clear untuk memulai segar
  • Jika tidak, jalankan /compact, yang menghapus gambar dan lampiran terakumulasi
  • Referensikan file besar berdasarkan jalur bukan menempel konten mereka, jadi Claude dapat membacanya dalam potongan
  • Untuk gambar, lihat Gambar terlalu besar di bawah

Gambar terlalu besar

Gambar yang ditempel atau dilampirkan melebihi batas ukuran atau dimensi API.

Image was too large. Double press esc to go back and try again with a smaller image.
API Error: 400 ... image dimensions exceed max allowed size

Claude Code mengganti gambar yang tidak dapat diproses dengan placeholder teks dan mencoba ulang, jadi pesan berikutnya berhasil. Pada versi sebelum 2.1.142, gambar yang ditempel dapat tetap berada dalam percakapan dan mengulangi kesalahan yang sama pada setiap pesan berikutnya. Untuk pulih pada versi tersebut, tekan Esc dua kali dan mundur melampaui giliran tempat gambar ditambahkan.

Yang harus dilakukan:

  • Ubah ukuran gambar sebelum menempel. API menerima gambar hingga 8000 piksel di tepi terpanjang untuk satu gambar, atau 2000 piksel ketika banyak gambar berada dalam konteks.
  • Ambil tangkapan layar lebih ketat dari wilayah yang relevan bukan layar penuh

Tidak dapat mengubah ukuran gambar

Claude Code tidak dapat memperkecil gambar yang dilampirkan sebelum mengirimnya ke API.

Unable to resize image — image processing is unavailable and dimensions could not be read from the file header. Please convert the image to PNG, JPEG, GIF, or WebP.
Unable to resize image — dimensions exceed the 2000x2000px limit and image processing failed. Please resize the image to reduce its pixel dimensions.
Unable to resize image (… raw, … base64). The image exceeds the … API limit and compression failed. Please resize the image manually or use a smaller image.
Unable to resize image — could not verify image dimensions are within the 2000x2000px API limit.
Unable to resize image — it is a CMYK JPEG, which Claude Code cannot decode, and at …px it is over the 2000x2000px limit, so it cannot be sent. Re-save it as an RGB PNG or JPEG and try again.
Unable to resize image — it is an animated WebP whose first frame Claude Code cannot decode, and at …px it is over the 2000x2000px limit, so it cannot be sent. Save its first frame as a PNG or JPEG and try again.
Unable to resize image — its pixels could not be decoded (the file may be damaged, or use an encoding Claude Code cannot read), and it is over the … API limit (… raw, … base64), so it cannot be sent. Re-save it as a PNG or JPEG and try again.

Claude Code biasanya mengubah ukuran gambar besar secara otomatis. Kesalahan ini berarti gambar tidak dapat didekode atau diubah ukurannya agar sesuai dengan batas API.

Yang harus dilakukan:

  • Jika pesan meminta Anda mengonversi gambar, konversikan ke PNG, JPEG, GIF, atau WebP dan lampirkan lagi. Claude Code dapat memverifikasi dimensi untuk format ini dari header file, tanpa mendekode gambar.
  • Jika pesan melaporkan batas dimensi atau ukuran, ubah ukuran atau kompres ulang gambar di bawah batas itu sebelum melampirkan.
  • Jika pesan menyebutkan penyebab, seperti JPEG CMYK, WebP animasi, atau file yang mungkin rusak, simpan ulang gambar dalam format yang pesan sarankan dan lampirkan lagi.

Kesalahan PDF

PDF yang Anda lampirkan tidak dapat diproses. Pesan ditampilkan di sini dalam bentuk non-interaktif mereka; dalam sesi interaktif mereka malah meminta Anda untuk menekan esc dua kali dan coba lagi.

PDF too large (max 100 pages, 20MB). Try reading the file a different way (e.g., extract text with pdftotext).
PDF is password protected. Try using a CLI tool to extract or convert the PDF.
The PDF file was not valid. Try converting it to text first (e.g., pdftotext).

Yang harus dilakukan:

  • Untuk PDF berukuran besar, minta Claude membaca rentang halaman dengan alat Read bukan melampirkan seluruh file, atau ekstrak teks dengan alat seperti pdftotext dan referensikan file output berdasarkan jalur
  • Untuk PDF yang dilindungi atau tidak valid, hapus kata sandi atau ekspor ulang file dari aplikasi sumbernya, lalu coba lagi

Ketika Claude membaca rentang halaman dari PDF dengan alat Read, pembacaan dapat gagal dengan pesan berbeda:

pdftoppm is not installed. Install poppler-utils (e.g. `brew install poppler` or `apt-get install poppler-utils`) to enable PDF page rendering.

Pembacaan rentang halaman merender halaman dengan pdftoppm. Instal poppler-utils dengan perintah yang pesan berikan, atau pada platform lain bangun poppler yang menempatkan pdftoppm di PATH Anda. Lihat Perilaku alat Read untuk PDF mana yang dibaca berdasarkan rentang halaman.

Input tambahan tidak diizinkan

Proxy atau gateway LLM antara Claude Code dan API menghapus header permintaan anthropic-beta, jadi API menolak bidang yang bergantung padanya.

API Error: 400 ... Extra inputs are not permitted ... context_management

Claude Code mengirim bidang khusus beta seperti context_management dan effort bersama header anthropic-beta yang mengaktifkannya. Ketika gateway meneruskan badan tetapi menghapus header, API melihat bidang yang tidak dikenalinya.

Yang harus dilakukan:

Skema input alat tidak valid

Alat dalam permintaan mendeklarasikan input_schema yang gagal validasi JSON Schema API, jadi API menolak seluruh permintaan. Angka setelah tools. adalah posisi alat yang gagal dalam daftar alat permintaan, bukan nama yang dapat Anda cari.

API Error: 400 ... tools.N.custom.input_schema: JSON schema is invalid
API Error: 400 ... tools.N.custom.input_schema.properties: Property keys should match pattern '^[a-zA-Z0-9_.-]{1,64}$'

Bentuk pertama berarti skema bukan JSON Schema draft 2020-12 yang valid. Bentuk kedua berarti nama properti tingkat atas tidak cocok dengan pola yang pesan kutip.

Claude Code mengecualikan alat MCP yang skema input-nya akan gagal validasi ini ketika memuat alat server, jadi permintaan biasanya tidak pernah menyertakan satu.

Pada penerapan di mana pengambilan flag dimatikan, atau pada mesin yang flag-nya tidak pernah tiba, Claude Code mencatat dalam log server alat mana yang akan ditolak tetapi mengirimnya bagaimanapun, jadi kesalahan ini masih dapat terjadi.

Kesalahan juga dapat terjadi untuk alat yang skemanya mendeklarasikan dialek JSON Schema selain draft 2020-12 di $schema. Claude Code tidak memeriksa skema tersebut terhadap meta-skema JSON Schema, meskipun pemeriksaan nama properti tingkat atas masih berlaku.

Sebelum v2.1.216, tidak ada penerapan yang menjalankan pemeriksaan pengecualian.

Yang harus dilakukan:

  • Jika versi Claude Code Anda lebih awal dari v2.1.216, jalankan claude update.
  • Hapus atau nonaktifkan server MCP yang mendeklarasikan skema tidak valid. Kesalahan hanya menyebutkan alat berdasarkan posisi. Pada v2.1.216 atau lebih baru, periksa log setiap server untuk baris yang menyebutkan alat yang skema input-nya akan ditolak. Jika tidak ada log yang menyebutkan satu, nonaktifkan server satu per satu.
  • Jika Anda memelihara server, perbaiki input_schema alat. Skema harus berupa JSON Schema yang valid, dan nama properti tingkat atas harus panjang 1 hingga 64 karakter dan hanya menggunakan huruf ASCII dan angka, _, ., dan -. Lihat Alat dengan skema input tidak valid.

tool\_use.name lebih dari 200 karakter

Panggilan alat dalam riwayat percakapan membawa nama yang lebih panjang dari 200 karakter yang API terima dalam permintaan:

API Error: 400 ... tool_use.name: String should have at most 200 characters

Claude Code memotong nama tersebut menjadi 200 karakter ketika respons tiba dan ketika memuat percakapan yang disimpan, jadi panggilan gagal dengan kesalahan alat biasa No such tool available dan percakapan berlanjut tanpa kesalahan API ini.

Yang harus dilakukan:

  • Jalankan claude update, lalu lanjutkan percakapan. Versi yang diperbarui memperbaiki nama yang terlalu panjang ketika memuat transkrip, jadi percakapan yang terjebak bekerja lagi.

Sebelum v2.1.281, nama yang terlalu panjang tetap berada dalam riwayat dan API menolak setiap permintaan yang mengirim ulang percakapan, termasuk /compact dan --resume, jadi kesalahan ini berulang dan percakapan terjebak.

Ada masalah dengan model yang dipilih

Nama model yang dikonfigurasi tidak dikenali atau akun Anda tidak memiliki akses ke model tersebut. Mulai dari v2.1.160 petunjuk trailing, ditampilkan di sini dalam bentuk interaktifnya, bervariasi menurut permukaan.

There's an issue with the selected model (claude-...). It may not exist or you may not have access to it. Run /model to pick a different model.

Yang harus dilakukan:

  • CLI Interaktif: jalankan /model untuk memilih dari model yang tersedia untuk akun Anda.
  • Mode non-interaktif (-p): teruskan --model dengan alias atau ID yang valid, atau atur ANTHROPIC_MODEL. Teks kesalahan menampilkan Run --model di permukaan ini.
  • Agent SDK: teks kesalahan menghilangkan petunjuk karena model diatur secara terprogram. Atur model pada Options di TypeScript atau ClaudeAgentOptions(model=...) di Python, dan tangani kesalahan terstruktur model_not_found untuk menampilkan pemilih ulang atau model Anda sendiri.
  • Gunakan alias seperti sonnet atau opus bukan ID versi lengkap. Alias menyelesaikan ke default yang dipertahankan sehingga tidak menjadi usang. Lihat Konfigurasi model.
  • Jika model yang salah terus kembali di CLI, ID usang diatur di suatu tempat. Periksa tempat Anda dapat mengatur model dalam urutan prioritas dan hapus nilai usang.
  • Claude Code melaporkan login claude.ai yang kedaluwarsa sebagai Login kedaluwarsa, bukan sebagai kesalahan ini. Sebelum v2.1.206, login yang kedaluwarsa yang tidak lagi dapat disegarkan gagal di setiap model dengan kesalahan ini; jalankan /login jika Anda melihat itu pada versi yang lebih lama.
  • Untuk penerapan Google Cloud's Agent Platform, lihat Pemecahan masalah Google Cloud's Agent Platform.

Model bukan ID model yang dikenali

String yang Anda teruskan ke sakelar model bukan yang dapat Claude Code gunakan sebagai model, jadi menolak sakelar tanpa mengirim permintaan dan sesi menyimpan model saat ini. Anda dapat mendapatkan kesalahan ini ketika model diatur melalui metode setModel() Agent SDK, oleh aplikasi yang menjalankan Claude Code CLI untuk Anda, seperti Aplikasi Desktop, atau ketika Anda memilih model dari perangkat yang terhubung melalui Remote Control. Sebelum v2.1.200, Claude Code menyimpan string dan gagal pada permintaan berikutnya dengan Ada masalah dengan model yang dipilih.

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

Dalam contoh ini aplikasi mengirim nama tampilan Sonnet 5, yang pesan ulangi tanpa spasi-nya. 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 Aplikasi Desktop mulai untuk Anda, petunjuk no-match berbunyi Switch to a different model.

Ketika Anda beralih melalui Agent SDK atau aplikasi di Anthropic API, hanya string yang tidak dapat menjadi ID model mendapatkan kesalahan ini, seperti nama tampilan atau string kosong.

Ketika 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 disertakan. Sebelum v2.1.260, pemeriksaan ini tidak mencakup pilihan Remote Control, jadi string yang tidak dikenali diterapkan dan gagal pada permintaan berikutnya.

Yang harus dilakukan:

  • 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
  • Jika Anda menggunakan alias yang hanya versi Claude Code yang lebih baru dukung, jalankan claude update, atau teruskan ID model lengkap sebagai gantinya. Server masih dapat memerlukan versi Claude Code minimum untuk model itu; lihat Claude Code tidak mendukung model ini.
  • 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.
  • Pada penyedia apa pun selain Anthropic API, atau di belakang gateway atau ANTHROPIC_BASE_URL kustom, hanya string kosong yang mendapatkan kesalahan ini. Claude Code masih dapat menulis baris diagnostik model yang tidak dikenali pada waktu permintaan, di setiap penyedia.

Model tidak ditemukan

Anda beralih ke model berdasarkan nama dan Claude Code tidak dapat mengkonfirmasi bahwa model dengan nama itu ada. Ketika nama bukan alias model atau ejaan lain yang Claude Code terima secara lokal, Claude Code memverifikasinya dengan permintaan API minimal, dan kesalahan ini biasanya jawaban titik akhir API Anda. Dengan /model <name>, nama yang tidak dapat menjadi ID model sama sekali, seperti yang berisi spasi, mendapatkan pesan yang sama.

Model 'claude-opus-9' not found

Pada penyedia dengan ID model khusus penyedia, pesan dapat menambahkan saran Try '...' instead yang menyebutkan ID penyedia Anda untuk model fallback.

Yang harus dilakukan:

  • Jalankan /model tanpa argumen dan pilih dari model yang tersedia untuk akun Anda, atau gunakan alias model seperti sonnet, yang menyelesaikan ke default yang dipertahankan
  • Jika Anda mengetik ID lengkap, periksakan terhadap katalog model penyedia Anda. Model yang baru diluncurkan dapat tersedia di Anthropic API sebelum penyedia atau wilayah Anda menawarkannya.
  • Dalam Agent SDK, setModel() gagal dengan pesan ini dan sesi terus berjalan pada model sebelumnya. Dalam SDK TypeScript, panggil supportedModels() untuk membuat daftar model yang dapat Anda alihkan.
  • Sebelum v2.1.265, /model juga menolak ejaan alias opusplan[1m] dengan kesalahan ini. Pada versi tersebut, perbarui Claude Code, atau atur model di pengaturan atau dengan --model sebagai gantinya.

Tidak dapat mengkonfirmasi model dengan API

Anda beralih model melalui metode setModel() Agent SDK atau aplikasi yang menjalankan Claude Code CLI untuk Anda, seperti Aplikasi Desktop, dan permintaan yang mengkonfirmasi ID model dengan titik akhir API Anda tidak mendapat jawaban dalam lima detik. Sesi menyimpan model saat ini.

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

Dalam sesi yang Aplikasi Desktop mulai untuk Anda, pesan berakhir di Try again.

Yang harus dilakukan:

  • Alihkan ke model lagi
  • Jika sakelar terus gagal, periksa bahwa Claude Code dapat menjangkau titik akhir API Anda; lihat Kesalahan jaringan dan koneksi

Kesalahan API saat memeriksa model yang dipilih

Anda memilih model dengan /model <name>, atau aplikasi yang terhubung ke sesi meminta sakelar. API menolak permintaan minimal yang Claude Code kirim untuk memverifikasi model, untuk alasan yang tidak memiliki entri sendiri, seperti batas laju atau kesalahan server. Sesi menyimpan model saat ini, dan pesan berakhir dengan mengatakan demikian:

API error: 429 <the server's explanation> · model not changed

Bagian tengah pesan adalah status HTTP dan penjelasan server sendiri.

Yang harus dilakukan:

Claude Opus tidak tersedia dengan paket Claude Pro

Paket langganan aktif Anda tidak menyertakan model yang Anda pilih.

Claude Opus is not available with the Claude Pro plan. If you have updated your subscription plan recently, run /logout and /login for the plan to take effect.

Dalam sesi yang aplikasi Claude Desktop jalankan, pesan mengatakan untuk sign out and sign in again bukan menyebutkan perintah.

Yang harus dilakukan:

  • Jalankan /model dan pilih model yang paket Anda sertakan
  • Jika Anda baru-baru ini meningkatkan paket dan masih melihat ini, jalankan /logout lalu /login. Token yang disimpan mencerminkan paket Anda pada saat Anda masuk, jadi meningkatkan di claude.ai tidak berlaku dalam sesi yang ada sampai Anda autentikasi ulang.
  • Lihat claude.com/pricing untuk model mana yang setiap paket sertakan

Claude Code tidak mendukung model ini

API menolak permintaan dengan 400 karena versi Claude Code Anda di bawah minimum yang diperlukan. Baik model yang Anda pilih memerlukan versi yang lebih baru, yang server periksa per model, atau kebijakan organisasi Anda memerlukan satu. 400 membawa kode kesalahan claude_code_version_too_old, dan pesan mengatakan minimum mana yang berlaku.

API Error: 400 Claude Code 2.1.219 does not support this model; version 2.1.255 or newer is required. Run 'claude update', or update the Claude desktop app, then try again.

Pesan kebijakan organisasi berbunyi:

API 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.

Versi yang API periksa adalah yang dilaporkan oleh biner Claude Code yang membuat permintaan.

Yang harus dilakukan:

Perbarui biner itu, lalu mulai sesi baru. Tempat biner berasal menentukan bagaimana, kecuali dalam lingkungan yang di-host sendiri:

Biner yang membuat permintaan Cara memperbarui
Claude Code yang Anda instal Jalankan claude update
Aplikasi desktop Claude Perbarui aplikasi
Biner yang ekstensi VS Code bundel Perbarui ekstensi
Biner yang paket Agent SDK bundel Tingkatkan paket SDK, lalu mulai ulang aplikasi Anda. Dalam executable file tunggal yang dikompilasi, bangun ulang
  • Untuk pesan per-model, Anda dapat terus bekerja dalam sesi saat ini dengan beralih ke model lain: jalankan /model di CLI, panggil setModel() pada objek Query SDK TypeScript dalam mode input streaming, atau panggil set_model() pada ClaudeSDKClient SDK Python
  • Untuk pesan kebijakan organisasi, perbarui sebelum Anda melanjutkan

Model dibatasi oleh pengaturan organisasi Anda

Admin organisasi Anda telah menonaktifkan model ini di konsol admin claude.ai, atau pengaturan terkelola mengecualikannya melalui daftar allowlist availableModels atau daftar deniedModels. Pemberitahuan muncul saat startup ketika --model, ANTHROPIC_MODEL, atau pengaturan model menyebutkan model yang dibatasi, dan menyebutkan model yang digunakan sesi sebagai gantinya. Jika pengaturan terkelola tidak meninggalkan model yang diizinkan untuk digunakan sesi, lihat Pengaturan terkelola memblokir model default. Pemberitahuan substitusi juga dapat muncul di tengah sesi setelah admin menonaktifkan model yang sesi jalankan di konsol admin claude.ai.

Model "claude-opus-4-8" is restricted by your organization's settings. Using claude-sonnet-4-6 instead.

Mengetik /model <name> untuk model yang dibatasi ditolak dan sesi menyimpan model saat ini. Untuk model yang dinonaktifkan di konsol admin, penolakan berbunyi Model '<name>' is restricted by your organization's settings. Run /model to choose a different model. Untuk model yang pengaturan terkelola kecualikan, itu berbunyi Model '<name>' is not available. Your organization restricts model selection.

Pemberitahuan dengan awalan nama agen, skill, atau perintah berarti pembatasan diterapkan pada model yang diminta subagen: subagen berjalan pada model yang disubstitusi dan model sesi Anda tidak berubah. Sebelum v2.1.223, Claude Code menampilkan pemberitahuan hanya untuk subagen yang diluncurkan dengan alat Agent.

Claude Code memperlakukan alias keluarga model, salah satu dari opus, sonnet, haiku, atau fable, sebagai permintaan untuk keluarga itu bukan untuk versi terbarunya. Di Anthropic API dan di Claude Platform on AWS, alias keluarga yang dibatasi menyelesaikan ke versi terbaru keluarga yang pengaturan organisasi Anda izinkan, dan pemberitahuan substitusi menyebutkan versi itu. Claude Code menolak /model <alias> hanya ketika setiap versi keluarga dibatasi. Sebelum v2.1.205, alias keluarga disubstitusi atau ditolak berdasarkan versi terbarunya saja, bahkan ketika versi yang lebih lama dari keluarga yang sama diizinkan.

Yang harus dilakukan:

  • Jalankan /model untuk memilih dari model yang organisasi Anda izinkan. Model yang dibatasi disembunyikan dari pemilih.
  • Jika model yang dibatasi diatur di --model, ANTHROPIC_MODEL, bidang model file pengaturan, atau frontmatter model dari subagen, skill, atau perintah, hapus atau perbarui nilai itu sehingga pemberitahuan tidak berulang
  • Jika Anda memerlukan akses ke model yang dibatasi, minta admin organisasi Anda untuk mengaktifkannya. Lihat Pembatasan model organisasi.

Tidak dapat beralih ke model default

Anda memilih model Default, misalnya dengan memilih baris Default di pemilih /model atau mengetik /model default. Claude Code menolak sakelar, jadi sesi menyimpan model saat ini.

Can't switch to the default model: your organization's managed settings block it (claude-opus-4-6) in "deniedModels", and none of the models they allow can be used as the default instead. Ask your administrator to update "deniedModels" or "availableModels".

Pesan setelah titik dua menyebutkan apa yang memblokir sakelar:

  • your organization's managed settings block it ... in "deniedModels": daftar deny terkelola memblokir model yang opsi Default selesaikan
  • your organization allows only the models listed in "availableModels": daftar allowlist availableModels terkelola dengan availableModelsMatch diatur ke "exact" meninggalkan model yang opsi Default selesaikan
  • Claude Code couldn't read your organization's managed settings to check which models they allow: pengaturan terkelola tidak dapat dibaca, dan Claude Code menolak sakelar bukan menerapkannya tanpa diperiksa

Yang harus dilakukan:

  • Untuk pesan deniedModels dan availableModels, jalankan /model dan pilih model yang organisasi Anda izinkan berdasarkan nama
  • Minta administrator Anda untuk memperbarui pengaturan terkelola yang pesan sebutkan
  • Untuk pesan couldn't read, mulai ulang Claude Code; jika terus terjadi, minta administrator Anda untuk memeriksa pengaturan terkelola

Jika sesi malah gagal dimulai dengan pesan Claude Code can't start di bawah pengaturan terkelola ini, lihat Pengaturan terkelola memblokir model default.

Sakelar model diblokir oleh hook PreModelSwitch

Hook PreModelSwitch tidak menyetujui sakelar model yang Anda atau klien minta, jadi sesi menyimpan model saat ini. Ketika sakelar berasal dari host Agent SDK atau Remote Control bukan perintah yang Anda ketik, pesan berbunyi Model switch blocked by a PreModelSwitch hook tanpa menyebutkan model target.

Model switch to Opus 4.6 was blocked by a PreModelSwitch hook: Opus 4.6 is retired for this project. Use a newer model.

Alasan setelah titik dua mengatakan apa yang menolak sakelar:

  • Alasan yang hook tulis: hook PreModelSwitch memasok alasan itu ketika menolak sakelar atau meminta konfirmasi. Tangani apa yang dimintanya, atau pilih model yang hook Anda izinkan.
  • PreModelSwitch hook <name> did not respond before its timeout: hook yang tidak menjawab sebelum timeout-nya memblokir sakelar. Perbaiki perintah yang menggantung atau naikkan timeout hook itu, lalu alihkan lagi.
  • confirmation required, and this session cannot ask: hook menjawab ask tanpa alasan, dan permintaan kontrol tidak memiliki cara untuk menampilkan prompt konfirmasi. Jalankan /model dalam run -p melaporkan kondisi yang sama dengan (run /model interactively to confirm) setelah alasan. Buat sakelar dari sesi interaktif, atau ubah keputusan hook untuk model ini.
  • so organization-managed PreModelSwitch hooks could not be checked: Claude Code tidak dapat mengetahui hook PreModelSwitch mana yang plugin terkelola organisasi Anda berikan, misalnya karena plugin terkelola gagal dimuat. Salah satu hook itu mungkin memblokir sakelar, jadi Claude Code menolak bukan menerapkan sakelar tanpa diperiksa. Awal alasan menyebutkan apa yang gagal. Claude Code memeriksa ulang pada setiap upaya sakelar, jadi kegagalan yang sejak itu telah dihapus berhenti memblokir; jika terus gagal, jalankan claude --debug dan alihkan lagi untuk menangkap detail, lalu perbaiki plugin atau minta admin Anda memperbaikinya.
  • a PreModelSwitch hook failed before answering atau PreModelSwitch hooks were cancelled (the control stream closed) before answering: jalankan hook berakhir tanpa putusan, dan Claude Code tidak memperlakukan itu sebagai persetujuan. Jalankan claude --debug untuk melihat apa yang gagal, lalu alihkan lagi.

Sebelum v2.1.260, penolakan plugin terkelola berbunyi plugin hooks could not be loaded, so PreModelSwitch hooks could not be checked; see the debug log. Claude Code mencoba ulang pemuatan plugin sekali lalu menolak sakelar kemudian dalam sesi, bahkan ketika organisasi Anda tidak mengelola plugin. Mulai ulang sesi untuk menjalankan pemuatan plugin lagi pada versi tersebut.

Tidak dapat menyimpannya sebagai default Anda

Anda memilih model untuk disimpan sebagai default Anda, misalnya dengan /model <name> atau Enter di pemilih /model, dan Claude Code tidak dapat menulis pilihan ke file pengaturan pengguna Anda, ~/.claude/settings.json. Sakelar itu sendiri diterapkan, jadi sesi saat ini berjalan pada model yang Anda pilih, tetapi default Anda tidak berubah dan sesi berikutnya dimulai pada nilai lama.

Set model to Fable 5.1 for this session only · couldn't save it as your default: ~/.claude/settings.json can't be written (EROFS)

Alasan setelah jalur file mengatakan apa yang gagal:

  • can't be written (<code>): penulisan gagal dengan kode kesalahan sistem operasi dalam tanda kurung, seperti EROFS ketika file, atau file yang ditautkannya, duduk di sistem file yang menolak penulisan. Buat file dapat ditulis dan alihkan lagi. Jika alat lain menghasilkan file, atur kunci model di alat itu sebagai gantinya; lihat Perubahan yang Anda buat di Claude Code hilang di sesi baru.
  • isn't valid JSON: file di disk tidak diurai, dan Claude Code meninggalkannya tanpa sentuhan bukan menimpa konten yang tidak dapat dibaca kembali. Perbaiki kesalahan sintaks, lalu alihkan lagi; lihat Perbaiki file pengaturan yang rusak.

Pemberitahuan yang berakhir couldn't confirm it was saved as your default (~/.claude/settings.json is still being written) berarti penulisan belum selesai setelah tiga detik. Itu berlanjut di latar belakang, jadi default mungkin masih disimpan; periksa model mana yang sesi berikutnya mulai, atau jalankan /model <name> lagi.

Sebelum v2.1.265, pemberitahuan mengatakan model itu saved as your default for new sessions bahkan ketika penulisan gagal.

thinking.type.enabled tidak didukung untuk model ini

Versi Claude Code Anda lebih lama dari minimum untuk model yang dipilih. CLI mengirim konfigurasi pemikiran yang model tidak lagi terima.

API Error: 400 ... "thinking.type.enabled" is not supported for this model. Use "thinking.type.adaptive" and "output_config.effort" to control thinking behavior.

Yang harus dilakukan:

  • Jalankan claude update dan mulai ulang Claude Code. Opus 4.7 memerlukan v2.1.111 atau lebih baru. Opus 4.8 memerlukan v2.1.154 atau lebih baru. Sonnet 5 memerlukan v2.1.197 atau lebih baru. Opus 5 memerlukan v2.1.219 atau lebih baru. Opus 5.5 memerlukan v2.1.280 atau lebih baru. Sonnet 5.5 memerlukan v2.1.284 atau lebih baru
  • Jika Anda tidak dapat meningkatkan, jalankan /model dan pilih Opus 4.6 atau Sonnet 4.6 sebagai gantinya
  • Jika Anda mengalami ini di Agent SDK, tingkatkan paket SDK sebagai gantinya. Opus 4.8 memerlukan TypeScript SDK v0.3.154 atau lebih baru dan Python SDK v0.2.88 atau lebih baru. Sonnet 5 memerlukan TypeScript SDK v0.3.197 atau lebih baru. Opus 5 memerlukan TypeScript SDK v0.3.219 atau lebih baru. Opus 5.5 memerlukan TypeScript SDK v0.3.280 atau lebih baru. Sonnet 5.5 memerlukan TypeScript SDK v0.3.284 atau lebih baru

Effort tidak tersedia dengan pemikiran dimatikan

Anda mematikan pemikiran diperpanjang dan berjalan pada tingkat effort di atas high. Model tidak menerima kombinasi itu, jadi API menolak permintaan.

API Error: Effort 'xhigh' isn't available with thinking turned off on this model · run /effort high to continue, or turn thinking back on (unset MAX_THINKING_TOKENS=0)

Petunjuk setelah · bervariasi menurut sesi: dalam sesi non-interaktif itu berbunyi use --effort high (or the effortLevel setting), dan dalam sesi yang aplikasi Claude Desktop jalankan itu berbunyi you can lower effort to High.

Yang harus dilakukan:

Sebelum v2.1.242, Claude Code menampilkan pesan API sendiri: API Error: 400 output_config.effort 'xhigh' is not supported when thinking is disabled on this model. Use effort 'high' or below, or enable thinking. Sebelum v2.1.251, Claude Code mengirim permintaan pada tingkat effort yang Anda atur, jadi Opus 5 menolak setiap permintaan di atas high dengan pemikiran dimatikan. Claude Code sekarang mengirim effort high sebagai gantinya ke model yang diketahui menolak kombinasi, seperti Opus 5.

Anggaran pemikiran melebihi batas output

Anggaran pemikiran diperpanjang yang dikonfigurasi melebihi panjang respons maksimum, jadi tidak ada ruang yang tersisa untuk jawaban sebenarnya.

API Error: 400 ... max_tokens must be greater than thinking.budget_tokens

Yang harus dilakukan:

Ketidakcocokan blok penggunaan alat atau pemikiran

Riwayat percakapan mencapai API dalam keadaan tidak konsisten.

API Error: 400 due to tool use concurrency issues. Run /rewind to recover the conversation.
API Error: 400 orphaned tool_result in conversation history. Run /rewind to recover the conversation.
API Error: 400 duplicate tool_use ID in conversation history. Run /rewind to recover the conversation.
API Error: 400 ... unexpected `tool_use_id` found in `tool_result` blocks
API Error: 400 ... thinking blocks ... cannot be modified

Semua varian berarti hal yang sama: urutan blok tool_use, tool_result, dan thinking dalam riwayat tidak lagi cocok dengan apa yang API harapkan.

Yang harus dilakukan:

  • Jika Anda menggunakan Opus 4.7 atau Opus 4.8, jalankan claude update terlebih dahulu. Versi sebelum v2.1.156 dapat memicu kesalahan ini selama penggunaan alat normal, dan /rewind tidak menghapusnya.
  • Jalankan /rewind, atau tekan Esc dua kali, untuk mundur ke checkpoint sebelum giliran yang rusak dan lanjutkan dari sana. Lihat Checkpointing untuk bagaimana checkpoint dibuat dan dipulihkan.

Data tidak valid dalam blok redacted\_thinking

API menolak permintaan dengan 400 karena tidak dapat menerima blok redacted_thinking yang giliran sebelumnya dalam riwayat percakapan bawa.

API Error: 400 ... Invalid `data` in `redacted_thinking` block

Claude Code meninggalkan pemikiran percakapan sebelumnya dari permintaan dan mencoba ulang sekali, jadi sesi berlanjut tanpa menampilkan kesalahan. Sebelum v2.1.282, Claude Code menyimpan blok yang ditolak, dan setiap giliran kemudian gagal dengan kesalahan yang sama.

Yang harus dilakukan:

  • Jika Anda di v2.1.281 atau lebih awal dan setiap giliran gagal dengan kesalahan ini, jalankan claude update dan lanjutkan sesi
  • Jika kesalahan berlanjut, jalankan /clear untuk memulai percakapan yang tidak membawa blok

Konten alat yang tidak didukung dihapus

Ketika Claude Code terhubung langsung ke Anthropic API dan memuat atau melihat pratinjau sesi yang disimpan, itu menghapus konten alat yang Anthropic API tidak terima dan meninggalkan baris ini di mana konten yang dihapus duduk antara dua blok pemikiran:

[Unsupported tool content removed]

Konten seperti itu mencapai file sesi ketika sesuatu selain Anthropic API menjawab dalam format API, biasanya proxy pihak ketiga yang diatur melalui ANTHROPIC_BASE_URL yang menerjemahkan panggilan alat penyedia lain. Claude Code menghapusnya hanya ketika sesi terhubung langsung ke Anthropic API, dan memuat riwayat yang disimpan seperti apa adanya ketika sesi berjalan melalui proxy atau di penyedia lain. Sebelum v2.1.246, Claude Code mengirim penggunaan alat dan hasilnya kembali ke API, dan setiap giliran sesi yang dilanjutkan gagal dengan kesalahan 400 seperti messages.1.content.0.server_tool_use.name: Input should be 'web_search', 'web_fetch', ....

Yang harus dilakukan:

  • Tidak ada yang diperlukan ketika Anda melihat baris placeholder. Sesi berlanjut tanpa konten yang dihapus.
  • Jika setiap giliran sesi yang dilanjutkan gagal dengan kesalahan 400 sebagai gantinya, jalankan claude update dan lanjutkan sesi lagi. Versi sebelum v2.1.246 tidak menghapus konten.

role 'system' harus mendahului pesan 'assistant'

API menolak permintaan dengan 400 karena pesan sistem duduk pada posisi dalam percakapan yang tidak diterimanya:

API Error: 400 messages.6: role 'system' must precede an 'assistant' message or end the array; ...

Claude Code mengirim beberapa teks pengingat dan lampiran-nya sebagai pesan sistem di dalam percakapan. Ketika API menolak posisi satu, Claude Code mencoba ulang permintaan sekali dengan teks itu dikirim sebagai pesan pengguna biasa sebagai gantinya. Pesan saudara API yang ditolak, seperti use the top-level 'system' parameter for the initial system prompt, mendapatkan pemulihan yang sama.

Ketika kesalahan muncul, pesan sistem yang ditolak bukan yang Claude Code dapat hapus. Itu biasanya berarti proxy atau gateway LLM antara Claude Code dan API menambahkan pesan sistem mereka sendiri.

Yang harus dilakukan:

  • Jika kesalahan berulang pada setiap giliran di belakang proxy atau gateway yang dikonfigurasi melalui ANTHROPIC_BASE_URL, terhubung tanpa proxy untuk mengkonfirmasi sumber, dan laporkan kesalahan ke siapa pun yang mengoperasikannya
  • Jalankan /clear untuk memulai percakapan segar. Jika kesalahan kembali di sana juga, penyebabnya ada di jalur permintaan, bukan di percakapan yang disimpan.

Sebelum v2.1.280, Claude Code tidak mengenali pesan ini, jadi kesalahan juga muncul ketika pesan sistem yang ditolak adalah yang Claude Code sendiri kirim, dan setiap giliran kemudian percakapan gagal dengan cara yang sama.

Encrypted\_content tidak valid dalam blok search\_result

API menolak permintaan dengan 400 karena riwayat percakapan menyimpan konten pencarian web yang dihosting yang tidak dapat didekripsi. Pesan menyebutkan bidang yang tidak dapat dibacanya:

API Error: 400 ... Invalid `encrypted_content` in `search_result` block
API Error: 400 ... Invalid `encrypted_index` in `text` block
API Error: 400 ... Failed to decrypt web search result content
API Error: 400 ... Invalid `encrypted_stdout` in `encrypted_code_execution_result` block

Hasil dari alat pencarian web yang dihosting API membawa bidang terenkripsi yang hanya dapat dibaca oleh API. Pesan encrypted_stdout menyebutkan output program eksekusi kode yang dihosting yang membaca hasil seperti itu; output tersebut juga dienkripsi oleh API. API menolak permintaan yang memutar ulang konten yang tidak dapat didekripsi, seperti konten yang diproduksi untuk organisasi berbeda.

Alat WebSearch Claude Code sendiri mencatat hasil pencarian sebagai teks biasa, jadi blok ini biasanya mencapai percakapan melalui proxy atau gateway LLM yang menjalankan pencarian web yang dihosting itu sendiri.

Untuk tiga pesan pencarian web, Claude Code meninggalkan panggilan pencarian, hasil, dan kutipan dari apa yang dikirimnya dan mencoba ulang permintaan sekali, jadi sesi berlanjut tanpa menampilkan kesalahan. Pesan encrypted_stdout tidak memiliki pemulihan seperti itu, jadi pesan itu masih mencapai Anda. Sebelum v2.1.282, Claude Code menyimpan blok pencarian web yang ditolak juga, dan setiap giliran kemudian dan /compact gagal dengan cara yang sama.

Yang harus dilakukan:

  • Jika Anda di v2.1.281 atau lebih awal dan setiap giliran gagal dengan salah satu pesan pencarian web, jalankan claude update dan lanjutkan sesi
  • Jika kesalahan berlanjut, atau pesan menyebutkan encrypted_stdout, jalankan /rewind untuk mundur ke checkpoint sebelum giliran yang menambahkan konten, atau jalankan /clear untuk memulai percakapan yang tidak membawanya
  • Jika Anda menjalankan Claude Code di belakang proxy atau gateway, laporkan kesalahan ke siapa pun yang mengoperasikannya

Penolakan Kebijakan Penggunaan

API menolak untuk merespons karena konten dalam percakapan memicu pemeriksaan Kebijakan Penggunaan.

Pesan menyertakan ID Permintaan dan ID Pesan yang dapat Anda kutip untuk mendukung jika Anda percaya penolakan tidak benar.

API Error: Opus 4.6 can't help with this. Start a new session to continue.

Send feedback with /feedback or learn more: https://www.anthropic.com/legal/aup

Pesan menyebutkan model yang menolak, atau Claude ketika tidak ada model yang dicatat.

Pemeriksaan mengevaluasi seluruh percakapan, bukan hanya prompt terbaru Anda, jadi mengirim pesan baru dalam sesi yang sama biasanya memicu ulang penolakan yang sama. Hal yang sama berlaku setelah keluar dan membuka kembali sesi dengan --continue atau --resume, karena transkrip di disk masih berisi konten yang memicu. Di Amazon Bedrock, Google Cloud's Agent Platform, dan Microsoft Foundry, pesan ini juga mencakup permintaan yang langkah-langkah keselamatan model tandai sebagai topik keamanan siber. Lihat Langkah-langkah keselamatan menandai topik keamanan siber.

Sebelum v2.1.219, pesan berbunyi Claude Code is unable to respond to this request, which appears to violate our Usage Policy (https://www.anthropic.com/legal/aup). Please double press esc to edit your last message or start a new session for Claude Code to assist with a different task.

Yang harus dilakukan:

  • Tekan Esc dua kali atau jalankan /rewind untuk mundur ke checkpoint sebelum giliran yang memicu penolakan, lalu rephrase atau ambil pendekatan berbeda. Lihat Checkpointing.
  • Jika Anda tidak dapat mengidentifikasi giliran mana yang menyebabkannya, jalankan /clear untuk memulai percakapan segar dalam proyek yang sama. Percakapan sebelumnya Anda disimpan di disk dan tetap tersedia di /resume.
  • Dalam mode non-interaktif (-p), di mana rewind tidak tersedia, coba ulang dengan prompt yang diubah dalam sesi baru tanpa --continue. Pemeriksaan kebijakan bervariasi menurut model, jadi beralih ke model berbeda dengan --model juga dapat menyelesaikan penolakan dalam beberapa kasus.

Langkah-langkah keselamatan menandai topik keamanan siber

Langkah-langkah keselamatan model menandai konten dalam percakapan sebagai topik keamanan siber. Pesan menyebutkan model yang menandai permintaan:

API Error: Opus 4.8's safeguards flagged this message. Our intentionally broad safeguards allow us to deliver more capabilities faster, but can sometimes flag legitimate cybersecurity work. Apply to the Cyber Verification Program to reduce these interruptions. Send feedback with /feedback or learn more: https://support.claude.com/en/articles/14604842-real-time-cyber-safeguards-on-claude

Pesan menautkan ke Program Verifikasi Siber, yang memberikan akses untuk pekerjaan keamanan siber yang sah. Di Opus 5.5 dan Sonnet 5.5, pesan dibuka dengan <model>'s safeguards flagged this session sebagai gantinya. Ketika kategori yang ditandai memiliki model fallback yang tersedia, Claude Code beralih model bukan menampilkan kesalahan ini.

Di Amazon Bedrock, Google Cloud's Agent Platform, dan Microsoft Foundry, bendera keamanan siber menghasilkan pesan Penolakan Kebijakan Penggunaan sebagai gantinya.

Penjaga itu sendiri adalah server-side dan mendahului v2.1.203; rilis klien sejak itu hanya mengubah pesan-nya. Dari v2.1.203 melalui v2.1.218, pesan berbunyi <model> has safety measures that flagged this message for a cybersecurity topic. To learn about the Cyber Verification Program and apply for access, visit our help center: diikuti oleh tautan help-center yang sama, dan sesi interaktif menambahkan If you were not engaging in a cybersecurity topic, please send feedback via /feedback. Sebelum v2.1.203, itu berbunyi <model>'s safeguards flagged this message for a cybersecurity topic. If your work requires this access, you can apply for an exemption: diikuti oleh tautan formulir pengecualian.

Yang harus dilakukan:

  • Jika pekerjaan Anda memerlukan konten ini, ajukan permohonan akses melalui Program Verifikasi Siber
  • Jika permintaan Anda bukan tentang topik keamanan siber, jalankan /feedback untuk melaporkan positif palsu
  • Untuk terus bekerja dalam sesi yang sama, tekan Esc dua kali atau jalankan /rewind untuk mundur ke checkpoint sebelum giliran yang memicu bendera, lalu ambil pendekatan berbeda. Lihat Checkpointing.

Kesalahan instalasi

Kesalahan ini muncul saat menginstal atau memperbarui Claude Code, dari skrip instalasi, claude install, atau claude update. Untuk masalah command not found, PATH, izin, dan TLS selama pengaturan, lihat Troubleshoot installation and login.

Installation was killed before it could finish

Skrip instalasi melaporkan ketika langkah claude install dihentikan oleh sinyal. Di Linux, kode keluar 137 berarti proses menerima SIGKILL, dan pada host dengan memori rendah itu biasanya pembunuh out-of-memory (OOM) kernel. Skrip mencetak penjelasan ini dan keluar dengan kode 137:

Installation was killed before it could finish (exit code 137). This usually means the system ran out of memory.
Claude Code needs roughly 512MB of free memory to install. Free up memory, then run this script again.

Untuk sinyal fatal lainnya, dan untuk kode keluar 137 di macOS, skrip mencetak Installation was killed before it could finish (exit code <N>) dengan kode keluar aktual dan menghilangkan penjelasan out-of-memory. Pesan berasal dari skrip instalasi yang digunakan macOS dan Linux, yang juga mencakup instalasi di dalam WSL; skrip instalasi Windows asli tidak pernah mencetaknya. Sebelum v2.1.200, skrip keluar hanya dengan baris Killed shell yang kosong.

Yang harus dilakukan:

  • Hentikan proses lain untuk membebaskan memori, kemudian jalankan kembali penginstal
  • Tambahkan ruang swap atau pindah ke instans yang lebih besar. Lihat Install killed on low-memory Linux servers untuk perintah file swap.

The connection dropped while downloading the update

Koneksi ke server unduhan ditutup saat claude install atau claude update mengambil biner Claude Code, dan pengulangan tidak berhasil. Claude Code mencoba ulang unduhan ketika koneksi putus, transfer macet, atau file yang diunduh gagal checksumnya, hingga tiga percobaan total. Kesalahan HTTP yang selesai, seperti 404, tidak dicoba ulang karena server sudah menjawab. Sebelum v2.1.202, koneksi yang putus tunggal gagal mengunduh segera dengan kesalahan kosong aborted alih-alih mencoba ulang.

The connection dropped while downloading the update (attempt 3/3: aborted). Check your network — proxies sometimes cut off large downloads.

Teks dalam tanda kurung menyebutkan percobaan mana yang gagal dan kesalahan jaringan yang mendasarinya. claude update mendahului pesan dengan Error: Failed to install native update di stderr.

Unduhan yang tetap terhubung tetapi tidak selesai dalam 10 menit gagal dengan Download timed out: exceeded the total deadline sebagai gantinya. Claude Code tidak mencoba ulang unduhan yang habis waktu, karena koneksi yang terlalu lambat untuk selesai dalam batas waktu tidak akan selesai pada pengulangan segera. Langkah-langkah di bawah berlaku untuk kedua pesan.

Proxy atau gateway dapat menutup transfer panjang sebelum selesai, dan biner Claude Code adalah unduhan besar.

Yang harus dilakukan:

  • Jalankan claude update lagi. Pada jaringan yang sehat, unduhan biasanya berhasil pada run berikutnya. Untuk pesan yang habis waktu, jalankan lagi dari jaringan yang lebih cepat atau kurang dibatasi.
  • Jika jaringan Anda memerlukan proxy, atur HTTPS_PROXY sebelum menjalankan penginstal atau claude update. Lihat Check network connectivity.
  • Jika proxy korporat terus menutup transfer, minta tim jaringan Anda untuk mengizinkan unduhan lengkap dari downloads.claude.ai. Lihat Network access requirements.
  • Jalankan claude doctor dari shell Anda untuk diagnostik instalasi

Error baris perintah

Error ini berasal dari baris perintah claude dan subperintahnya, dari nama perintah yang Anda kirimkan di prompt, dan dari perintah seperti /security-review yang mengumpulkan konteks dengan menjalankan perintah shell sebelum prompt-nya berjalan. Error ini juga berasal dari /tui, yang meluncurkan ulang CLI.

Konflik antara `--bg` dan `--print`

Pesan ini memerlukan Claude Code v2.1.198 atau yang lebih baru. Anda menggabungkan --bg dengan -p atau --print dalam pemanggilan claude yang sama. --bg memulai sesi latar belakang yang nantinya Anda sambungkan dengan claude agents, sedangkan --print berjalan secara non-interaktif dan tidak pernah memulai sesi interaktif yang disambungkan oleh claude agents. Sebelum v2.1.198, kombinasi ini secara diam-diam membuat pekerjaan latar belakang yang tidak pernah dapat disambungkan.

--bg and --print conflict: --print never starts the interactive session that `claude agents` attaches to, so the job would be unattachable. The prompt is the positional — drop --print: `claude --bg '<task>'`.

Yang harus dilakukan:

  • Hapus -p atau --print. --bg menerima prompt sebagai argumen posisionalnya, sehingga claude --bg "<task>" adalah perintah yang lengkap. Lihat Mengirim agent baru dari shell Anda.
  • Untuk menjalankan prompt secara non-interaktif dan mencetak hasilnya alih-alih membuat sesi latar belakang, hapus --bg dan jalankan claude -p "<task>"

Konflik antara flag system prompt dan bentuk file-nya

Anda meneruskan --append-subagent-system-prompt bersama dengan --append-subagent-system-prompt-file dalam satu pemanggilan claude, sehingga claude keluar dengan kode 1 alih-alih memulai sesi:

Error: Cannot use both --append-subagent-system-prompt and --append-subagent-system-prompt-file. Please use only one.

Sebelum v2.1.283, claude keluar dengan cara yang sama ketika Anda meneruskan --system-prompt dengan --system-prompt-file, atau --append-system-prompt dengan --append-system-prompt-file, karena pasangan tersebut berkonflik alih-alih digabungkan. Pada versi tersebut, pesan menyebutkan pasangan yang Anda gabungkan.

Yang harus dilakukan:

  • Pertahankan satu bentuk flag dan hapus yang lainnya. Untuk menggabungkan file prompt tetap dengan teks per-run, gabungkan teks tersebut ke dalam file sebelum meluncurkan alih-alih meneruskan kedua flag

Konfigurasi `--agents` tidak valid

Nilai yang Anda teruskan ke --agents tidak valid, sehingga claude keluar dengan kode 1 alih-alih memulai sesi. Ketika Anda meneruskan --safe-mode atau mengatur CLAUDE_CODE_SAFE_MODE, Claude Code mengabaikan --agents sepenuhnya. Dengan --resume atau --continue, nilai JSON inline tidak diperiksa dan sesi dimulai; nilai yang dibaca dari file diperiksa pada setiap peluncuran. Sebelum v2.1.242, Claude Code tetap memulai sesi.

Error: Invalid --agents configuration:
<what failed>

Apa yang mengikuti baris pertama bergantung pada bagaimana nilai tersebut gagal. Claude Code menjalankan pemeriksaan ini secara berurutan dan berhenti pada pemeriksaan pertama yang gagal. Jika nilai Anda memiliki dua jenis masalah, Anda baru melihat yang kedua setelah memperbaiki yang pertama:

  1. Ketika nilai diawali dengan { tetapi tidak dapat di-parse sebagai JSON, atau isi file --agents tidak dapat di-parse, Claude Code mencetak satu baris invalid JSON: yang memuat pesan dari parser JSON itu sendiri
  2. Ketika nilai dapat di-parse tetapi definisi agent tidak cocok dengan skema untuk subagent yang didefinisikan melalui CLI, Claude Code mencetak satu baris per masalah
  3. Ketika nama agent diawali dengan -, Claude Code mencetak <name>: agent names must not start with '-'

Ketika ada lebih dari 20 baris masalah, Claude Code mencetak 20 baris pertama dan mengganti sisanya dengan …and N more.

Dengan --print, --agents juga menerima path ke file JSON sebagai pengganti objek inline. Sebelum v2.1.281, --agents hanya menerima JSON inline dan memperlakukan path file sebagai JSON yang tidak valid. Bentuk file memiliki penolakannya sendiri, yang dicetak sebagai pengganti pesan ini, termasuk yang berikut:

  • Error: --agents takes a JSON object, or a file path only with --print (-p): Claude Code membaca nilai tersebut sebagai path file dalam sesi interaktif. Teruskan definisi sebagai JSON inline, atau tambahkan -p untuk membacanya dari file.
  • Error: --agents file not found: <path>: tidak ada file di path tersebut. Nilai yang tidak diawali dengan { dan bukan JSON yang valid dibaca sebagai path, sehingga JSON inline yang dirusak oleh shell Anda juga dapat gagal dengan cara ini. Periksa path atau tanda kutipnya dan jalankan perintah lagi.

Yang harus dilakukan:

Sesi cloud tidak dapat dibuat dari sesi `--restricted`

Ketika Anda memulai sesi dengan --restricted, Claude Code menolak membuat sesi cloud dari sesi tersebut, karena sesi baru akan berjalan di luar proses yang dibatasi dan tidak akan menerapkan mode terbatas. Claude Code menolak di sisi klien, sebelum menghubungi server, sehingga tidak ada sesi cloud yang dibuat:

Cloud sessions cannot be created from a --restricted session: they would not enforce it.

Yang harus dilakukan:

  • Jalankan tugas secara lokal di sesi yang dibatasi
  • Jika Anda mengontrol cara sesi diluncurkan, mulai sesi claude baru tanpa --restricted dan buat sesi cloud dari sana

Sebelum v2.1.248, Claude Code tidak memiliki flag --restricted; versi sebelumnya menolak flag itu sendiri dengan error opsi tidak dikenal.

Sesi cloud dinonaktifkan oleh kebijakan organisasi Anda

Kebijakan allow_remote_sessions organisasi Anda dinonaktifkan, sehingga sesi cloud dan perintah yang menggunakannya tidak tersedia:

Cloud sessions are disabled by your organization's policy. Contact your organization admin to enable them.

Pesan ini muncul ketika Anda membuat sesi cloud dari terminal dan ketika Anda mengirimkan perintah yang memerlukan sesi cloud, seperti /teleport, /remote-env, atau /web-setup. Sebelum v2.1.268, mengirimkan salah satu perintah tersebut menghasilkan Unknown command sebagai gantinya.

Ini adalah kebijakan organisasi di sisi server, sehingga tidak dapat ditimpa dari pengaturan lokal, environment variable, atau flag CLI.

Jika Claude Code belum memuat kebijakan organisasi Anda atau tidak dapat mengambilnya, perintah tersebut menjawab Couldn't verify your organization's policy for cloud sessions. Check your network connection, then restart Claude Code and try again. sebagai gantinya.

Yang harus dilakukan:

  • Minta Owner di organisasi Anda untuk mengaktifkan sesi cloud di pengaturan admin Claude Code di claude.ai/admin-settings/claude-code
  • Jika pesan menyatakan bahwa kebijakan tidak dapat diverifikasi, periksa koneksi jaringan Anda, lalu mulai ulang Claude Code dan coba lagi

Nilai `--json-schema` bukan JSON Schema yang valid

Skema yang Anda teruskan ke --json-schema dalam mode non-interaktif gagal dalam kompilasi JSON Schema, sehingga claude keluar dengan kode 1 alih-alih menjalankan prompt. Sebelum v2.1.205, skema yang tidak valid menghasilkan output tidak terstruktur tanpa error, dan skema apa pun yang menggunakan kata kunci format diperlakukan sebagai tidak valid.

Error: --json-schema is not a valid JSON Schema: data/type must be equal to one of the allowed values

Teks setelah titik dua kedua adalah diagnostik dari validator dan menyebutkan kata kunci atau lokasi yang gagal. Skema yang menggunakan kata kunci format, seperti "format": "email", adalah valid: Claude Code menerima format sebagai anotasi dan tidak menerapkannya.

Claude Code menjalankan dua pemeriksaan sebelum kompilasi skema: Claude Code menolak nilai yang bukan JSON yang dapat di-parse dengan Error: --json-schema is not valid JSON, dan JSON valid yang bukan objek dengan Error: --json-schema must be a JSON object.

Yang harus dilakukan:

  • Perbaiki bagian skema yang disebutkan oleh diagnostik, lalu jalankan ulang perintah
  • Lihat Mendapatkan output terstruktur untuk skema dan perintah yang berfungsi

File pengaturan melebihi batas 2MiB

File yang Anda teruskan ke --settings lebih besar dari 2 MiB, sehingga claude keluar dengan kode 1 saat startup alih-alih memuatnya. Sebelum v2.1.214, Claude Code membaca file tanpa pemeriksaan ukuran, dan file berukuran beberapa gigabyte atau file perangkat seperti /dev/zero membuat memori bertambah tanpa batas.

Error: Settings file exceeds the 2MiB limit: /path/to/settings.json

Claude Code menolak path --settings yang bukan file biasa dengan cara yang sama: perangkat, FIFO, atau socket melaporkan Error: Cannot use settings file (Not a regular file (device, FIFO, or socket)) diikuti oleh path-nya, dan direktori melaporkan alasan EISDIR.

Yang harus dilakukan:

  • Arahkan --settings ke file pengaturan JSON biasa yang berukuran di bawah 2 MiB. Lihat Pengaturan untuk formatnya.

Direktori saat ini sudah tidak ada

Anda memulai claude dari direktori yang dihapus atau dipindahkan setelah shell Anda memasukinya, misalnya worktree atau direktori sementara yang dihapus oleh shell lain. Claude Code tidak dapat membaca direktori kerjanya, sehingga keluar dengan kode 1 sebelum memulai sesi, baik dalam mode interaktif maupun non-interaktif. Sebelum v2.1.239, Claude Code crash dengan sumber bundle yang di-minify dan stack ENOENT ... uv_cwd mentah di stderr alih-alih pesan ini.

The current directory no longer exists (it was deleted or moved). Start Claude Code from an existing directory.
error: The current working directory was deleted, so that command didn't work. Please cd into a different directory and try again.

Penyebab dan perbaikannya sama untuk kedua bentuk.

Ketika Claude Code tidak dapat membaca direktori kerja karena alasan lain, seperti perubahan permission, pesan menyebutkan kode error sebagai gantinya: Can't read the current directory (EACCES). Start Claude Code from a different directory.

Di macOS, EPERM untuk direktori di ~/Desktop, ~/Documents, ~/Downloads, atau iCloud Drive biasanya berarti macOS memblokir aplikasi terminal Anda dari folder tersebut. Perintah lain yang membaca folder tersebut gagal dengan cara yang sama: ls di sana melaporkan Operation not permitted, bahkan dengan sudo.

Yang harus dilakukan:

  • Pindah ke direktori yang ada, seperti direktori home atau direktori proyek Anda, lalu jalankan claude lagi
  • Jika direktori dibuat ulang di path yang sama, shell Anda masih memegang direktori yang telah dihapus. Jalankan cd "$PWD" atau keluar lalu masuk kembali ke direktori tersebut, lalu jalankan claude lagi
  • Untuk EPERM di macOS, tutup aplikasi terminal Anda dengan Cmd+Q, buka kembali, kembali ke folder tersebut, dan jalankan claude. Jika ls di folder tersebut masih gagal, buka System Settings > Privacy & Security > Files and Folders, aktifkan folder tersebut untuk aplikasi terminal Anda, lalu buka kembali terminal

Direktori sementara ditolak atau tidak dapat dibuat

Di macOS dan Linux, Claude Code membuat direktori sementara pribadi saat startup, yaitu claude-<uid> di bawah direktori sementara sistem atau override CLAUDE_CODE_TMPDIR. Ketika direktori tidak dapat dibuat, atau entri yang sudah ada di path tersebut gagal dalam pemeriksaan keamanan, Claude Code mencetak kegagalan tersebut ke stderr dan keluar dengan kode 1 alih-alih memulai sesi:

ENOSPC: no space left on device, mkdir '/tmp/claude-501'

Temp directory /tmp/claude-501 is not a directory (may be an attacker-planted symlink). Refusing to use it. Set CLAUDE_CODE_TMPDIR to a directory you control, or ask an administrator to remove it.

Temp directory /tmp/claude-501 is owned by uid 502, expected 501. Refusing to use it — another user may have pre-created it. Set CLAUDE_CODE_TMPDIR to a directory you control, or ask an administrator to remove it.

Temp directory /tmp/claude-501 is not readable (its mode may have been altered, or a path component denies search). Refusing to use it — restore its permissions (chmod 0700) or remove it. Set CLAUDE_CODE_TMPDIR to a directory you control, or ask an administrator to remove it.

Yang harus dilakukan:

  • Untuk ENOSPC, kosongkan ruang disk pada volume yang menampung direktori sementara
  • Untuk bentuk Refusing to use it, hapus entri yang disebutkan itu sendiri, bukan apa yang ditunjuk oleh link, lalu mulai Claude Code lagi; untuk bentuk owned by uid, hanya administrator atau pengguna tersebut yang dapat menghapusnya
  • Untuk is not readable, jalankan chmod 0700 pada direktori yang disebutkan, atau hapus direktori tersebut dan mulai lagi
  • Dalam kasus mana pun, atur CLAUDE_CODE_TMPDIR ke direktori yang Anda kendalikan dan mulai Claude Code lagi, dengan membiarkan path yang ditolak apa adanya

Direktori tidak dapat di-resolve ke lokasi sebenarnya

Anda menjalankan /add-dir untuk subdirektori dari direktori kerja Anda, dan Claude Code tidak dapat me-resolve direktori tersebut ke lokasi sebenarnya.

Anda sudah memiliki akses file ke subdirektori dari direktori kerja, sehingga /add-dir hanya memuat skill, perintah, dan agent-nya. Sebelum memuatnya, Claude Code memeriksa bahwa lokasi sebenarnya dari direktori tersebut, dengan semua symlink telah di-resolve, berada di dalam direktori kerja. Ketika Claude Code tidak dapat me-resolve lokasi tersebut, Claude Code tidak memuat apa pun dan menampilkan pesan ini:

packages/app couldn't be resolved to a real location, so its skills, commands, and agents weren't loaded. Check that it is a directory inside the working directory and try again.

Yang harus dilakukan:

  • Periksa bahwa path tersebut menunjuk ke direktori nyata di dalam direktori kerja, lalu jalankan /add-dir lagi
  • Pesan ini tidak mengubah akses file Anda; pesan ini hanya melaporkan bahwa konten .claude/ dari direktori tersebut tidak dimuat

Sebelum v2.1.261, pesan ini juga muncul untuk setiap /add-dir <subdirectory> ketika direktori kerja berada di automount /net/<host>, di mana Claude Code memang dirancang untuk tidak me-resolve path; direktorinya baik-baik saja dan mencoba ulang tidak membantu.

Workspace tidak dipercaya saat memulai Remote Control

Anda memulai mode server Remote Control dengan claude remote-control atau alias claude rc di direktori yang belum Anda percayai, dan perintah tersebut tidak dapat menanyakan apakah Anda ingin memercayainya. Misalnya, input standar atau output standar perintah bukan terminal karena salah satunya dialihkan atau di-pipe. Perintah keluar dengan kode 1:

Error: Workspace not trusted. Please run `claude` in /Users/you/project first to review and accept the workspace trust dialog.

Dua varian yang juga diawali dengan Error: Workspace not trusted. muncul di terminal yang terlalu kecil untuk menampilkan apa yang diaktifkan dengan memercayai direktori tersebut, atau terminal yang tidak melaporkan ukurannya. Perbesar jendela atau beralih ke jendela terminal normal, lalu jalankan claude rc lagi.

Di direktori home Anda, pesannya berbeda, karena dialog kepercayaan workspace tidak pernah menyimpan kepercayaan untuk direktori home, sehingga menerimanya di sana tidak dapat memenuhi pemeriksaan ini. Sebelum v2.1.214, direktori home menampilkan pesan di atas, yang sarannya tidak dapat berhasil di sana.

Error: Workspace not trusted. /Users/you is your home directory, and for security home-directory trust is never saved, so running `claude` here first won't help. Run `claude rc` from a project directory instead (run `claude` there once to accept the trust dialog).

Jika Anda menjawab n atau menekan Enter pada pertanyaan Trust <directory>?, perintah mencetak pesan Remote Control did not start yang menyebutkan direktori tersebut dan keluar dengan kode 1. Jalankan claude rc lagi untuk menjawab y.

Yang harus dilakukan:

  • Percayai direktori dari terminal terlebih dahulu: jalankan claude rc di sana dan jawab y, atau jalankan claude di sana dan terima dialog kepercayaan workspace, lalu jalankan perintah asli Anda lagi
  • Di direktori home Anda, pindah ke direktori proyek dan mulai Remote Control di sana

Sebelum v2.1.284, perintah tersebut tidak pernah bertanya, bahkan di terminal.

Tidak diteruskan ke sesi yang dimulai Remote Control

Anda memulai Remote Control dengan flag claude global sebelum verb remote-control, yaitu flag yang akan membatasi atau mengonfigurasi sesi yang dimulai Remote Control, seperti --settings, --setting-sources, --permission-mode, --disallowed-tools, atau --mcp-config. Flag yang ditempatkan sebelum verb tidak pernah mencapai sesi tersebut. Claude Code menolak untuk memulai, dengan menyebutkan flag tersebut:

Error: `--settings` before `remote-control` is not carried over to the sessions Remote Control starts, so Remote Control refuses to start rather than drop it — remove it, and give Remote Control's own options after the verb (see `claude remote-control --help`).

Claude Code tidak menolak flag global yang aman untuk diabaikan, seperti --verbose, --model, atau --session-id maupun --plugin-dir yang disisipkan oleh wrapper: Claude Code mengabaikannya dan Remote Control dimulai.

Claude Code juga menolak untuk memulai untuk flag global yang belum dikenalinya sebagai aman, sehingga flag yang ditambahkan dalam rilis yang lebih baru dapat muncul dalam pesan ini sampai rilis berikutnya menandainya sebagai aman.

Yang harus dilakukan:

  • Hapus flag dari posisi sebelum verb dan teruskan opsi Remote Control sendiri setelahnya; claude remote-control --help mencantumkan opsi-opsi tersebut
  • Ketika flag yang ditolak adalah --permission-mode, jalankan claude remote-control --permission-mode <mode> untuk mengatur mode izin bagi sesi yang dimulai Remote Control

Sebelum v2.1.248, claude remote-control tidak menerima flag-nya sendiri ketika flag global diletakkan lebih dulu, dan perintah gagal dengan error unknown option.

claude import belum tersedia dalam build ini

Anda menjalankan claude import, dan Claude Code mendapati alur impor dalam keadaan nonaktif, sehingga perintah keluar dengan kode 1 alih-alih memulai impor. Sebelum v2.1.222, build dengan alur impor nonaktif memperlakukan import sebagai prompt dan memulai sesi interaktif alih-alih mencetak pesan ini.

`claude import` is not yet available in this build. Run `claude` and use /mcp or edit ~/.claude/settings.json directly.

Claude Code mengaktifkan claude import melalui feature flag yang diambilnya dari Anthropic dan disimpan dalam cache di disk. Pesan ini berarti nilai yang tersimpan dalam cache dinonaktifkan. Penyebabnya biasanya salah satu dari berikut ini:

  • Anda belum memulai sesi sejak instalasi, sehingga Claude Code belum mengambil flag tersebut. claude import yang pertama dapat mencetak pesan ini meskipun fitur tersebut tersedia untuk Anda.
  • Anda menggunakan Claude Code melalui Amazon Bedrock, Agent Platform dari Google Cloud, Microsoft Foundry, atau Claude Platform di AWS, atau melalui Claude apps gateway. Claude Code tidak mengambil feature flag dalam sesi ini, sehingga claude import tetap tidak tersedia.
  • Anda mengatur DISABLE_TELEMETRY, DO_NOT_TRACK, DISABLE_GROWTHBOOK, atau CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC, yang menonaktifkan pengambilan feature flag, sehingga claude import tetap tidak tersedia.

Yang harus dilakukan:

  • Pada instalasi baru, mulai claude, tunggu hingga sesi dimuat, keluar, lalu jalankan claude import lagi
  • Jika pengambilan feature flag tetap nonaktif, siapkan konfigurasi sendiri: tambahkan server MCP dengan claude mcp add, dan buat file CLAUDE.md, skill dan perintah, serta subagent yang ingin Anda bawa. Pesan tersebut juga menyebutkan ~/.claude/settings.json. Dari konfigurasi yang dibawa oleh claude import, file tersebut hanya menyimpan mode izin; Claude Code tidak membaca server MCP dari file tersebut.

Tidak dapat membaca konfigurasi Claude Code

Anda menjalankan claude import ketika Claude Code tidak dapat mem-parse ~/.claude.json, file tempat Claude Code menyimpan login dan status per proyek Anda. Subperintah tersebut membaca file itu untuk memeriksa ketersediaan tetapi tidak menampilkan dialog pemulihan yang ditampilkan sesi interaktif, sehingga keluar dengan kode 1. Sebelum v2.1.222, claude import dengan file konfigurasi yang tidak dapat dibaca memulai sesi interaktif, yang dialog pemulihannya menangani file tersebut.

Could not read Claude Code config — run `claude` with no arguments to recover it.

Yang harus dilakukan:

  • Jalankan claude tanpa argumen. Claude Code mendeteksi file yang tidak valid dan menawarkan untuk mengatur ulangnya. Kemudian jalankan claude import lagi.
  • Untuk mempertahankan pengeditan manual yang telah Anda buat, perbaiki sintaks JSON di ~/.claude.json dalam editor, lalu jalankan ulang claude import

Tidak dapat mengimpor server dari Claude Desktop

Claude Code tidak dapat menambahkan salah satu server yang Anda pilih dalam claude mcp add-from-claude-desktop. Perintah tersebut tetap mengimpor server lain yang dipilih dan mencetak satu baris per server yang tidak dapat ditambahkan. Sebelum v2.1.205, server pertama yang gagal menghentikan impor.

Could not import my server: Invalid name my server. Names can only contain letters, numbers, hyphens, and underscores.

Teks setelah nama server adalah alasannya. Yang paling umum adalah pemeriksaan nama: Claude Desktop mengizinkan karakter dalam nama server, seperti spasi dan titik, yang dibatasi oleh claude mcp hanya pada huruf, angka, tanda hubung, dan garis bawah. Alasan lainnya termasuk konfigurasi server yang gagal validasi dan server yang diblokir oleh kebijakan MCP organisasi Anda.

Yang harus dilakukan:

  • Ganti nama server di claude_desktop_config.json agar hanya menggunakan huruf, angka, tanda hubung, dan garis bawah, lalu jalankan claude mcp add-from-claude-desktop lagi
  • Tambahkan server tersebut secara langsung dengan claude mcp add atau claude mcp add-json dengan nama yang valid. Lihat Mengimpor server MCP dari Claude Desktop.

Tidak dapat menambahkan server MCP ke cakupan managed

Anda menjalankan claude mcp add atau claude mcp add-json dengan --scope managed. Cakupan tersebut menampung server yang disediakan organisasi Anda melalui pengaturan terkelola managedMcpServers. Claude Code hanya membacanya dari pengaturan terkelola, sehingga perintah tersebut tidak dapat menulis server ke cakupan tersebut.

Cannot add MCP server to scope: managed

Yang harus dilakukan:

  • Tambahkan server ke cakupan yang dapat Anda tulis: local, user, atau project. Tanpa --scope, perintah menggunakan local. Lihat Cakupan instalasi MCP
  • Untuk menyediakan server bagi setiap pengguna di organisasi Anda, tambahkan ke managedMcpServers dalam pengaturan terkelola yang Anda deploy

Tidak dapat membaca .mcp.json

Perintah yang membaca .mcp.json proyek, seperti claude mcp add atau claude mcp add-json dengan --scope project, atau claude mcp remove, mendapati bahwa file di direktori Anda saat ini bukan file biasa atau lebih besar dari 2 MiB, sehingga perintah keluar dengan error ini alih-alih membaca file tersebut.

Can't read .mcp.json: it isn't a regular file or is larger than 2097152 bytes. Fix or remove it, then run the command again.

Sebelum v2.1.257, FIFO di .mcp.json membuat perintah menunggu selamanya tanpa output, dan symlink ke file perangkat seperti /dev/zero membuat memori bertambah hingga proses dihentikan.

Yang harus dilakukan:

  • Periksa apa yang ada di .mcp.json di direktori Anda saat ini. Ganti dengan file JSON biasa dalam format cakupan proyek, atau hapus, lalu jalankan perintah lagi.

Server MCP tidak disimpan atau dihapus

Anda menjalankan claude mcp add, claude mcp add-json, atau claude mcp remove untuk server dalam cakupan user atau local. Kedua cakupan disimpan di ~/.claude.json, dan perubahan tersebut tidak ada di file itu ketika Claude Code membacanya kembali setelah menulis. Perintah keluar dengan error ini alih-alih baris keberhasilannya.

MCP server "example" was not saved to /home/user/.claude.json. If that file is read-only or protected by a sandbox, make it writable or run the command outside the sandbox, then add the server again.

Setelah penghapusan, pesan berbunyi was not removed from dan diakhiri dengan then remove the server again. Untuk server dengan cakupan local, path diikuti oleh direktori proyek tempat entri tersebut berada, sebagai (local scope for /path/to/project).

Sebelum v2.1.283, claude mcp add, claude mcp add-json, dan claude mcp remove melaporkan keberhasilan bahkan ketika perubahan tidak mencapai file.

Yang harus dilakukan:

  • Jadikan file yang disebutkan dalam pesan dapat ditulis, atau jalankan perintah di luar sandbox, lalu jalankan perintah add atau remove yang sama lagi.

Server MCP mungkin tidak disimpan atau dihapus

Anda menjalankan claude mcp add, claude mcp add-json, atau claude mcp remove untuk server dalam cakupan user atau local, dan Claude Code tidak dapat membaca kembali ~/.claude.json untuk mengonfirmasi perubahan. Perubahan tersebut mungkin ada atau mungkin tidak ada di disk. Teks dalam tanda kurung adalah error dari pembacaan tersebut.

MCP server "example" may not have been saved: /home/user/.claude.json could not be read to confirm the change (EACCES: permission denied, open '/home/user/.claude.json'). Run `claude mcp get example` to check, then add the server again if it is missing.

Setelah penghapusan, pesan berbunyi may not have been removed dan diakhiri dengan then remove the server again if it is still listed.

Sebelum v2.1.283, perintah-perintah tersebut melaporkan keberhasilan bahkan ketika perubahan tidak dapat dikonfirmasi.

Yang harus dilakukan:

  • Jalankan claude mcp get <name> untuk memeriksa apakah perubahan ada di disk. Untuk server dengan cakupan local, jalankan dari direktori proyek tempat server tersebut berada, karena cakupan local bersifat per proyek.
  • Jika server tidak ada setelah penambahan, atau masih tercantum setelah penghapusan, jalankan perintah add atau remove yang sama lagi.

Server di-host oleh Anthropic dan tidak mendukung OAuth lokal

Anda memulai proses masuk untuk server MCP yang URL-nya mengarah ke host konektor yang di-host oleh Anthropic yang melakukan autentikasi melalui penyedia identitas pihak ketiga. Host ini termasuk microsoft365.mcp.claude.com, gmail.mcp.claude.com, dan gcal.mcp.claude.com. Claude Code menolak memulai alur OAuth lokalnya untuk host ini, baik dari panel /mcp maupun claude mcp login, karena proses masuknya hanya berfungsi melalui claude.ai.

"gmail" is Anthropic-hosted and doesn't support local OAuth. Connect it via Settings → Connectors on claude.ai (requires `claude login`), then it'll be available here automatically.

Yang harus dilakukan:

  • Hapus entri Anda dengan claude mcp remove <name>, agar entri tersebut tidak menyembunyikan konektor claude.ai di URL yang sama
  • Setelah menghapusnya, hubungkan layanan di claude.ai/customize/connectors, dalam keadaan masuk ke akun yang Anda gunakan di Claude Code. Setelah terhubung, konektor muncul di Claude Code secara otomatis jika metode autentikasi aktif Anda adalah login langganan claude.ai

Server menolak header Authorization yang dibuat oleh headersHelper yang dikonfigurasi

Server MCP yang header Authorization-nya disediakan oleh headersHelper menjawab koneksi dengan HTTP 401 atau 403, sehingga Claude Code melaporkan koneksi sebagai gagal. Karena helper menyediakan header Authorization, Claude Code tidak melakukan fallback ke OAuth untuk server tersebut:

Server rejected the Authorization header minted by the configured headersHelper (HTTP 401). Check that the helper command returns a valid credential for this MCP endpoint — OAuth fallback is disabled when the helper supplies Authorization.

Claude Code menjalankan ulang helper pada setiap upaya koneksi, sehingga retry setelah penolakan sementara, seperti race rotasi token, dapat berhasil dengan kredensial baru.

Yang harus dilakukan:

Sebelum v2.1.248, Claude Code menjalankan discovery OAuth untuk server yang helper-nya menyediakan header Authorization. Discovery tersebut dapat gagal dengan Incompatible auth server: does not support dynamic client registration alih-alih melaporkan kredensial yang ditolak.

Tool permintaan izin MCP tidak ditemukan

Tool yang Anda teruskan ke --permission-prompt-tool tidak termasuk di antara tool MCP yang terhubung ketika run pertama kali memerlukan keputusan izin, baik karena server-nya tidak pernah terhubung maupun karena tidak ada server terhubung yang mengekspos tool dengan nama tersebut. Claude Code tetap mengirimkan prompt Anda: run non-interaktif keluar dengan error ini, dan exit code 1, pada panggilan tool pertama, sehingga tidak menghasilkan jawaban meskipun permintaan telah dibuat. Sebelum prompt pertama, Claude Code menunggu hingga timeout koneksi per server selama 30 detik yang diatur oleh MCP_TIMEOUT agar server tersebut terhubung. Sebelum v2.1.206, startup tidak menunggu server selesai terhubung, sehingga server yang lambat dimulai tetapi sehat juga menghasilkan error ini.

Error: MCP tool mcp__permissions__approve (passed via --permission-prompt-tool) not found. Available MCP tools: none

Daftar setelah Available MCP tools: menyebutkan tool MCP yang terhubung.

Yang harus dilakukan:

  • Periksa bahwa server dimulai dan tetap terhubung: jalankan claude mcp list di direktori yang sama dan pastikan server tercantum sebagai terhubung
  • Pastikan nama tool cocok dengan nama mcp__<server>__<tool> yang diekspos server
  • Jika server membutuhkan lebih dari 30 detik untuk dimulai, naikkan MCP_TIMEOUT

Port callback OAuth sudah digunakan

Ketika Anda masuk ke server MCP jarak jauh dengan OAuth, Claude Code memulai listener lokal untuk menerima callback masuk. Jika port yang dibutuhkan listener tersebut dipegang oleh proses lain, proses masuk gagal dengan pesan ini. Hal ini sebagian besar terjadi dengan port callback tetap yang diatur melalui variabel MCP_OAUTH_CALLBACK_PORT atau --callback-port, karena tanpanya Claude Code memilih port yang tersedia.

OAuth callback port <port> is already in use — another process may be holding it. Run `lsof -ti:<port> -sTCP:LISTEN` to find it.

Di Windows, perintah yang disarankan adalah netstat -ano | findstr :<port> sebagai gantinya.

Yang harus dilakukan:

  • Jalankan perintah dari pesan untuk menemukan proses yang memegang port, lalu hentikan proses tersebut atau tunggu hingga selesai
  • Jika program lain membutuhkan port tersebut secara permanen, daftarkan redirect URI yang berbeda pada server dan atur port-nya dengan MCP_OAUTH_CALLBACK_PORT atau --callback-port, mana pun yang Anda gunakan
  • Kemudian mulai proses masuk lagi, misalnya dengan memilih server di /mcp

Tidak ada port yang tersedia untuk redirect OAuth

Ketika Anda masuk ke server MCP jarak jauh dengan OAuth, Claude Code memulai listener lokal untuk menerima callback masuk. Proses masuk gagal dengan pesan ini ketika Claude Code tidak dapat mengikat port lokal untuknya. Sesuatu di mesin mencegahnya mendengarkan di 127.0.0.1, misalnya perangkat lunak keamanan atau kebijakan sandbox yang menolak listener lokal.

No available ports for OAuth redirect

Sebelum v2.1.268, Claude Code tidak melakukan fallback ke port yang ditetapkan oleh sistem operasi, sehingga pesan ini juga muncul ketika hanya port yang dipilihnya sendiri yang tidak dapat diikat. Hal itu dapat terjadi pada host Windows di mana Hyper-V mencadangkan rentang port yang mencakup port yang dipilih oleh Claude Code.

Yang harus dilakukan:

  • Periksa apakah perangkat lunak keamanan atau kebijakan sandbox memblokir proses agar tidak mendengarkan di 127.0.0.1, dan izinkan Claude Code untuk mengikat port lokal
  • Kemudian mulai proses masuk lagi, misalnya dengan memilih server di /mcp

/security-review gagal tanpa origin/HEAD

/security-review membangun konteks tinjauannya dengan membuat diff branch Anda terhadap origin/HEAD, ref lokal yang mencatat branch mana yang menjadi default pada remote origin Anda. Ketika ref tersebut tidak ada, perintah git yang mengumpulkan diff gagal dan tinjauan berhenti sebelum dimulai.

Error: Shell command failed for pattern "!`git diff --name-only origin/HEAD...`": [stderr]
fatal: ambiguous argument 'origin/HEAD...': unknown revision or path not in the working tree.
Use '--' to separate paths from revisions, like this:
'git <command> [<revision>...] -- [<file>...]'

Pesan tersebut mungkin mengutip git log atau git diff yang berbeda. Git membuat origin/HEAD hanya ketika remote mengiklankan branch default dan refspec fetch Anda mencakupnya, yang dilakukan oleh git clone penuh dari remote yang memiliki commit. Ref tersebut tidak ada dalam penyiapan berikut:

  • Checkout single-branch atau CI, yang mengambil refspec terlalu sempit
  • Remote yang HEAD sisi servernya menunjuk ke branch yang tidak pernah di-push siapa pun
  • Repositori tanpa remote origin, atau yang tidak pernah Anda fetch

Claude Code menampilkan error yang sama untuk skill apa pun yang menyisipkan konteks dinamis, dan perintah sisipan yang gagal membatalkan pemanggilan skill tersebut. Dua string serupa muncul sebelum perintah dijalankan sama sekali:

  • Shell command permission check failed for pattern "...": pemeriksaan izin perintah tidak mengizinkannya. Pemeriksaan izin pada perintah sisipan membahas hasil mana yang membatalkan di setiap mode izin dan cara menyetujui perintah sebelumnya dengan allowed-tools
  • Skill <name> requires bash (`shell: bash` in frontmatter) but Git Bash was not found: frontmatter skill menuntut bash pada mesin yang tidak memilikinya. Instal Git for Windows atau ubah frontmatter menjadi shell: powershell. Lihat Cara perintah sisipan dijalankan

Yang harus dilakukan:

  • Buat ref dengan menyebutkan branch default remote Anda: git remote set-head origin <default-branch>. Ini berfungsi setiap kali ref pelacakan lokal origin/<default-branch> ada. Jika tidak ada, seperti pada clone single-branch, fetch branch tersebut terlebih dahulu: jalankan git remote set-branches --add origin <branch>, lalu git fetch origin, lalu jalankan ulang perintah set-head. Jalankan ulang /security-review.
  • Jika Anda lebih suka tidak menyebutkan branch, jalankan git fetch origin lalu git remote set-head origin --auto, yang menanyakan kepada remote branch mana yang menjadi default-nya. Perintah ini gagal dengan error: Cannot determine remote HEAD ketika remote tidak mengiklankan branch default, karena remote kosong atau HEAD-nya menunjuk ke branch yang tidak pernah di-push siapa pun; sebutkan branch secara eksplisit sebagai gantinya. Perintah ini gagal dengan error: Not a valid ref ketika clone Anda tidak mengambil branch tersebut; perluas refspec seperti di atas terlebih dahulu.
  • Jika repositori tidak memiliki remote, tambahkan dengan git remote add origin <url> dan lakukan fetch sebelum membuat ref. Jika remote kosong, push branch Anda terlebih dahulu dengan git push -u origin HEAD dan sebutkan branch tersebut dalam perintah set-head; origin/HEAD kemudian menunjuk ke branch yang baru saja Anda push, sehingga /security-review melihat diff kosong sampai branch menyimpang darinya.

Input harus diberikan saat menggunakan `--print`

claude tanpa argumen memerlukan stdout berupa terminal untuk memulai UI interaktif. Ketika stdout dialihkan, atau konsol bukan terminal sungguhan, seperti PowerShell ISE dan beberapa panel output IDE, claude berjalan secara non-interaktif sebagai gantinya. Itu adalah mode yang sama dengan claude -p, yang memerlukan prompt, sehingga pesan menyebutkan --print meskipun Anda tidak meneruskan flag tersebut. Meneruskan -p/--print tanpa prompt dan tanpa apa pun yang di-pipe ke stdin menghasilkan error yang sama di mana saja.

Error: Input must be provided either through stdin or as a prompt argument when using --print

Yang harus dilakukan:

  • Untuk penggunaan interaktif, jalankan claude di terminal sungguhan: Windows Terminal atau konsol PowerShell alih-alih ISE, dan terminal terintegrasi IDE Anda alih-alih panel output
  • Untuk penggunaan sekali jalan, teruskan prompt: claude -p "your question", atau pipe dengan echo "your question" | claude -p

Input hanya berisi spasi kosong

Dalam mode non-interaktif, Claude Code menolak prompt yang seluruhnya terdiri dari spasi, tab, atau baris baru alih-alih mengirimkannya, karena API menolak pesan tanpa teks yang terlihat. Pesan yang Anda lihat bergantung pada dari mana prompt kosong tersebut berasal:

  • Argumen prompt atau stdin yang di-pipe untuk claude -p: claude keluar dengan Error: Input contained only whitespace. Provide a prompt with text through stdin or as a prompt argument when using --print
  • Pesan yang dikirimkan ke sesi --input-format stream-json atau Agent SDK yang sedang berjalan: Claude Code mengakhiri giliran tanpa memanggil model dan sesi tetap dapat digunakan. Penolakan tiba sebagai pesan informasi dan sebagai teks hasil giliran: Blank prompt — the message was only whitespace, so nothing was sent to the model.

Sebelum v2.1.229, Claude Code mengirimkan pesan yang hanya berisi spasi kosong ke API, yang menolak permintaan dengan error 400.

Yang harus dilakukan:

  • Sertakan teks yang terlihat dalam prompt. Jika skrip membangun prompt dari variabel atau file, periksa bahwa sumbernya tidak kosong sebelum memanggil Claude Code.

Input stream-json membawa lebih dari 256M karakter tanpa baris baru

Program Anda mengirimkan lebih dari 268.435.456 karakter di stdin tanpa baris baru ke run claude -p --input-format stream-json, sehingga Claude Code mencetak error ini ke stderr dan keluar dengan kode 1 alih-alih mem-buffer lebih banyak input. Pesan menyatakan batas tersebut sebagai 256M. Sebelum v2.1.257, Claude Code mem-buffer input seperti itu tanpa batas, menambah memori hingga proses crash atau dihentikan.

Error: stream-json input carried over 256M characters with no newline. Each stream-json message must be a single newline-terminated JSON line: either the producer is not newline-terminating its messages, or one message exceeded this budget.

Input sepanjang ini tanpa baris baru biasanya berarti produsennya sama sekali bukan produsen stream-json, seperti file biner atau output log biasa yang tidak sengaja di-pipe. Satu pesan yang melebihi batas gagal dalam pemeriksaan yang sama.

Yang harus dilakukan:

  • Periksa apa yang di-pipe ke stdin. Dengan --input-format stream-json, setiap pesan harus berupa satu baris JSON yang diakhiri baris baru
  • Untuk mengirim teks biasa, hapus --input-format stream-json; claude -p membaca prompt teks biasa dari stdin secara default

Perintah tidak dikenal

Dalam sesi terminal interaktif, Anda mengirimkan nama / yang tidak cocok dengan perintah apa pun dalam sesi ini, sehingga Claude Code melaporkan nama tersebut alih-alih menjalankan apa pun:

Unknown command: /hepl. Did you mean /help?

Claude Code menyarankan nama perintah atau alias terdekat yang dicantumkan menu dalam sesi ini. Ketika tidak ada yang mendekati, pesan berakhir setelah nama tersebut. Penyebabnya biasanya salah satu dari berikut ini:

Claude Code menjawab nama / yang tidak cocok dengan cara ini hanya dalam sesi terminal interaktif. Di setiap sesi lain, Claude Code mengirimkan prompt ke Claude sebagai pesan biasa, dengan catatan bahwa perintah tidak dijalankan dan daftar perintah yang dapat dijalankan Claude dalam sesi tersebut. Sesi tersebut meliputi:

Untuk perintah bawaan yang tidak dapat berjalan di salah satu sesi tersebut, Claude Code tetap menjawab bahwa perintah tidak tersedia alih-alih mengirimkannya ke Claude. Sebelum v2.1.274, hanya sesi cloud dan routine yang mengirimkan nama yang tidak cocok ke Claude. Sebelum v2.1.273, sesi tersebut juga menjawab Unknown command.

Claude Code tidak memperlakukan setiap prompt yang diawali dengan / sebagai perintah. Claude Code mengirimkan prompt ke Claude sebagai pesan biasa ketika kata pertama setelah / diawali dengan tanda baca, seperti /-- yang membuka komentar dokumentasi Lean, atau berupa path seperti /var/log/syslog.

Sebelum v2.1.236, jika Anda menekan Enter saat menu perintah mencantumkan kecocokan terdekat untuk nama yang Anda ketik, Claude Code menjalankan kecocokan tersebut, sehingga salah ketik seperti /hepl menjalankan /help alih-alih menghasilkan pesan ini.

Yang harus dilakukan:

  • Jalankan nama yang disarankan, atau ketik / diikuti sebagian nama untuk melihat apa yang tersedia dalam sesi ini
  • Jika Claude Code melaporkan perintah yang terdokumentasi sebagai tidak dikenal, periksa barisnya di referensi perintah untuk persyaratan yang disebutkannya

Diff terlalu besar untuk ultrareview

Diff antara branch Anda dan branch dasar, termasuk perubahan yang belum di-commit dan yang sudah di-stage, melebihi batas ukuran untuk ultrareview, sehingga /code-review ultra dan subperintah claude ultrareview menolak tinjauan sebelum sesi cloud dimulai. Tinjauan yang ditolak tidak menggunakan run gratis dan tidak menagih kredit penggunaan. Pesan menyebutkan batas yang berlaku, ukuran diff Anda, dan file yang menyumbang baris perubahan terbanyak. Sebelum v2.1.216, pesan hanya menampilkan statistik diff mentah.

Diff is too large for ultrareview: 812 files, 96,410 lines changed (limits: 500 files, 8,000 lines). Largest files: package-lock.json (41,904 lines), dist/bundle.js (18,210 lines), src/generated/api.ts (9,876 lines). Pass a closer base branch (`/code-review ultra <branch>`) to narrow the scope, or split the change.

Meninjau pull request menerapkan batas yang sama; bentuk pesan tersebut diawali dengan PR #<N> is too large for ultrareview dan menyebutkan jumlah file dan baris PR tersebut.

Yang harus dilakukan:

  • Teruskan branch dasar yang lebih dekat dengan pekerjaan Anda, seperti /code-review ultra develop, sehingga tinjauan hanya mencakup diff terhadap branch tersebut
  • Pecah perubahan menjadi branch yang lebih kecil dan tinjau masing-masing. File yang disebutkan dalam pesan menyumbang baris perubahan terbanyak, jadi mulailah dengan memindahkan file-file tersebut ke branch-nya sendiri.

Tidak dapat menemukan merge-base dengan branch dasar

/code-review ultra dan subperintah claude ultrareview meninjau diff antara branch Anda dan branch dasar, yang memerlukan commit yang dimiliki bersama oleh keduanya. Ketika git merge-base tidak menemukannya, Claude Code menolak tinjauan sebelum sesi cloud dimulai. Pada clone yang dapat diverifikasi Claude Code sebagai lengkap, dengan setidaknya satu branch, Claude Code melakukan fallback ke meninjau setiap file yang dilacak alih-alih menolak. Anda melihat penolakan ini ketika branch dasar sama sekali tidak dapat ditemukan, ketika Claude Code tidak dapat memverifikasi bahwa clone Anda lengkap, atau pada repositori langka di mana diff seluruh pohon tidak memungkinkan, seperti format objek SHA-256.

Could not find merge-base with main. Pass the base branch explicitly (e.g. `/code-review ultra develop`) or make sure you're in a git repo with a main branch.

Petunjuk setelah kalimat pertama bergantung pada apa yang diamati Claude Code:

  • Anda tidak meneruskan branch dasar: Claude Code membandingkan dengan branch default repositori dan menyarankan untuk meneruskan branch dasar Anda secara eksplisit, seperti pada contoh di atas
  • Anda meneruskan branch dasar yang sudah ada di clone Anda: petunjuk berbunyi Make sure <branch> exists locally or on origin (try `git fetch origin <branch>`)
  • Anda meneruskan branch dasar yang tidak ada di clone Anda: Claude Code mengambilnya dari origin sebelum membandingkan. Petunjuk berbunyi <branch> was fetched from origin but shares no history with HEAD. If another branch is your real base, pass it explicitly (`/code-review ultra <branch>`); ketika Claude Code tidak dapat mengetahui apakah clone Anda dangkal, Claude Code menyarankan git fetch --unshallow origin sebagai gantinya. Sebelum v2.1.221, petunjuk menyarankan git fetch --unshallow origin untuk setiap branch dasar yang diambil, dan pada clone yang lengkap perintah tersebut gagal dengan fatal: --unshallow on a complete repository does not make sense.

Yang harus dilakukan:

  • Jika branch lain adalah branch dasar Anda yang sebenarnya, teruskan secara eksplisit: /code-review ultra <branch>
  • Jika clone Anda mungkin tidak memiliki riwayat lengkap, jalankan git fetch --unshallow origin dan jalankan ulang tinjauan

Checkout Anda tidak memiliki branch

Checkout dapat memiliki commit tetapi tidak memiliki branch: jika Anda menjalankan git init diikuti dengan git fetch <url> dan git checkout FETCH_HEAD, Anda mendapatkan HEAD terlepas (detached) tanpa ref. Claude Code mengemas repositori Anda sebagai git bundle untuk mengunggahnya bagi ultrareview, dan Claude Code tidak dapat membuat bundle dari repositori yang tidak memiliki branch atau ref lain, sehingga /code-review ultra dan subperintah claude ultrareview menolak tinjauan sebelum sesi cloud dimulai.

Your checkout has no branches (detached HEAD only), which cloud review can't bundle. Create one first — `git checkout -b <name>` — then rerun /code-review ultra.

Sebelum v2.1.221, Claude Code mencoba meninjau setiap file yang dilacak dalam checkout ini, dan unggahan gagal.

Yang harus dilakukan:

  • Buat branch pada commit Anda saat ini dengan git checkout -b <name>, lalu jalankan ulang tinjauan

Tidak ada akun GitHub yang terhubung ke akun Claude Anda

Anda menjalankan /code-review ultra <PR#> atau claude ultrareview <PR#>, dan sebelum membuat sesi cloud, Claude Code menanyakan kepada server apakah akun GitHub yang terhubung ke akun Claude Anda dapat menjangkau repositori PR tersebut. Tidak ada akun yang terhubung, atau koneksinya kedaluwarsa, sehingga clone di cloud akan gagal dan Claude Code menolak peluncuran. Claude Code tidak menggunakan run gratis atau menagih kredit penggunaan untuk peluncuran yang ditolak.

Ultrareview clones <owner>/<repo> in the cloud with the GitHub account connected to your Claude account, and none is connected (or the connection expired). To fix: run /web-setup to reuse your GitHub CLI login, or connect an account at https://claude.ai/connect-github — then re-run /code-review ultra 1234 (allow a minute after connecting).

Ketika /web-setup tidak tersedia dalam sesi Anda, pesan hanya menyebutkan link claude.ai.

Yang harus dilakukan:

  • Jalankan /web-setup untuk menghubungkan login GitHub CLI Anda ke akun Claude Anda, atau hubungkan akun di claude.ai/connect-github
  • Jalankan ulang tinjauan satu menit setelah terhubung

Sebelum v2.1.248, Claude Code tidak memeriksa hal ini sebelum peluncuran.

Akun GitHub yang terhubung tidak dapat melihat repositori

Anda menjalankan /code-review ultra <PR#> atau claude ultrareview <PR#>, dan akun GitHub yang terhubung ke akun Claude Anda tidak dapat membaca repositori PR tersebut, sehingga clone di cloud akan gagal dan Claude Code menolak peluncuran. Claude Code tidak menggunakan run gratis atau menagih kredit penggunaan untuk peluncuran yang ditolak.

Your connected GitHub account can't see <owner>/<repo> — usually the Claude GitHub app isn't installed on <owner> or wasn't granted this repo (web-connected accounts need it for private repos), or a different GitHub account is connected. To fix: run /web-setup to reuse your GitHub CLI login, or install the app at https://github.com/apps/claude/installations/new — then re-run /code-review ultra 1234.

Ketika /web-setup tidak tersedia dalam sesi Anda, pesan hanya menyebutkan instalasi aplikasi.

Yang harus dilakukan:

  • Jika CLI gh lokal Anda dapat membaca repositori, jalankan /web-setup untuk menghubungkan login tersebut ke akun Claude Anda
  • Jalankan ulang tinjauan setelah perubahan

Sebelum v2.1.248, Claude Code tidak memeriksa hal ini sebelum peluncuran.

Preflight GitHub App gagal secara sementara

Anda memulai sesi cloud dari repositori lokal, dan dua langkah gagal bersamaan. Claude Code tidak dapat membuat atau mengunggah bundle repositori Anda. Sebelum unggahan, Claude Code memeriksa apakah layanan cloud dapat meng-clone repositori dari GitHub, dan alih-alih jawaban pasti, pemeriksaan tersebut berakhir dengan error yang dapat diatasi dengan retry, seperti error jaringan, timeout, atau error server sementara. Pesan lengkap diawali dengan apa yang menghentikan bundle, misalnya Could not upload repo bundle (<error>), dan diakhiri dengan kalimat preflight:

Could not upload repo bundle (<error>). The GitHub App preflight failed transiently (network or service hiccup) — retry in a moment to start from GitHub instead

Yang harus dilakukan:

  • Jalankan ulang perintah setelah beberapa saat. Ketika pemeriksaan GitHub berhasil, Claude Code dapat memulai sesi dari clone GitHub, sehingga unggahan yang gagal tidak lagi memblokir peluncuran
  • Jika retry terus gagal, bagian awal pesan menyebutkan apa yang menghentikan unggahan. Jika penyebab tersebut adalah sesuatu yang dapat Anda perbaiki, perbaikilah agar sesi dapat dimulai dari repositori lokal Anda

Sebelum v2.1.251, Claude Code mengakhiri pesan dengan Please set up GitHub on https://claude.ai/code bahkan ketika pemeriksaan GitHub hanya gagal secara sementara, dan saran penyiapan tidak dapat mengatasi kegagalan sementara.

Unggahan repositori tidak dapat mengikuti pengaturan git

Anda memulai sesi cloud yang mengunggah repositori lokal Anda, atau ultrareview dari sebuah branch, dan unggahan tidak dapat mengikuti salah satu pengaturan git yang menentukan aturan atribut mana yang berlaku untuk file Anda. Jika unggahan dilanjutkan dan melewatkan suatu aturan, file yang diubah git sebelum menyimpannya, seperti file yang dienkripsi oleh clean filter, dapat sampai ke cloud dalam keadaan seperti di disk. Claude Code menolak unggahan sebagai gantinya, dan tidak ada yang diunggah:

Not uploading this working tree: core.ignoreCase (which decides whether .gitattributes patterns match file names regardless of letter case) is set in <file>, and the upload cannot follow that setting, so a file git would change before storing it (to encrypt it, for example) could be uploaded as it is on disk. Move the core.ignoreCase line into this repository’s .git/config or directly into your ~/.gitconfig, then retry.

Pesan menyebutkan pengaturan dan tempat pengaturan tersebut diatur, dan diakhiri dengan perbaikan untuk kasus yang Anda alami. Penolakan yang sama muncul untuk core.attributesFile dan attr.tree, masing-masing dengan perbaikannya sendiri.

Pesan dapat menyebutkan file konfigurasi yang ditarik oleh konfigurasi git Anda melalui direktif include atau includeIf, bahkan ketika kondisi direktif tersebut tidak berlaku untuk repositori ini.

Yang harus dilakukan:

  • Terapkan perbaikan yang ada di kalimat terakhir pesan

GitHub tidak terhubung ke akun Claude Anda

Anda memulai sesi cloud dari repositori lokal Anda, misalnya dengan /autofix-pr. Tidak ada akun GitHub yang terhubung ke akun Claude Anda, atau koneksinya kedaluwarsa, sehingga Claude Code menolak peluncuran:

GitHub isn't connected to your Claude account, so this repository can't be cloned in the cloud. Run /web-setup to connect with your GitHub CLI login, or connect on the web at https://claude.ai/connect-github

Ketika Anda membuat routine dengan /schedule, pesan yang sama muncul sebagai catatan penyiapan yang menyebutkan repositori; catatan tersebut tidak memblokir pembuatan routine.

Yang harus dilakukan:

  • Jalankan /web-setup untuk menghubungkan login GitHub CLI Anda ke akun Claude Anda, atau hubungkan akun di claude.ai/connect-github. Lihat Opsi autentikasi GitHub untuk perbedaan keduanya.
  • Jalankan ulang perintah satu menit setelah terhubung

Sebelum v2.1.268, Claude Code melaporkan hal ini sebagai kegagalan sementara pemeriksaan Claude GitHub App dan menyarankan untuk mencoba ulang atau menginstal aplikasi; tidak satu pun yang menghubungkan akun GitHub.

Otorisasi single sign-on diperlukan

Anda menjalankan /install-github-app dan memilih repositori yang organisasinya menerapkan SAML single sign-on. Sebelum penyiapan, Claude Code memeriksa akses Anda ke repositori dengan GitHub CLI, dan GitHub menolak pemeriksaan tersebut karena token gh Anda belum diotorisasi untuk organisasi tersebut. Wizard menampilkan peringatan beserta langkah-langkah untuk melakukan otorisasi:

Single sign-on authorization needed
<owner>/<repo> belongs to an organization that enforces SAML single sign-on, and your GitHub CLI token isn't authorized for it yet.

Yang harus dilakukan:

  • Otorisasi ulang login GitHub CLI Anda dengan scope repo dan workflow dengan menjalankan gh auth refresh -h github.com -s repo,workflow, dan otorisasi organisasi ketika GitHub meminta single sign-on
  • Jika Anda melakukan autentikasi dengan personal access token di GH_TOKEN, buka github.com/settings/tokens, pilih Configure SSO pada token tersebut, dan otorisasi organisasi
  • Jalankan /install-github-app lagi

Sebelum v2.1.273, Claude Code menampilkan peringatan Admin permissions required untuk kondisi ini sebagai gantinya.

Gagal melanjutkan percakapan

Claude Code tidak dapat membaca atau memproses transkrip tersimpan untuk sesi yang Anda pilih dari pemilih claude --resume, sehingga Claude Code mengakhiri proses alih-alih melanjutkan dalam keadaan termuat sebagian. Pesan menyertakan perintah untuk mencoba ulang:

Failed to resume the conversation.
Run claude --resume <session-id> to retry, or claude to start a new session.

Claude Code keluar dengan kode 1 setelah menampilkan pesan. Pemilih /resume di dalam sesi yang sedang berjalan melaporkan Failed to resume conversation dalam percakapan sebagai gantinya, dan sesi Anda saat ini tetap berjalan. Sebelum v2.1.216, resume yang gagal dari pemilih claude --resume tetap berada pada spinner Resuming conversation… tanpa batas waktu alih-alih menampilkan pesan ini.

Yang harus dilakukan:

  • Jalankan claude --resume <session-id> dengan ID sesi dari pesan untuk mencoba ulang
  • Jika setiap retry gagal dengan cara yang sama, jalankan claude update dan lanjutkan lagi. Versi sebelum v2.1.275 menggagalkan resume ketika transkrip tersimpan berisi entri yang tidak dapat dibacanya.
  • Jika retry gagal lagi, jalankan claude untuk memulai sesi baru

Tidak ditemukan percakapan dengan ID sesi tersebut

Anda meneruskan ID sesi ke claude --resume <session-id> dan tidak ada transkrip tersimpan yang cocok dengannya:

No conversation found with session ID: <session-id>

Claude Code keluar dengan kode 1 setelah menampilkan pesan. Claude Code mencari di proyek saat ini terlebih dahulu, lalu di setiap proyek lain di mesin ini untuk ID tersebut. Sebelum v2.1.223, pencarian berhenti di direktori proyek saat ini dan git worktree-nya, jadi lanjutkan dari direktori tempat sesi terakhir bekerja.

Penyebab umum:

  • ID salah ketik: untuk run non-interaktif, ID adalah field session_id dari output --output-format json
  • Transkrip terhapus: Claude Code menghapus transkrip setelah periode retensi, 30 hari secara default, mengikuti aturan pembersihan retensi
  • Mesin berbeda: Claude Code menyimpan transkrip secara lokal, jadi lanjutkan sesi di mesin tempat sesi tersebut dijalankan
  • Salinan duplikat: jika Anda menyalin direktori proyek di bawah ~/.claude/projects sehingga dua transkrip membawa ID yang sama, Claude Code melaporkan pesan ini alih-alih melanjutkan salah satu salinan secara acak

Yang harus dilakukan:

  • Untuk sesi interaktif, buka pemilih sesi dengan claude --resume dan tekan Ctrl+A untuk memperluasnya ke setiap proyek di mesin ini, lalu pilih sesi
  • Sesi yang dibuat dengan claude -p atau Agent SDK tidak muncul di pemilih, jadi periksa ulang ID terhadap session_id yang dicetak oleh run asli Anda

Windows melaporkan kesalahan (EBADF) saat Claude Code membaca file transkrip sesi ini

Anda melanjutkan sesi di Windows, file transkrip yang tersimpan untuk sesi tersebut terbuka dengan normal, lalu pembacaannya gagal dengan kesalahan sistem EBADF. Kesalahan sistem tidak menyebutkan mengapa pembacaan gagal, sehingga pesan tersebut menyarankan kemungkinan penyebab dan hal yang dapat dicoba:

Windows reported an error (EBADF) when Claude Code read this session's transcript file, although the file had opened normally. This can happen when other software intercepts file reads — security, encryption or endpoint-management tools, for example. If it keeps happening for this conversation, try excluding the folder that holds Claude Code's session transcripts from such software (the .claude folder in your user profile, unless the app or CLAUDE_CONFIG_DIR points Claude Code elsewhere), or adding Claude Code to its allowed applications, then resume again.

Pesan tersebut muncul setelah baris kegagalan perintah itu sendiri, seperti Failed to resume session <session-id>. Perintah claude --resume atau claude -p keluar dengan kode 1 setelah menampilkannya. Setelah /resume di dalam sesi, sesi Anda saat ini tetap berjalan.

Yang harus dilakukan:

  • Kecualikan folder yang menyimpan transkrip sesi Anda dari perangkat lunak yang memindai atau mencegat pembacaan file, seperti alat keamanan, enkripsi, atau manajemen endpoint. Secara default, transkrip berada di bawah %USERPROFILE%\.claude\projects, atau di bawah direktori yang ditunjuk oleh CLAUDE_CONFIG_DIR
  • Jika Anda tidak dapat menambahkan pengecualian, tambahkan Claude Code ke daftar aplikasi yang diizinkan oleh perangkat lunak tersebut
  • Lanjutkan sesi kembali

Sebelum v2.1.282, kegagalan ini muncul tanpa penjelasan: claude --resume <session-id> berakhir pada Failed to resume session <session-id>, dan proses -p hanya mencetak teks kesalahan sistem, seperti Failed to resume session: EBADF: bad file descriptor, read.

Tidak dapat beralih renderer dalam sesi ini

Saat Anda beralih renderer, Claude Code memulai ulang prosesnya. Anda menjalankan /tui dalam sesi yang tidak mau dimulai ulang oleh Claude Code, sehingga Claude Code tidak beralih dan tidak menyimpan apa pun. Pesan yang Anda lihat menunjukkan penyebabnya:

  • Cannot switch renderers while work is running in the background: Anda memiliki pekerjaan latar belakang yang sedang berjalan dan akan ditinggalkan oleh proses mulai ulang, seperti shell latar belakang atau subagent. Tunggu hingga pekerjaan selesai atau hentikan dengan /tasks, lalu jalankan /tui fullscreen atau /tui default lagi
  • Cannot switch renderers in this session: sesi memiliki pembatasan yang tidak dapat diteruskan Claude Code ke proses yang dimulai ulang. Sebelum v2.1.234, Claude Code tetap memulai ulang dan sesi yang diluncurkan kembali berjalan tanpa pembatasan tersebut

Dalam pesan pembatasan, bagian di dalam tanda kurung menyebutkan pembatasan yang ditemukan Claude Code:

Cannot switch renderers in this session — it has restrictions a restart can't carry over (permission rules set for this session only). Nothing was changed. Running /tui fullscreen in a session started without them switches every later session too.

Setiap alasan yang dapat ditampilkan pesan di dalam tanda kurung:

  • launch flags: a custom system prompt, a tool allowlist, or restricted settings: Anda memulai sesi dengan flag yang tidak diteruskan kembali oleh Claude Code ke proses yang dimulai ulang. Flag ini mencakup --system-prompt, --system-prompt-file, --append-system-prompt-file, allowlist --tools, --setting-sources, dan --permission-prompt-tool
  • permission rules set for this session only: sebuah pembaruan izin dari hook atau pemanggil SDK menambahkan aturan deny atau ask dengan tujuan session. Aturan allow yang berlingkup sesi tidak memicu penolakan ini. Proses mulai ulang akan menghapusnya, dan Claude Code akan meminta izin lagi sebagai gantinya
  • ask-before-running rules with no command-line form: pembaruan izin dari hook atau pemanggil SDK menambahkan aturan ask di samping aturan yang diteruskan kembali oleh Claude Code sebagai --allowed-tools dan --disallowed-tools. Tidak ada flag untuk aturan ask
  • permission rules a command line cannot carry intact dan added directories a command line cannot carry intact: pembaruan izin menambahkan aturan atau jalur direktori di tengah sesi. Baris perintah proses yang dimulai ulang tidak dapat membawa teksnya sebagai nilai yang sama

Yang harus dilakukan:

  • Dalam sesi yang dimulai tanpa pembatasan tersebut, jalankan /tui fullscreen, atau /tui default untuk beralih kembali. Claude Code menyimpan pengaturan tui di sana

Tidak dapat membuka Claude Desktop

Anda menjalankan /desktop atau aliasnya /app dalam sesi, atau claude --desktop di shell Anda, dan perintah sistem yang digunakan Claude Code untuk membuka Claude Desktop gagal. Setelah /desktop, sesi tetap berada di terminal; claude --desktop mencetak pesan tanpa awalan Error: dan keluar dengan status 1.

Teks di dalam tanda kurung menyebutkan perintah yang gagal, beserta status keluarnya dan baris pertama output kesalahannya jika perintah tersebut menghasilkannya. Di macOS perintah tersebut adalah open, seperti dalam contoh ini; di Windows perintahnya adalah rundll32:

Error: Couldn't open Claude Desktop (`open` exited 1: LSOpenURLsWithRole() failed for the URL claude://resume?session=<session-id> with error -10814). Open Claude Desktop and try again.

Yang harus dilakukan:

  • Buka Claude Desktop sendiri, lalu jalankan /desktop atau claude --desktop lagi
  • Untuk membaca output kesalahan lengkap dari perintah yang gagal, aktifkan logging debug dengan /debug dan jalankan /desktop lagi, atau jalankan claude --desktop --debug-file <path>, lalu periksa log debug

Sebelum v2.1.285, pesan tersebut diakhiri dengan Open Claude Desktop and run /desktop again. Sebelum v2.1.275, pesannya adalah Failed to open Claude Desktop. Please try opening it manually. dan tidak menyebutkan apa yang gagal.

/terminal-setup membiarkan keymap Zed Anda tidak berubah

Anda menjalankan /terminal-setup di Zed, dan Claude Code tidak dapat menyelesaikan pembaruan pada keymap.json Zed Anda, sehingga file tersebut dibiarkan seperti semula.

Setiap pesan menyebutkan jalur ke keymap Anda dan diakhiri dengan blok pintasan keyboard yang dapat Anda tambahkan sendiri:

Couldn't update your Zed keymap, so it was left unchanged.
To add the binding yourself, add this block to the keymap array in <path to keymap.json>:
{ "context": "Terminal", "bindings": { "shift-enter": ["terminal::SendText", "\u001b\r"] } }

Baris pertama pesan menyebutkan penyebabnya:

  • Couldn't read your Zed keymap, so it was left unchanged.: Claude Code tidak dapat membaca file tersebut, misalnya karena hak akses file
  • Your Zed keymap isn't a readable list of keybindings, so it was left unchanged.: file berhasil dibaca tetapi tidak dapat di-parse sebagai array blok pintasan keyboard, bahkan dengan komentar // dan koma di akhir yang diizinkan
  • Couldn't back up your Zed keymap; not modifying it.: Claude Code tidak dapat menyalin file ke cadangan .bak di sebelahnya, sehingga tidak mengubah apa pun
  • Couldn't update your Zed keymap, so it was left unchanged.: hasil penggabungan tidak terverifikasi sebagai keymap valid yang berisi pintasan tersebut, sehingga Claude Code membuangnya alih-alih menulisnya. Blok pintasan keyboard dengan kunci duplikat dapat menyebabkan hal ini

Yang harus dilakukan:

  • Salin blok dari pesan ke dalam array tingkat atas di keymap.json Anda pada jalur yang disebutkan pesan
  • Untuk isn't a readable list of keybindings, perbaiki kesalahan sintaks, atau jadikan nilai tingkat atas file sebagai array, lalu jalankan /terminal-setup lagi

Sebelum v2.1.247, /terminal-setup tidak dapat mem-parse keymap Zed yang menggunakan komentar // atau koma di akhir, dan mengganti seluruh file hanya dengan pintasannya sendiri sambil melaporkan bahwa pintasan tersebut telah terpasang. Untuk memulihkan keymap yang telah diganti oleh versi sebelumnya, gunakan file cadangan .bak yang dijelaskan di Memasukkan prompt multibaris.

Laporan penggunaan skill tidak tersedia pada koneksi ini

Anda menjalankan /skill-doctor melalui Remote Control, dari ponsel atau browser Anda. Claude Code tidak mengirim laporan penggunaan skill melalui Remote Control dan membalas dengan pesan ini sebagai gantinya:

Skill usage reports are not available on this connection.

Yang harus dilakukan:

  • Jalankan /skill-doctor di terminal pada mesin tempat sesi berjalan, atau jalankan claude -p "/skill-doctor" di sana

Gaya output kustom tidak dapat dipilih melalui Remote Control

Anda menjalankan /output-style dari aplikasi seluler atau web melalui Remote Control, atau perintah tersebut datang dalam pesan yang diteruskan ke dalam sesi. Karena giliran seperti itu mungkin tidak berasal dari pemilik akun, Claude Code hanya menampilkan dan memilih gaya bawaan pada giliran tersebut, dan menambahkan pemberitahuan ini setiap kali perintah menampilkan daftar gaya atau tidak mengenali nama yang Anda berikan. Nama gaya kustom mendapatkan balasan yang sama seperti nama yang tidak ada:

Custom output styles can't be selected over Remote Control or from a relayed message. Select one in the session itself, or pick a built-in style here.

Yang harus dilakukan:

  • Pilih gaya bawaan, misalnya /output-style concise
  • Untuk menggunakan gaya kustom, atur outputStyle di .claude/settings.local.json proyek, atau jalankan /output-style <style> di terminal sesi itu sendiri jika ada

Gaya output disimpan ke pengaturan lokal yang tidak dimuat oleh sesi ini

Anda mencoba beralih gaya output dengan /output-style <style> atau /config outputStyle=<style> dalam sesi yang sumber pengaturannya tidak menyertakan local. Contohnya adalah sesi Agent SDK yang settingSources-nya tidak menyertakan "local" dan sesi CLI yang dimulai dengan nilai --setting-sources yang tidak menyertakan local. Kedua perintah menyimpan gaya ke .claude/settings.local.json, file yang tidak pernah dibaca kembali oleh sesi seperti itu, sehingga Claude Code menolak alih-alih menulis pengaturan yang tidak akan berpengaruh:

Output styles are saved to local settings (.claude/settings.local.json), which this session doesn't load, so the style can't be changed here.

Yang harus dilakukan:

  • Tambahkan local ke sumber pengaturan sesi dan beralih lagi
  • Atur kunci outputStyle di file pengaturan yang dimuat oleh sesi, seperti .claude/settings.json di proyek atau ~/.claude/settings.json. Di TypeScript SDK, atur outputStyle di dalam objek settings inline sebagai gantinya; lihat Mengaktifkan gaya output

Kesalahan plugin

Kesalahan ini berasal dari konfigurasi plugin dan marketplace. Untuk masalah plugin yang tidak menghasilkan salah satu pesan di halaman ini, seperti URL marketplace yang tidak memuat atau plugin yang terpasang tetapi tidak muncul, lihat Pemecahan masalah plugin.

plugin eval is currently in early access

Anda menjalankan claude plugin eval atau claude plugin eval init dan keluar dengan kode 1 dengan salah satu pesan ini sebelum melakukan apa pun:

`plugin eval` is currently in early access
`plugin eval` is currently unavailable

Pesan pertama berarti build Anda lebih lama dari v2.1.269, versi pertama di mana perintah tersedia secara umum. Pesan kedua berarti Anthropic telah mematikan perintah di sisi server; tidak ada yang di mesin Anda yang menghidupkannya kembali.

Yang harus dilakukan:

  • Jalankan claude --version, kemudian claude update, dan jalankan perintah lagi dalam sesi baru. Lihat persyaratan untuk plugin evals
  • Jika Anda melihat pesan kedua pada build saat ini, coba lagi nanti setelah claude update lain

Marketplace is registered from an untrusted source

Marketplace terdaftar dengan nama yang dicadangkan untuk marketplace Anthropic resmi, tetapi sumber terdaftarnya bukan repositori GitHub anthropics. Claude Code memeriksa ulang nama yang dicadangkan setiap kali memuat atau menyegarkan marketplace, sehingga marketplace dan plugin yang dipasang darinya berhenti memuat. Sebelum v2.1.205, entri yang terdaftar sebelum namanya dicadangkan terus memuat.

Marketplace "claude-community" is registered from an untrusted source: The name 'claude-community' is reserved for official Anthropic marketplaces. Only repositories from 'github.com/anthropics/' can use this name. To fix it, remove the marketplace and re-add it from the official source.

Untuk marketplace yang sumbernya bukan repositori GitHub atau URL Git, seperti direktori lokal, kalimat tengah berbunyi can only be used with GitHub sources from the 'anthropics' organization sebagai gantinya. claude plugin marketplace add menjalankan pemeriksaan yang sama, dan menolak nama yang dicadangkan dengan Failed to add marketplace: diikuti oleh kalimat nama yang dicadangkan yang sama.

Yang harus dilakukan:

  • Jika marketplace sudah terdaftar, jalankan claude plugin marketplace remove <name>, kemudian tambahkan lagi dari repositori github.com/anthropics resmi
  • Jika Anda menerbitkan marketplace pihak ketiga yang menggunakan nama sebelum dicadangkan, ubah namanya dan minta pengguna untuk menambahkannya kembali dari sumber Anda
  • Lihat daftar nama yang dicadangkan di bawah Marketplace schema

Marketplace name is another spelling of a reserved name

Nama marketplace bukan sendiri nama yang dicadangkan, tetapi Claude Code memperlakukannya sebagai ejaan lain dari satu. Reserved names mencantumkan ejaan mana yang dihitung sebagai nama yang dicadangkan. Claude Code menolak nama seperti itu ketika Anda menambahkan marketplace:

Failed to add marketplace: "claude.code.plugins" is another spelling of "claude-code-plugins", a reserved marketplace name.

Ketika marketplace sudah terdaftar dengan nama seperti itu, entrinya berhenti memuat, dan /plugin, claude plugin install, dan claude plugin update memperingatkan:

known_marketplaces.json has an entry named "claude.code.plugins", another spelling of the reserved marketplace name "claude-code-plugins", so it is ignored. Remove it with: claude plugin marketplace remove claude.code.plugins

Ketika nama memerlukan quoting shell, penolakan saat penambahan berbunyi This marketplace's name is another spelling of "<reserved>", a reserved marketplace name. It is not exactly the reserved name it appears to be.

Yang harus dilakukan:

  • Ubah nama marketplace menjadi nama yang tidak mengeja nama yang dicadangkan dan tambahkan lagi
  • Untuk peringatan entri yang diabaikan, jalankan perintah claude plugin marketplace remove yang diberikannya, atau hapus entri dari ~/.claude/plugins/known_marketplaces.json

Claude Code refuses the marketplace name

Nama marketplace yang terdaftar menyamar sebagai marketplace Anthropic resmi di bawah aturan yang bagian itu daftar.

Jika marketplace terdaftar dengan nama seperti itu sebelum pemeriksaan memblokir, marketplace dan plugin yang dipasang darinya berhenti memuat, karena Claude Code memeriksa nama setiap kali membaca katalog marketplace. Ketika nama meniru yang resmi, claude plugin list dan tab Errors /plugin melaporkan setiap plugin yang terpengaruh dengan pesan yang dimulai:

Claude Code refuses the marketplace name "anthropic-plugins-v2"

Untuk nama yang meniru, kesalahan marketplace itu sendiri berbunyi Claude Code refuses this marketplace's name: it looks like one of Anthropic's own sebagai gantinya. claude plugin marketplace add menolak nama yang menyamar apa pun dengan Marketplace name impersonates an official Anthropic/Claude marketplace.

Sebelum v2.1.282, claude plugin list dan /plugin melaporkan plugin dari nama yang meniru sebagai gagal memuat juga, tanpa menamai nama marketplace sebagai penyebabnya.

Yang harus dilakukan:

  • Jalankan claude plugin marketplace remove <name>. Ini juga mencopot plugin yang dipasang dari marketplace dan menghapus data tersimpannya
  • Untuk menyimpan marketplace sebagai gantinya, tunggu sampai pemeliharanya mengganti namanya, kemudian jalankan claude plugin marketplace update <name>
  • Jika Anda menerbitkan marketplace, ubah namanya di marketplace.json Anda; pengguna kemudian memperbarui marketplace daripada menghapusnya

Marketplace is already added from a different source

Anda mengonfirmasi penambahan marketplace melalui /plugin install <plugin> --marketplace <source>, dan katalog yang Claude Code ambil dari sumber itu menamai dirinya sama dengan marketplace yang sudah Anda tambahkan dari sumber berbeda. Claude Code menyimpan marketplace yang ada daripada menggantinya, dan plugin tidak terpasang.

Marketplace "acme-tools" is already added from a different source (github:acme/plugins). To use this source instead, remove that marketplace first with /plugin marketplace remove acme-tools.

Yang harus dilakukan:

  • Jika marketplace yang sudah Anda tambahkan adalah yang Anda inginkan, pasang dari sana berdasarkan nama: /plugin install <plugin>@<name>
  • Untuk beralih ke sumber baru, jalankan /plugin marketplace remove <name>, kemudian coba instalasi lagi

Plugin command references user\_config in a shell command

Hook plugin, monitor, atau perintah MCP headersHelper mereferensikan opsi ${user_config.KEY} plugin, dan string yang disubstitusi akan diteruskan ke shell. Nilai yang dikonfigurasi berisi $(...), backtick, atau ; akan berjalan sebagai kode di sana, jadi Claude Code menolak untuk memulai komponen daripada mensubstitusi nilai. Pemeriksaan berjalan pada template perintah, jadi kesalahan muncul bahkan ketika tidak ada nilai yang dikonfigurasi. Sebelum v2.1.207, nilai disubstitusi ke dalam perintah shell.

Kata-katanya tergantung pada permukaan mana yang mereferensikan opsi. Hook bentuk shell melaporkan:

Hook from plugin formatter@acme-tools references ${user_config.*} in a shell-form command. The substituted value would be re-parsed by the shell. Use exec form instead — {"command": "<executable>", "args": ["${user_config.KEY}", ...]} — or read $CLAUDE_PLUGIN_OPTION_<KEY> from the hook's environment. Command: ./scripts/notify.sh ${user_config.webhook_url}

Monitor melaporkan:

Monitor "deploy-status" from plugin deploy-tools references ${user_config.*} in its command. The substituted value would be passed to a shell. Monitor commands cannot safely reference ${user_config.*}; have the monitor script read the value from a config file or prompt instead.

MCP headersHelper melaporkan:

headersHelper for MCP server 'internal-api' references ${user_config.*}. The substituted value would be passed to a shell; read the value inside the helper script instead (e.g. from an env var set in the server's "env" block).

Yang harus dilakukan:

  • Untuk hook, tambahkan array args sehingga berjalan dalam exec form, di mana setiap ${user_config.KEY} menjadi satu argumen tanpa shell di antaranya. Atau lepaskan referensi dan baca variabel lingkungan $CLAUDE_PLUGIN_OPTION_<KEY> di dalam skrip
  • Untuk monitor, lepaskan referensi dan buat skrip monitor membaca nilai dari file konfigurasi
  • Untuk headersHelper, pindahkan ${user_config.KEY} ke bidang headers server, yang tidak diurai shell, atau baca nilai di dalam skrip helper

Plugin archive integrity check failed

Entri marketplace plugin menggunakan sumber archive dengan pin sha256, dan digest file yang diunduh tidak cocok dengan pin. Claude Code menolak instalasi, jadi tidak ada yang berubah dalam cache plugin. Ketidakcocokan memiliki tiga kemungkinan penyebab:

  • File di URL berubah setelah penulis menghitung pin
  • Penulis memasukkan digest yang salah di entri marketplace
  • URL melayani file yang berbeda dari yang penulis pin
Plugin archive integrity check failed for https://artifacts.example.com/claude-plugins/my-plugin.zip: expected sha256 6bfa50e3d2e00c052b46abe51fff89346ac803e45771f76dcf6df1ab74cca5e1, got ac52220c0914ef8ca6a602e4a7362f88d30fb021110f72a6d15b68c3fe7df2b7. The archive was not installed. Verify the sha256 in the marketplace entry, or that the URL serves the intended file.

Yang harus dilakukan:

  • Jika Anda menerbitkan plugin, hitung ulang digest file yang tepat yang dilayani URL, misalnya dengan shasum -a 256 my-plugin.zip, atau Get-FileHash -Algorithm SHA256 my-plugin.zip di PowerShell, dan perbarui sha256 di entri marketplace
  • Jika Anda memasang plugin, jalankan /plugin marketplace update <name> untuk menyegarkan katalog jika entri telah diperbaiki, kemudian coba instalasi lagi
  • Jika digest masih tidak setuju setelah penyegaran, tanyakan kepada pemilik marketplace file mana yang mereka pin sebelum memasang

Path escapes plugin directory

Jalur komponen plugin, yang dideklarasikan dalam plugin.json plugin atau dalam entri marketplace, diselesaikan di luar direktori plugin itu sendiri. Claude Code menghapus jalur itu dan memuat sisa plugin. Nama komponen dalam pesan, seperti commands atau hooks, menamai bidang yang mendeklarasikan jalur.

commands path escapes plugin directory: ./../shared.md

Dalam output perintah claude plugin, kesalahan yang sama berbunyi Path escapes plugin directory: ./../shared.md (commands).

Claude Code menolak baik jalur yang menunjuk di luar plugin seperti yang ditulis, seperti ../shared-utils, dan symlink yang mengarah di luar plugin dan bukan salah satu yang aturan symlink marketplace izinkan. Untuk symlink, pesan juga mengatakan di mana jalur diselesaikan:

commands path escapes plugin directory: ./commands/deploy.md — it resolves to /home/user/shared/deploy.md, outside the plugin directory

Di macOS dan Linux, Claude Code juga menolak jalur komponen yang berisi backslash di mana pun di dalamnya, bahkan ketika jalur tetap berada di dalam plugin. Plugin yang jalur komponen menggunakan pemisah gaya Windows memuat di Windows dan memicu penolakan ini di platform lain:

commands path escapes plugin directory: ./commands\deploy.md — its path contains a backslash, which is not resolved reliably on this platform

Sebelum v2.1.251, Claude Code memuat jalur commands yang dideklarasikan dalam entri marketplace bahkan ketika menunjuk di luar direktori plugin.

Sebelum v2.1.257, pemeriksaan hanya melihat ejaan jalur, bukan di mana symlink mengarah.

Yang harus dilakukan:

  • Pindahkan file yang direferensikan ke dalam direktori plugin dan arahkan jalur ke sana dengan jalur relatif ./
  • Jika jalur adalah symlink ke file di luar plugin, ganti symlink dengan salinan file
  • Jika pesan mengatakan jalur berisi backslash, tulis jalur dengan garis miring maju, misalnya ./commands/deploy.md
  • Untuk berbagi file dengan plugin lain di marketplace yang sama, tautkan dengan symlink di dalam direktori plugin, mengikuti aturan symlink

Path could not be checked

Claude Code menanyakan sistem operasi apakah jalur plugin ada dan mendapat kesalahan selain "tidak ditemukan", jadi tidak memuat apa yang dinamai jalur. Berapa banyak plugin yang memuat tergantung pada jalur mana yang gagal:

  • Salah satu dari lokasi komponen default plugin, seperti folder skills/, file monitors/monitors.json, atau SKILL.md di root plugin: komponen lain plugin masih memuat
  • Direktori plugin itu sendiri: tidak ada yang memuat dari plugin itu

Anda tidak melihat kesalahan ini untuk jalur yang tidak ada sama sekali. Di /plugin, kesalahan muncul di bawah plugin dan menamai jalur dan kode yang dikembalikan sistem operasi:

skills path could not be checked: /home/user/my-plugin/skills (ELOOP)

Di claude plugin list, kesalahan yang sama berbunyi Path not found: /home/user/my-plugin/skills (skills, ELOOP).

Penyebab yang menghasilkan kesalahan ini termasuk:

  • ELOOP: symlink dalam jalur menunjuk pada dirinya sendiri atau membentuk loop
  • EIO atau ESTALE: jalur berada di mount jaringan yang rusak atau basi
  • EACCES: salah satu direktori di atas jalur menolak Anda izin untuk melintasinya

Yang harus dilakukan:

  • Ganti symlink yang menunjuk pada dirinya sendiri dengan folder nyata, atau hapus
  • Jika jalur berada di mount jaringan, pasang kembali bagian
  • Jika kodenya adalah EACCES, pulihkan izin eksekusi Anda di direktori di atas jalur
  • Jalankan /reload-plugins setelah memperbaiki jalur, atau mulai ulang Claude Code, untuk memuat plugin atau komponen

Sebelum v2.1.265, Claude Code memperlakukan folder komponen default yang tidak dapat diperiksa sebagai tidak ada dan memuat plugin tanpa komponen itu, tanpa kesalahan.

Marketplace entry path does not stay inside the marketplace directory

Entri marketplace plugin mendeklarasikan jalur sumber yang Claude Code tidak dapat diselesaikan ke lokasi di dalam direktori marketplace itu sendiri, jadi plugin tidak memasang atau memuat. Penolakan mencakup:

  • Jalur entri yang absolut, memanjat keluar dari marketplace dengan .., atau dieja seperti jalur jaringan
  • Di macOS dan Linux, jalur entri yang berisi backslash di mana pun setelah ./ terkemuka
  • Entri di marketplace yang diambil dari sumber jarak jauh, seperti git atau URL, yang mencapai targetnya melalui symlink yang diselesaikan di luar direktori marketplace
  • Entri relatif di marketplace yang ditambahkan dari URL langsung ke marketplace.json: Claude Code hanya mengunduh file itu, jadi tidak ada file plugin lokal untuk jalur yang dinamai. Lihat Plugins with relative paths fail in URL-based marketplaces

claude plugin install melaporkan penolakan seperti ini:

Cannot install my-plugin@my-marketplace: its marketplace entry path does not stay inside the marketplace directory (an absolute, climbing, network-shaped, backslash-containing or link-traversing entry, an entry of a fetched marketplace that resolves or opens outside its tree — or a relative entry in a url-catalog marketplace, which has no local directory)

Ketika entri plugin yang sudah terpasang gagal pemeriksaan yang sama, claude plugin list menampilkan plugin sebagai failed to load dengan:

Plugin source path refused: ./my-plugin does not stay inside its marketplace directory. Check that the marketplace entry has a plain relative path.

Yang harus dilakukan:

  • Jika Anda memelihara marketplace, tulis source entri sebagai jalur relatif biasa dengan garis miring maju, seperti ./plugins/my-plugin, dan jaga agar symlink apa pun yang dilintasinya menunjuk ke dalam direktori marketplace
  • Jika Anda menambahkan marketplace dari URL langsung, entri relatif tidak dapat diselesaikan. Minta penulis marketplace untuk menggunakan sumber plugin lain, atau tambahkan marketplace dari repositori git-nya sebagai gantinya

Failed to load marketplace configuration

Claude Code menyimpan marketplace plugin yang telah Anda tambahkan dalam file registri di ~/.claude/plugins/known_marketplaces.json. Perintah plugin yang memerlukan registri, seperti claude plugin install, gagal dengan salah satu dari dua pesan ketika Claude Code tidak dapat menggunakan file:

  • Failed to load marketplace configuration: file bukan JSON yang valid, atau tidak dapat dibaca. File kosong gagal dengan cara ini juga.
  • Marketplace configuration file is corrupted: file adalah JSON yang valid tetapi isinya tidak cocok dengan skema registri.

Dengan file kosong, claude plugin install melaporkan:

✘ Failed to install plugin "my-plugin": Failed to load marketplace configuration: JSON Parse error: Unexpected EOF

Sebelum v2.1.246, claude plugin install tidak melaporkan kegagalan ini.

Yang harus dilakukan:

  • Buka ~/.claude/plugins/known_marketplaces.json dan perbaiki JSON, atau perbaiki entri yang pesan namakan sebagai tidak cocok dengan skema registri
  • Jika Anda tidak dapat memperbaikinya, hapus file atau ganti isinya dengan {}, kemudian tambahkan kembali setiap marketplace dengan claude plugin marketplace add <source>. Claude Code mendaftarkan kembali marketplace yang dideklarasikan pengaturan pengguna atau terkelola Anda dalam extraKnownMarketplaces lain kali Anda memulainya di folder yang telah Anda percayai.

Plugin is required by your organization

Anda menjalankan claude plugin disable, atau menggunakan tab Installed /plugin, untuk mematikan plugin yang disinkronkan dari claude.ai yang organisasi Anda tandai sebagai diperlukan:

Plugin "<name>@synced" is required by your organization and can't be disabled here. Contact your admin to change it.

Claude Code tidak menyimpan apa pun dan plugin tetap diaktifkan.

Ketika Anda mencoba menonaktifkan plugin yang diperlukan oleh plugin yang diperlukan, Claude Code menolak dengan cara yang sama, dengan pesan yang menamai plugin yang diperlukan yang membutuhkannya.

Yang harus dilakukan:

  • Tanyakan admin organisasi claude.ai Anda untuk mengubah status yang diperlukan plugin di claude.ai

Plugin was not uninstalled

Anda menjalankan claude 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.

Ketika 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.

✘ Failed to uninstall plugin "formatter": "formatter" was not uninstalled: it is still switched on in /home/user/project/.claude/settings.local.json, although the settings change reported no error. It is still installed. Take it out of "enabledPlugins" in that file yourself, then uninstall it again.

Bagian tengah pesan menamai file dan penyebabnya:

  • it is still switched on in <file>, although the settings change reported no error: penulisan pengaturan melaporkan kesuksesan tetapi entri masih ada ketika file dibaca kembali
  • it is still switched on in <file>, and the settings change failed (<error>): file tidak dapat disimpan, untuk alasan dalam tanda kurung
  • <file> is there and could not be read: file ada tetapi tidak dapat dibaca sebagai pengaturan, misalnya karena bukan JSON yang valid, jadi mungkin masih mengaktifkan plugin
  • <file> (not read: it is on a network path or is a link to one, or could not be checked): Claude Code tidak membaca file pengaturan proyek atau lokal karena file, atau folder .claude yang menahannya, adalah tautan yang mengarah ke lokasi jaringan, atau karena tidak dapat memeriksa jalur itu

claude plugin uninstall keluar 1, dan dengan --json hasilnya membawa failureCode: "settings_still_on". /plugin menampilkan pesan yang sama.

Yang harus dilakukan:

  • Ikuti kalimat terakhir pesan: perbaiki atau ganti file pengaturan yang dinamainya, atau hapus entri plugin dari enabledPlugins di file itu sendiri, kemudian jalankan pencopotan lagi

Kesalahan alat

Kesalahan ini berasal dari alat bawaan Claude. Claude memperbaiki sebagian besar kesalahan alat secara otomatis. Ketika salah satu memerlukan perubahan dari Anda, daftar What to do kesalahan tersebut mengatakan apa yang harus diubah.

Agent would be spawned with zero tools

Setiap entri dalam tools list subagent gagal cocok dengan alat yang dapat digunakan, jadi Claude Code menolak untuk meluncurkan subagent: tanpa alat, itu tidak bisa bertindak. Pesan mengelompokkan entri Anda berdasarkan apa yang salah:

  • Unrecognized: entri tidak cocok dengan nama alat apa pun, biasanya kesalahan ketik seperti Grpe untuk Grep.
  • Not available to subagents: entri menamai alat nyata yang subagent tidak bisa gunakan. Subagent latar belakang menyimpan set alat bawaan yang lebih kecil, jadi entri yang hanya dapat digunakan subagent foreground mendarat di sini ketika subagent akan berjalan di latar belakang, yang merupakan default. Jika Anda mencantumkan Agent, pesan melaporkannya di bawah grup berikutnya.
  • Matched no tools in this session: entri valid tetapi tidak ada alat dalam sesi saat ini yang cocok sekarang, seperti mcp__github__* tanpa server MCP GitHub yang terhubung, atau Agent untuk subagent pada batas kedalaman.

Menghilangkan bidang tools tidak pernah memicu penolakan ini. Jika Anda membiarkan daftar tools kosong, atau disallowedTools menghapus setiap entri di dalamnya, Claude Code juga melewati penolakan dan meluncurkan subagent tanpa alat.

Sebelum v2.1.208, subagent diluncurkan tanpa alat dan dapat mengembalikan hasil yang kosong atau membingungkan.

Agent 'code-reviewer' would be spawned with zero tools — refusing. Its tools list resolved to nothing: unrecognized [Grpe]. Fix the agent's tools frontmatter or pass a different subagent_type.

What to do:

  • Perbaiki setiap entri yang dinamai kesalahan terhadap alat yang tersedia untuk subagent
  • Hapus entri untuk alat yang tidak dimiliki sesi, seperti alat MCP dari server yang tidak terhubung
  • Untuk alat yang subagent latar belakang lepaskan, seperti CronCreate, hapus entri. Untuk menyimpan alat, matikan mode fork dan minta Claude menjalankan subagent di foreground
  • Hapus bidang tools alih-alih mencantumkan alat untuk memberikan subagent setiap alat yang tersedia untuk subagent
  • Untuk daftar tools yang hanya berisi Agent, naikkan batas kedalaman atau berikan agen setidaknya satu alat lain: Claude Code menahan Agent pada batas itu, jadi daftar tanpa yang lain di dalamnya diselesaikan ke tidak ada alat

File is covered by a Read deny rule

Alat Edit atau Write dipanggil pada jalur yang cocok dengan aturan penolakan Read, termasuk membuat file baru di jalur itu. Kedua alat mengubah konten yang harus dapat dibaca Claude, jadi Claude Code menolak panggilan sebelum akses file apa pun. NotebookEdit tidak tercakup oleh aturan penolakan Read. Sebelum v2.1.228, aturan memblokir alat Edit saja, dan sebelum v2.1.208, hanya aturan penolakan Edit yang memblokir edit.

File is covered by a Read deny rule in your permission settings and cannot be edited.

Ketika Claude Code menolak alat Write, pesan berakhir and cannot be written sebagai gantinya.

What to do:

  • Jika Claude harus dapat mengubah file, hapus atau persempit aturan penolakan Read di /permissions atau di settings
  • Jika file harus tetap tidak tersentuh, simpan aturan dan tambahkan aturan penolakan Edit untuk jalur yang sama untuk memblokir alat NotebookEdit juga

Path cannot contain null bytes

Panggilan alat file path atau pattern argument mengandung null byte, yang sistem file dan alat pencarian tidak dapat terima. Read, Write, Edit, NotebookEdit, Glob, dan Grep memeriksa ini, dan pesan menamai alat dan argument:

Read file_path cannot contain null bytes (\0). Remove the null byte and try again.

Panggilan alat gagal, Claude melihat kesalahan, dan putaran berlanjut.

What to do:

  • Tidak ada di sisi Anda: kesalahan dikembalikan ke Claude sebagai hasil alat, dan pesan itu sendiri memberitahu Claude untuk menghapus null byte dan coba lagi

Sebelum v2.1.281, null byte dalam jalur Read, Write, Edit, atau NotebookEdit mengakhiri seluruh putaran dengan kesalahan yang menamai Path contains null bytes, dan alat tidak pernah berjalan.

subagent\_type is required

subagent_type is required: the general-purpose agent is not available in this session. Available agents: ...

Claude memanggil Agent tool tanpa subagent_type, dan sesi ini tidak memiliki subagent tujuan umum untuk kembali. Itu adalah kasus dalam dua pengaturan:

What to do:

  • Biasanya tidak ada: pesan mencantumkan subagent yang dimiliki sesi, jadi Claude dapat mencoba lagi dengan salah satunya
  • Jika Claude terus gagal, tambahkan general-purpose ke allowlist tools: Agent(...), atau batalkan CLAUDE_AGENT_SDK_DISABLE_BUILTIN_AGENTS

Sebelum v2.1.235, panggilan yang sama gagal dengan Agent type 'general-purpose' not found.

Memory index is over its read limit

Claude menulis ke indeks memori otomatis MEMORY.md dan meninggalkannya di atas salah satu batas bacanya: 200 baris atau 25KB. Penulisan berhasil, tetapi hanya 200 baris pertama atau 25KB, mana pun yang lebih dulu, dimuat di awal sesi, jadi semuanya melampaui batas dijatuhkan setiap kali indeks dibaca. Sebelum v2.1.210, indeks yang melampaui batas secara diam-diam dipotong pada beban berikutnya tanpa sinyal waktu penulisan.

Error: this write left the memory index at MEMORY.md at 214 lines, over its 200-line read limit. The write succeeded, but everything past the limit is silently dropped each time the index is loaded — entries at the end are already invisible to readers. Rewrite it to under 140 lines now: keep one line per entry, move detail into topic files, and merge or drop stale entries.

Hanya konten yang dimuat yang dihitung terhadap batas. Frontmatter YAML dan komentar HTML tingkat blok dilepas sebelum indeks dimuat, jadi mereka dikecualikan dari pengukuran. Sebelum v2.1.211, Claude Code mengukur file mentah, dan frontmatter atau komentar dapat memicu kesalahan ini bahkan ketika konten yang dimuat cocok.

Claude Code memberikan kesalahan kepada Claude setelah penulisan daripada mencetaknya sebagai spanduk di terminal Anda, jadi Anda mungkin hanya memperhatikannya dalam transkrip.

Ketika penulisan Claude membawa file dekat dengan batas tanpa melewatinya, Claude Code mengembalikan pengingat yang lebih ringan untuk mengompak indeks alih-alih kesalahan ini.

What to do:

  • Biarkan Claude menulis ulang MEMORY.md, atau minta: simpan satu baris per entri, pindahkan detail ke file topik, dan gabungkan atau lepaskan entri basi
  • Untuk memangkas indeks sendiri, lihat Audit and edit your memory

pkill pattern matches the Claude Code process

Perintah pkill dalam panggilan alat Bash menggunakan pola, biasanya dengan -f, yang cocok dengan proses Claude Code itu sendiri, jadi Claude Code menolak perintah alih-alih membiarkannya mengakhiri sesi. Claude Code menguji pola dengan pgrep sebelum menjalankan pkill dan menolak ketika ID proses miliknya ada dalam hasil. Pemeriksaan berjalan di Linux saja; di macOS, pkill berjalan tanpa modifikasi. Sebelum v2.1.214, perintah berjalan, dan pola yang cocok membunuh sesi Claude Code di tengah-putaran.

pkill: refusing to run — this pattern matches the Claude CLI process (PID 12345). Narrow the pattern, or target your own children with `pkill -P $$ ...`.

Penolakan muncul dalam hasil alat Bash daripada sebagai spanduk di terminal Anda, dan Claude biasanya menyesuaikan perintah dengan sendirinya.

What to do:

  • Persempit pola sehingga hanya cocok dengan proses yang dimaksudkan, misalnya jalur lengkap biner target daripada substring pendek
  • Untuk menghentikan proses yang dimulai oleh shell saat ini, gunakan pkill -P $$ dengan pola, yang membatasi kecocokan ke proses anak shell itu sendiri

Failed to write to a teammate's inbox

Claude Code tidak dapat menulis pesan ke file kotak surat rekan kerja di bawah ~/.claude/teams/{team-name}/inboxes/, jadi penerima tidak menerima apa pun. Penulisan gagal ketika Claude Code tidak dapat membuat atau memperbarui file, misalnya karena disk penuh, direktori tidak dapat ditulis, atau agen lain menahan kunci kotak surat terlalu lama. Sebelum v2.1.224, Claude Code melaporkan pesan sebagai terkirim bahkan ketika penulisan gagal.

Kesalahan muncul dalam hasil alat agen pengirim daripada sebagai spanduk di terminal Anda, dan teksnya memberitahu Claude untuk mencoba lagi:

Failed to write to researcher's inbox — nothing was sent. Try again, or message the lead.

Pesan protokol tim agen terstruktur gagal dengan cara yang sama, dan kesalahan menamai pesan yang tidak terkirim: ketika Claude Code tidak dapat menulis persetujuan rencana, penolakan rencana, permintaan shutdown, atau penolakan shutdown, kesalahan berbunyi Failed to write the <message> to <name>'s inbox — nothing was sent. plan approval dalam daftar itu adalah keputusan pemimpin yang menyetujui rencana rekan kerja; pengajuan rencana rekan kerja adalah pesan plan approval request yang terpisah. Pesan itu dan dua pesan protokol lainnya membawa teks pesan mereka sendiri dan konsekuensi:

  • Failed to write the plan approval request to the lead's inbox — plan not submitted; try again: rencana rekan kerja tidak pernah mencapai pemimpin, dan rekan kerja tetap dalam mode rencana sampai pengajuan ulang berhasil
  • The permission request could not be delivered to the team lead (mailbox write failed): permintaan izin rekan kerja tidak pernah mencapai pemimpin, jadi tidak ada yang menyetujui panggilan alat
  • The confirmation could not be written to team-lead's inbox.: persetujuan shutdown itu sendiri berlaku dan rekan kerja keluar; hanya konfirmasi kepada pemimpin yang hilang

Ketika Anda mengirim pesan ke rekan kerja sendiri, mengetik @name diikuti oleh pesan dalam sesi pemimpin, kegagalan yang sama muncul sebagai notifikasi, Couldn't write to @name's inbox — message not sent. Try again., dan Claude Code menyimpan teks Anda di kotak prompt sehingga Anda dapat mengirimnya lagi.

What to do:

  • Minta pengirim untuk mengirim ulang pesan; pertentangan untuk kunci kotak surat bersifat sementara dan jelas saat mencoba lagi
  • Periksa ruang disk gratis, dan periksa bahwa ~/.claude/teams dan file di bawahnya dapat ditulis oleh pengguna Anda

Teammate's agent definition was not restored

Claude mengirim pesan ke rekan kerja tim agen yang dihentikan, dan Claude Code membawanya kembali tanpa menerapkan kembali definisi subagent yang dihasilkannya, karena file definisinya berasal dari folder tanpa kepercayaan yang disimpan. Pemberitahuan mengikuti laporan resume dalam hasil alat agen pengirim:

Its agent definition was not restored: the folder its definition file came from is not trusted (source: projectSettings), so the teammate is running with the team-essential tools and no custom instructions. To restore it, the user needs to run Claude Code in that folder once and accept the trust dialog (the --debug log names the folder); do not change trust settings on the user's behalf.

Pemeriksaan berlaku untuk definisi di direktori .claude/agents/ dari proyek atau direktori --add-dir, dan menerima dialog kepercayaan untuk folder induk tidak memuaskannya.

What to do:

  • Jalankan claude di folder yang dinamai debug log dan terima dialog kepercayaan. Definisi diterapkan kembali saat Claude Code membawa rekan kerja kembali berikutnya; Anda tidak perlu memulai ulang sesi pemimpin
  • Atau atur entri hasTrustDialogAccepted ke true di ~/.claude.json, menggunakan kunci projects["<path>"] yang tepat yang dicetak log debug

Message too large for cross-session delivery

Pesan lintas sesi Claude ke sesi lain Anda di mesin ini terlalu panjang untuk dikirim. Claude Code menolaknya, dan sesi penerima tidak mendapat apa pun. Penolakan muncul dalam hasil alat sesi pengirim, bukan sebagai spanduk di terminal Anda. Ini menamai kedua ukuran dan cara membuat pesan cocok:

Failed to send to api-worker: Message too large for cross-session delivery: the serialized message is 1,203,844 characters and the limit is 1,048,576. Shorten the message text — put bulk content in a file the recipient can read rather than in the message — or split it into smaller messages.

Mengirim ulang teks yang sama gagal dengan cara yang sama.

What to do:

  • Minta Claude untuk merangkum pesan, atau untuk menempatkan konten massal dalam file dan mengirim jalur file
  • Minta Claude untuk membagi konten di beberapa pesan yang lebih pendek

Sebelum v2.1.235, Claude Code melaporkan pesan yang terlalu besar sebagai terkirim. Sesi penerima menjatuhkannya tanpa dibaca.

Too many messages to this session just now

Claude mengirim ledakan cepat pesan lintas sesi ke salah satu sesi Anda di mesin ini, dan ledakan mencapai apa yang diterima kotak surat sesi itu. Claude Code menolak pengiriman berikutnya, dan sesi penerima tidak mendapat apa pun darinya. Penolakan muncul dalam hasil alat sesi pengirim, bukan sebagai spanduk di terminal Anda:

Failed to send to api-worker: Too many messages to this session just now: 30 were sent recently and more would be dropped by its rate limit, so this one was not sent. Batch what remains into one message, or wait a little before sending more.

What to do:

  • Biasanya tidak ada: Claude mengelompokkan konten yang tersisa menjadi satu pesan, atau menunggu sebelum mengirim lebih banyak
  • Jika Anda sendiri yang memicu ledakan, minta Claude untuk menggabungkan apa yang tersisa menjadi satu pesan

Sebelum v2.1.236, Claude Code melaporkan pengiriman ini sebagai terkirim. Sesi penerima menjatuhkannya tanpa dibaca.

Cross-session message was dropped at the recipient session's inbox

Claude mengirim pesan lintas sesi ke sesi lain Anda di mesin ini, dan kotak surat sesi itu membuangnya sebelum Claude dalam sesi itu membacanya. Baris menamai alamat penerima dan, ketika penerima memberikan alasan, menambahkan alasan setelah tanda hubung:

Cross-session message was dropped at the recipient session's inbox (recipient: uds:/tmp/cc-socks/13605.sock) and not delivered — its queue of undelivered peer messages was full. Claude was told not to resend right away.

Satu baris dapat mencakup beberapa pesan yang dijatuhkan. Kemudian dimulai dalam bentuk jamak, misalnya Cross-session messages (12) were dropped. Untuk menemukan sesi mana yang dimiliki alamat, bandingkan dengan baris Peer address yang ditampilkan /status di setiap sesi.

Setelah tanda hubung, baris memberikan satu atau lebih alasan ini:

  • its queue of undelivered peer messages was full: penerima sudah menyimpan sebanyak pesan yang tidak terkirim dari sesi lain seperti yang diterima antrian
  • you sent faster than that session accepts: pesan sesi pengirim tiba lebih cepat daripada penerima menerima dari satu pengirim
  • it repeated your previous message: pesan identik dengan yang dikirim sesi pengirim ke penerima ini tidak lama sebelumnya
  • a relay loop between sessions was cut: pesan melanjutkan rantai sesi yang saling berkirim pesan, dan rantai telah melewati penerima terlalu banyak kali atau tumbuh terlalu panjang

What to do:

  • Asumsikan penerima tidak pernah melihat pesan yang dijatuhkan. Claude Code memberitahu Claude hal yang sama, dan memberitahunya untuk menyertakan apa pun yang masih penting dalam satu pesan nanti alih-alih mengirim ulang segera
  • Jika sesi Anda saling mengirim pembaruan sering, minta Claude mengirim lebih sedikit, pesan yang lebih besar, seperti satu laporan ketika sesi menyelesaikan pekerjaannya
  • Untuk a relay loop between sessions was cut, ketik instruksi berikutnya ke salah satu sesi sendiri. Pesan yang dikirim Claude sebagai respons terhadap prompt Anda sendiri memulai rantai baru

Sebelum v2.1.238, sesi pengirim tidak mendapat laporan ketika kotak surat penerima membuang pesan.

Refusing to send a cross-session message

Sebelum Claude Code menulis pesan lintas sesi ke sesi lain Anda di mesin ini, itu memeriksa bahwa soket kotak surat sesi target adalah titik akhir yang ditujukan pesan. Ketika pemeriksaan gagal, Claude Code menolak pengiriman dalam sesi pengirim, dan sesi target tidak menerima apa pun. Untuk pesan yang dikirim Claude, penolakan muncul dalam hasil alat sesi pengirim:

Failed to send to api-worker: Refusing to send: reply target is a symlink

Teks setelah Refusing to send: menamai pemeriksaan yang gagal:

  • reply target is a symlink: tautan simbolis duduk di jalur soket sesi target. Claude Code tidak mengirimkan melaluinya, karena tautan di sana dapat mengarahkan pesan ke titik akhir yang tidak dibuat sesi target.
  • cannot vet reply target: Claude Code tidak dapat memeriksa jalur target sama sekali, misalnya karena membacanya gagal dengan kesalahan izin.

What to do:

  • Biasanya tidak ada: pemeriksaan menjaga pesan agar tidak mencapai titik akhir selain sesi yang ditujukan, dan tidak ada yang dikirim
  • Jika reply target is a symlink berulang untuk satu sesi, periksa apa yang membuat tautan di jalur soket sesi itu, ditampilkan di /status di bawah Peer address

Claude Code memeriksa aturan izin jalur file, kemudian mengkonfirmasi resolusi itu lagi ketika alat membuka file atau memulai pencarian. Ketika tidak dapat mengkonfirmasi bahwa jalur masih mengarah ke lokasi yang disetujui pemeriksaan, Claude Code menolak operasi alih-alih mengikutinya. Penolakan muncul dalam hasil alat:

Refusing to read /path/to/file: its symlink resolution changed after permission was checked (a link on the way now leads somewhere the check did not see). If a link in the working directory is being rewritten concurrently, stop that and retry.

Setiap penolakan menamai alasannya:

  • its symlink resolution changed after permission was checked: tautan simbolis di sepanjang jalur, atau di akar pencarian Grep atau Glob, diganti antara pemeriksaan izin dan operasi. Dalam penolakan baca, frasa dalam tanda kurung menamai perbandingan mana yang gagal.
  • its parent-directory symlink resolution changed after permission was checked: direktori yang dilalui jalur penulisan tidak lagi diselesaikan ke lokasi yang disetujui
  • where it leads on disk could not be determined (a link on the way could not be examined, or the links do not resolve): Claude Code tidak dapat mengikuti jalur ke lokasi akhir di disk, misalnya karena tautan simbolis di dalamnya membentuk loop
  • it is a symbolic link. Write to the link's target path instead: tautan simbolis duduk di lokasi penulisan yang disetujui itu sendiri, misalnya CLAUDE.md yang merupakan tautan simbolis ke AGENTS.md; pesan mengarahkan Claude ke target tautan
  • Refusing to write through symlink: <path>. Resolve the symlink and pass the real target path explicitly.: kondisi yang sama ditangkap ketika penulis lain membuka file, seperti penulisan ke .mcp.json yang ditautkan
  • Refusing to write into symlinked directory: <path>: direktori yang menyimpan file itu sendiri adalah tautan simbolis, misalnya direktori .claude/ proyek yang ditautkan ke lokasi lain
  • a path one of its Read deny rules is written through changed while the search was being prepared. Retry.: aturan penolakan Read untuk pencarian menamai jalur yang melewati tautan simbolis, dan tautan itu berubah saat Claude Code menyiapkan pencarian
  • it could not be opened (EACCES) — it is unreadable, or is being replaced concurrently.: akar pencarian ada tetapi tidak dapat dibuka; kode dalam tanda kurung adalah kesalahan sistem operasi
  • its permission check expired before it ran (too many concurrent file operations). Retry.: Claude Code mengeluarkan catatan persetujuan di bawah banyak operasi file simultan sebelum alat menggunakannya; mencoba lagi menjalankan pemeriksaan izin segar
  • ripgrep was found only by name on PATH, and a search outside the working directory cannot apply your Read deny rules in that configuration: Claude Code tidak dapat menyelesaikan biner rg ke jalur absolut, jadi menolak pencarian di luar direktori kerja daripada menjalankan pencarian yang tidak dicakup aturan penolakan Anda

What to do:

  • Biasanya tidak ada: penolakan mencapai Claude sebagai hasil alat, dan operasi yang ditolak tidak berjalan
  • Jika penolakan tautan simbolis berulang pada satu jalur, temukan apa yang terus menulis ulang tautan di sana, seperti alat build atau file watcher, atau minta Claude menggunakan jalur yang diselesaikan file alih-alih yang ditautkan
  • Jika penolakan ini muncul untuk setiap file saat Claude Code berjalan di Windows di dalam AppContainer atau sandbox token terbatas, tingkatkan ke v2.1.265 atau lebih baru
  • Jika penolakan baca muncul di macOS untuk file yang tidak ada yang menulis ulang, seperti tangkapan layar yang diseret ke prompt, tingkatkan ke v2.1.273 atau lebih baru
  • Untuk penolakan ripgrep, instal ripgrep dengan manajer paket Anda sehingga rg diselesaikan ke jalur absolut di PATH, atau simpan pencarian di bawah direktori kerja

Sebelum v2.1.251, Claude Code memeriksa kembali resolusi jalur hanya untuk penulisan file, jadi tautan yang diganti setelah pemeriksaan izin dapat mengarahkan baca atau pencarian ke lokasi berbeda tanpa pesan. Dari ini, hanya penolakan penulisan direktori induk, melalui-tautan, dan direktori-tertaut muncul di versi sebelumnya.

Sebelum v2.1.280, penolakan where it leads on disk could not be determined tidak muncul.

Task output swap refused

Claude Code menyimpan output setiap perintah Bash ke file di bawah direktori tempnya. Setiap kali membuka salah satu file ini, itu memeriksa bahwa jalur masih mengarah ke file yang dibuat, tanpa tautan simbolis, tautan keras ekstra, atau direktori yang dipindahkan mengarahkannya. Pesan ini berarti pemeriksaan itu gagal, jadi Claude Code menolak operasi daripada menulis atau membaca output melalui jalur itu. Pesan muncul dalam hasil alat Bash:

task output swap refused (tasks dir moved or linked): /private/tmp/claude-501/-Users-you-my-project/1f0e62dc-4b0a-4f5e-9c2d-8a7b6c5d4e3f/tasks/b7k2f9m3q.output. To recover: restart Claude Code with CLAUDE_CODE_TMPDIR set to a fresh directory; or, if /private/tmp/claude-501/-Users-you-my-project is a stray directory or a symbolic link that should not be there, remove that entry itself (not what it points to) and restart.

Teks dalam tanda kurung menamai pemeriksaan yang gagal. Alasan seperti output symlink was re-pointed, output file identity changed, dan not a regular file semuanya melaporkan kondisi yang sama: sesuatu di atau sepanjang jalur output tidak lagi file yang dibuat Claude Code. Hanya beberapa alasan yang membawa kalimat To recover:.

Jika pemeriksaan gagal saat perintah masih berjalan, Claude Code menghentikan perintah, dan hasilnya melaporkan:

Command killed: its output file was replaced or could no longer be verified

What to do:

  • Tingkatkan ke v2.1.260 atau lebih baru. Versi sebelumnya kadang-kadang menunjukkan pesan ini ketika tidak ada tautan atau direktori yang dipindahkan
  • Mulai ulang Claude Code dengan CLAUDE_CODE_TMPDIR diatur ke direktori segar
  • Atau periksa direktori proyek Anda di bawah direktori temp Claude Code, /private/tmp/claude-501/-Users-you-my-project dalam pesan contoh. Jika jalur itu adalah tautan simbolis, atau direktori yang tidak seharusnya ada, hapus tautan atau direktori itu sendiri daripada target tautan, dan mulai ulang Claude Code
  • Jika penolakan berulang, proses mengganti, menautkan, atau menghapus entri di bawah direktori temp Claude Code saat sesi berjalan. Atur CLAUDE_CODE_TMPDIR ke direktori yang tidak dikelola apa pun dan mulai ulang

Disk quota or temp filesystem is full

Claude Code menyimpan output setiap perintah Bash dan PowerShell ke file di bawah direktori tempnya. Ketika perintah keluar dengan kode bukan nol dan tidak ada output sama sekali, Claude Code memeriksa apakah sistem file yang menyimpan file itu kehabisan ruang atau inode, atau apakah kuota disk Anda di dalamnya penuh. Jika demikian, diagnostik muncul dalam hasil perintah sebagai pengganti output kosong:

Your disk quota is full on the filesystem with Claude Code's temp directory /private/tmp/claude-501/-Users-you-my-project/1f0e62dc-4b0a-4f5e-9c2d-8a7b6c5d4e3f/tasks (EDQUOT), so any output this command printed was lost, and it may have failed because it could not write. Delete files you no longer need there, or restart Claude Code with CLAUDE_CODE_TMPDIR set to a directory on another filesystem.

Pesan menamai apa yang kehabisan:

  • Your disk quota is full ... (EDQUOT): kuota Anda sendiri di sistem file itu penuh. Kuota dapat penuh sementara sistem file masih menunjukkan ruang gratis
  • The filesystem with Claude Code's temp directory ..., or your disk quota on it, is full (ENOSPC): sistem file, atau kuota Anda di dalamnya, tidak memiliki ruang tersisa
  • Command output was lost: the temp filesystem at ... is full atau ... is out of inodes: sistem file memiliki hampir tidak ada ruang gratis tersisa, atau kehabisan inode

What to do:

  • Hapus file yang tidak lagi Anda butuhkan di sistem file yang menyimpan direktori temp Claude Code. Untuk EDQUOT, hapus file yang dihitung terhadap kuota Anda sendiri. Untuk out of inodes, hapus banyak file daripada beberapa file besar, karena setiap file membutuhkan satu inode apa pun ukurannya
  • Atau mulai ulang Claude Code dengan CLAUDE_CODE_TMPDIR diatur ke direktori di sistem file dengan ruang
  • Kemudian minta Claude menjalankan perintah lagi. Output yang dicetak hilang, bukan dipotong

The source file is not valid UTF-8 text

Claude mencoba menerbitkan artefak dari file yang byte-nya tidak didekodekan sebagai teks, atau yang teksnya sudah berisi karakter pengganti U+FFFD, jadi Claude Code menolak publikasi sebelum mengunggah apa pun. Pesan muncul dalam hasil alat Artefak dan menamai posisi pertama untuk diperbaiki:

file_path: the source file is not valid UTF-8 text (first invalid byte at line 12, column 40). It may be saved in another encoding or contain binary data. Rewrite it as UTF-8, then publish again. Nothing was published.

file_path: the source file has the replacement character U+FFFD at line 12, column 40, usually left where an earlier edit or paste lost a character. Replace it with the intended text (in HTML, write an intended U+FFFD as &#xFFFD;), then publish again. Nothing was published.

Claude Code mendekodekan file sebagai UTF-8, atau sebagai UTF-16 ketika dimulai dengan tanda urutan byte UTF-16 little-endian. Ketika file UTF-16 seperti itu tidak didekodekan, pesan pertama menamai UTF-16 dan masih memberitahu Anda untuk menulis ulang file sebagai UTF-8. Ketika lebih banyak posisi mengikuti yang dinamai, pesan menambahkan hitungan seperti (+2 more) setelah posisi.

What to do:

  • Biasanya tidak ada: Claude menulis ulang file dan menerbitkan lagi
  • Jika file adalah yang Anda tulis atau ekspor, simpan lagi sebagai UTF-8, dan ganti setiap U+FFFD dengan karakter yang hilang oleh edit, paste, atau konversi sebelumnya
  • Untuk menampilkan U+FFFD yang disengaja di halaman, tuliskan sebagai &#xFFFD; dalam HTML alih-alih karakter literal

Sebelum v2.1.267, Claude Code mengunggah file seperti itu tanpa memeriksanya, dan server menolak publikasi sebagai gantinya.

Reading a local file from outside the connected folders in a Cowork session

Dalam sesi Cowork yang berjalan di mesin Anda di aplikasi Claude Desktop, Claude menamai file lokal untuk artefak. Claude Code tidak dapat mengkonfirmasi file adalah file biasa di dalam folder yang terhubung sesi: jalur duduk di luar folder itu, melewati tautan simbolis, atau dieja dengan cara yang dapat menamai file berbeda dari yang terlihat. Membaca file seperti itu memerlukan persetujuan Anda, dan dalam sesi yang tidak dapat menampilkan kartu persetujuan, seperti yang ditetapkan untuk melewati semua persetujuan, Claude Code menolak pembacaan.

Penolakan muncul dalam hasil alat Artefak; ketika file tidak dapat diperiksa sama sekali, itu menamai kegagalan itu sebagai gantinya:

Reading a local file from outside this session's connected folders, or through a link, needs the approval card, and no one can answer it in this Cowork session. Use a plain file inside the connected folders; do not retry this file in this session.

cannot read file_path (ENOENT) — the file could not be examined, and no one can answer the approval card in this Cowork session. Check that the file exists as a plain file inside the connected folders, then retry with that path.

What to do:

  • Biasanya tidak ada: pesan memberitahu Claude untuk menggunakan file biasa di dalam folder yang terhubung sebagai gantinya
  • Untuk menempatkan file yang tepat itu dalam artefak, salin ke salah satu folder yang terhubung sesi sebagai file biasa, bukan tautan simbolis, dan tanyakan lagi

WebFetch cannot fetch localhost

Claude memanggil WebFetch dengan URL yang nama hostnya tidak memiliki titik, seperti http://localhost:3000 atau nama intranet telanjang seperti http://wiki/. WebFetch menolak URL ini sebelum membuat permintaan apa pun:

WebFetch cannot fetch localhost or other hostnames without a dot. To reach a local server, use Bash with curl instead.

What to do:

  • Biasanya tidak ada: pesan menunjukkan Claude ke curl melalui alat Bash, yang dapat menjangkau server lokal dan intranet

Sebelum v2.1.268, WebFetch melaporkan URL ini dengan kesalahan Invalid URL generik.

WebFetch domain safety check failed

Sebelum mengambil URL, WebFetch mengirim nama host URL ke api.anthropic.com untuk memeriksanya terhadap daftar blokir keamanan domain Anthropic. Jika pemeriksaan tidak dapat diselesaikan, WebFetch tidak dapat mengkonfirmasi bahwa domain aman, jadi tidak mengambil halaman dan hasil alat membawa salah satu pesan ini sebagai gantinya:

The safety check for domain example.com is rate-limited (too many domain checks from this network; the limit is shared and can stay exhausted for minutes). Do not retry WebFetch in a loop or sleep to wait it out; continue without this page and report that its safety check was rate-limited. A single later attempt is fine; if that is rate-limited too, stop.

Unable to verify if domain example.com is safe to fetch. This may be due to network restrictions or enterprise security policies blocking claude.ai.
  • rate-limited: titik akhir pemeriksaan menjawab dengan HTTP 429. Pesan memberitahu Claude untuk melanjutkan tanpa halaman dan mencoba lagi paling banyak sekali nanti. Claude Code tidak menyimpan pemeriksaan yang gagal, jadi pengambilan domain itu nanti menjalankan pemeriksaan lagi. Jika sesi di jaringan Anda sering mengalami ini, Anda dapat melewati pemeriksaan dengan skipWebFetchPreflight: true dalam pengaturan.
  • Unable to verify: permintaan pemeriksaan gagal, habis waktu, atau mendapat status kesalahan lain. Jika jaringan Anda memblokir api.anthropic.com, izinkan domain itu, atau lewati pemeriksaan dengan skipWebFetchPreflight: true dalam pengaturan.

Sebelum v2.1.286, pesan rate-limited berbunyi The safety check for domain example.com is temporarily rate-limited (too many domain checks from this network). Retry after about a minute; retrying sooner will fail the same way.. Sebelum v2.1.285, pemeriksaan rate-limited dilaporkan dengan pesan Unable to verify sebagai gantinya.

Kesalahan sesi latar belakang

Sesi latar belakang berjalan tanpa terminal interaktif mereka sendiri, jadi perintah yang membutuhkan satu berperilaku berbeda di sana. Pesan-pesan ini muncul dalam transkrip sesi latar belakang, di terminal yang terhubung ke satu, di sesi atau shell tempat Anda mengirim, atau, untuk entri worktree-guard di bawah, di sesi apa pun yang terisolasi dalam worktree atau menjalankan subagent yang terisolasi worktree; di mana pesan spesifik untuk satu surface, entrinya mengatakan demikian.

Perintah ditolak dalam sesi latar belakang

Perintah yang membuka dialog interaktif tidak dapat melakukannya saat tidak ada terminal yang terhubung ke sesi latar belakang. /install-github-app, daftar pengaturan /mcp, dan tindakan autentikasi dalam menu server MCP merespons dengan pesan. Untuk /install-github-app dan daftar pengaturan /mcp, sesi juga muncul di bawah Needs input dalam tampilan agent sehingga Anda dapat menemukannya, melampirkan, dan menjalankan perintah lagi. Saat terminal terhubung, perintah-perintah ini berfungsi secara normal.

Sebelum v2.1.216, sesi tidak muncul di bawah Needs input setelah /install-github-app atau daftar pengaturan /mcp ditolak. Di v2.1.213 hingga v2.1.215, perintah masih berfungsi saat terminal terhubung, dan pesan penolakan memberi tahu Anda untuk melampirkan dan menjalankan perintah lagi. Dari v2.1.208 hingga v2.1.212, Claude Code menolaknya bahkan saat terminal terhubung, dengan pesan seperti Can't open MCP settings in a background session; pada versi tersebut, jalankan perintah dari sesi claude biasa sebagai gantinya, atau tingkatkan. Sebelum v2.1.208, mereka membuka dialog mereka di dalam sesi latar belakang. Di v2.1.208 saja, Claude Code juga menolak pemilih /model dalam sesi latar belakang, dan /upgrade mencetak URL upgrade alih-alih membuka browser.

Kata-kata tersebut menamai perintah. Daftar pengaturan /mcp melaporkan:

Can't open MCP settings while no terminal is attached to this background session. This session now shows "needs input" in agent view — open it and run /mcp to manage servers, or use `/mcp enable|disable|reconnect <server>` to steer without the panel.

Yang harus dilakukan:

  • Lampirkan ke sesi dari tampilan agent dan jalankan perintah lagi
  • Atau gunakan formulir yang dinamai pesan, seperti /mcp reconnect <server>, /mcp enable, atau /mcp disable, yang berfungsi tanpa melampirkan

Penulisan atau perintah diblokir karena jalur tidak dapat diselesaikan dengan aman

Claude mengatasi file atau direktori kerja melalui ejaan yang penjaga isolasi worktree tidak dapat menyelesaikan ke satu lokasi yang dapat diverifikasi. Penjaga memeriksa penulisan dan direktori kerja perintah di sesi apa pun yang terisolasi dalam worktree, interaktif atau latar belakang, dan di subagent yang terisolasi worktree. Ini menyelesaikan symlink sebelum memeriksa bahwa operasi tidak mencapai checkout bersama, dan ketika resolusi gagal, ia memblokir operasi daripada membiarkannya mendarat di sana. Pesan menamai bentuk jalur yang ditolaknya dan cara mencoba lagi:

This write was blocked because the path is spelled in a form that cannot be safely resolved (for example through a symlink storing a raw dot segment, a network-share or device-namespace shape, or an unreadable ancestor directory). If the file is inside the worktree /path/to/worktree, address it by its direct symlink-free path instead.

Perintah yang diblokir melaporkan penyebab yang sama untuk direktori kerjanya dan berakhir dengan re-run the command from its direct symlink-free path. Sebelum v2.1.217, penjaga membandingkan ejaan jalur tanpa menyelesaikan symlink, jadi ejaan ini tidak diblokir dan penulisan yang dirutekan melalui symlink dapat mendarat di checkout bersama.

Yang harus dilakukan:

  • Biasanya tidak ada: pesan lengkap masuk ke Claude sebagai kesalahan tool, dan Claude mencoba lagi dengan jalur langsung yang dinamainya. Untuk pengeditan file yang diblokir, tampilan percakapan menampilkan hanya baris Error editing file pendek; pesan lengkap muncul dalam tampilan transkrip, yang Anda buka dengan Ctrl+O. Perintah yang diblokir mencetaknya dalam output perintahnya.
  • Jika blokir berulang pada file yang sama, jalur kemungkinan besar berjalan melalui symlink yang di-commit yang targetnya berisi .., seperti docs/current -> ../README.md; minta Claude untuk mengedit file target dengan jalur sebenarnya alih-alih melalui tautan

Penulisan atau perintah diblokir karena jalur menamai lokasi jaringan

Claude mengatasi file atau direktori kerja melalui jalur yang menamai drive yang bukan di mesin Anda, bagian UNC seperti \\server\share\file atau jalur automount /net, sementara checkout sesi berada di disk lokal. Penjaga isolasi worktree yang sama tidak dapat memverifikasi bahwa jalur seperti itu tetap keluar dari checkout bersama, jadi ia memblokir operasi. Mengisolasi sesi dalam worktree tidak menghilangkan blokir. Pesan menamai bentuk jalur yang digunakan sebagai gantinya:

This write was blocked because the path is network-shaped (a UNC share or /net automount spelling) while this session's checkout is local. Isolating cannot unblock it. If the file is genuinely inside the worktree /path/to/worktree, address it by its local, plainly-spelled path instead.

Perintah yang diblokir melaporkan penyebab yang sama untuk direktori kerjanya dan berakhir dengan re-run the command from its local, plainly-spelled path. Sebelum v2.1.217, penjaga hanya membandingkan teks jalur, jadi mengatasi file di dalam checkout melalui jalur UNC atau /net tidak diblokir.

Yang harus dilakukan:

  • Biasanya tidak ada: Claude mencoba lagi dengan ejaan lokal yang diminta pesan

Perintah diblokir oleh pemeriksaan isolasi worktree

Claude menjalankan perintah Bash atau Monitor dalam sesi yang terisolasi dalam worktree, dan Claude Code menolaknya karena salah satu dari dua alasan:

  • Perintah menunjukkan git ke checkout utama.
  • Claude Code tidak dapat memverifikasi dari teks perintah bahwa git apa pun yang dijalankan perintah tetap berada di dalam worktree. Perintah yang tidak pernah menamai git masih dapat ditolak karena alasan ini, karena memperluas indirection variabel seperti ${!name} atau menjalankan substitusi fungsi Bash seperti ${ command; } menghasilkan nilai pada runtime yang dapat menjadi perintah itu sendiri.

Bagian tengah pesan menamai apa yang tidak dapat diverifikasi:

This session is isolated in the worktree /path/to/worktree, but this command evaluates ${!x@P} arithmetically inside a construct too complex to verify, which can run a command hidden in a variable's value. Refusing to run it — a worktree-isolated session's git operations must target its own worktree. Split it into plain, separate commands and run them from /path/to/worktree.

Yang harus dilakukan:

  • Biasanya tidak ada: Claude membaca pesan dan menulis ulang perintah dengan cara yang diminta kalimat terakhirnya
  • Jika perintah yang Anda minta terus ditolak, ejakan nilai yang ditandai secara harfiah: ganti indirection atau substitusi dengan nilainya, dan jalankan git sebagai perintah biasa terpisahnya dari dalam worktree
  • Untuk bertindak pada checkout utama dengan sengaja, jalankan perintah sendiri di terminal di luar sesi

Sesi ini tidak memiliki transkrip yang disimpan

Anda melampirkan ke sesi latar belakang yang dihentikan yang dilatarbelakangkan dari percakapan lain dengan ← atau /background dan dihentikan sebelum respons pertamanya selesai. Sampai respons pertama itu selesai, percakapan masih hidup hanya dalam sesi tempat ia dilatarbelakangkan, jadi claude attach menolak untuk memulai sesi yang dihentikan daripada memulai percakapan kosong di bawah ID sesi yang sama. Pesan berakhir dengan perintah claude respawn untuk sesi ini:

This session has no saved transcript — it was stopped before its first response finished. If it was backgrounded from another conversation, that one is still intact; `claude respawn <id>` starts this one fresh.

Membuka baris sesi yang sama dalam tampilan agent menampilkan Press enter again to restart this session fresh di bawah daftar sebagai gantinya, dan Enter kedua pada baris memulai ulang sesi dengan percakapan kosong. Sebelum v2.1.212, membuka baris yang dihentikan menampilkan pesan penolakan tanpa cara untuk memulai ulang dari tampilan agent. Sebelum v2.1.211, membuka sesi yang dihentikan secara diam-diam memulai percakapan kosong itu dan dapat menjalankan kembali prompt asli sesi.

Yang harus dilakukan:

  • Percakapan yang Anda latarbelakangkan masih utuh: lanjutkan dengan claude --resume atau terus bekerja di dalamnya
  • Untuk memulai sesi yang dihentikan segar bagaimanapun, jalankan claude respawn <id> dengan ID dari pesan, atau tekan Enter dua kali pada barisnya dalam tampilan agent
  • Jika sesi memang menyelesaikan respons dan Anda masih melihat penolakan ini pada versi sebelum v2.1.214, folder yang tidak dapat dibaca di ~/.claude/projects dapat membuat pemindaian transkrip melewatkan percakapan yang disimpan; perbarui ke v2.1.214 atau lebih baru, yang mentoleransi folder yang tidak dapat dibaca selama pemindaian

Sesi ini berjalan di terminal lain

Anda membuka baris sesi yang dihentikan dalam tampilan agent, dan percakapan yang disimpannya sudah terbuka dalam proses Claude Code langsung lain di mesin ini, jadi Claude Code menolak untuk memulai proses kedua yang akan menulis ke transkrip yang sama. Pesan mana yang Anda lihat tergantung pada apa yang memegang percakapan:

Can't open — this session is running in another terminal
This conversation is already open in another running Claude session — use that one, or close it and try again
  • running in another terminal: terminal memegang percakapan, misalnya yang tempat Anda melanjutkannya dengan claude --resume atau /resume. Baris juga menampilkan Open in a terminal.
  • already open in another running Claude session: proses Claude Code non-interaktif lain menahannya, misalnya proses sesi latar belakang untuk percakapan yang sama yang belum keluar.

Claude Code menyimpan balasan yang Anda ketik saat membuka baris dan mengirimkannya sebagai prompt berikutnya sesi ketika sesi berikutnya dimulai.

Yang harus dilakukan:

  • Lanjutkan percakapan dalam proses yang memilikinya, atau keluar dari proses itu dan buka baris lagi

Sebelum v2.1.248, hanya penolakan already open in another running Claude session yang ada: percakapan yang dilanjutkan dalam terminal tidak dihitung sebagai terbuka, dan membuka baris memulai proses Claude Code kedua yang menulis ke percakapan yang sama.

Percakapan yang disimpan sesi ini tidak lagi ada di disk

Anda membuka sesi latar belakang yang berakhir saat layanan latar belakang mati, dan pembersihan transkrip telah menghapus percakapan yang disimpannya, misalnya setelah mesin mati selama berminggu-minggu. Membuka baris seperti itu biasanya melanjutkan percakapan yang disimpannya. Tanpa apa pun yang tersisa untuk dilanjutkan, Claude Code menolak daripada menjalankan kembali prompt asli sesi tanpa bertanya:

This session's saved conversation is no longer on disk (it ended while the background service was off, and old transcripts are cleaned up), so there is nothing to resume. `claude rm 7c5dcf5d` deletes the row; `claude respawn 7c5dcf5d` runs its original prompt again instead.

claude attach <id> mencetak teks ini. Dalam tampilan agent, footer lebih pendek dan berakhir dengan ctrl+x deletes the row.

Yang harus dilakukan:

  • Jalankan claude rm <id> untuk menghapus baris. Ketika salah satu dari kasus yang disimpan berlaku, claude rm menyimpan baris dan worktree sebagai gantinya dan menamai alasannya
  • Untuk menjalankan prompt asli sesi lagi sebagai percakapan segar, jalankan claude respawn <id>

Sebelum v2.1.248, membuka baris seperti itu menjalankan kembali prompt asli sesi alih-alih menolak, menarik tugas yang berusia berminggu-minggu kembali ke latar depan.

Worktree memiliki commit yang tidak didorong ke mana pun

Anda mencoba menghapus sesi latar belakang yang worktree-nya menyimpan commit yang Claude Code tidak dapat memastikan disimpan di tempat lain. Claude Code menyimpan worktree dan baris sesi daripada menghancurkan commit yang tidak terlihat. claude rm menamai branch dan commit yang tidak didorong, dan mengatakan cara melanjutkan:

kept 7c5dcf5d — its worktree is still at “/home/you/project/.claude/worktrees/fix-login”
  2 unpushed commits on “claude/fix-login”: a1b2c3d “Fix login flow” and 1 more. They exist on no remote, so deleting the worktree would lose them.
  push them and run 'claude rm 7c5dcf5d' again, or discard the worktree and its commits: claude rm 7c5dcf5d --discard-unpushed a1b2c3d000000000000000000000000000000000@0123456789abcdef0123456789abcdef

Ketika Claude Code tidak dapat merangkum commit, baris detail berbunyi The worktree has unpushed commits sebagai gantinya. Dalam tampilan agent, baris sesi menampilkan not deleted dengan alasan yang sama.

Commit pada remote tidak memblokir penghapusan. Begitu juga commit pada salinan lokal branch default remote origin Anda, selama branch itu diperiksa dalam checkout utama Anda, direktori repositori itu sendiri daripada worktree.

Yang harus dilakukan:

  • Untuk menyimpan commit, dorong branch worktree, atau gabungkan ke dalam branch default yang diperiksa dalam checkout utama Anda, kemudian hapus sesi lagi
  • Untuk membuang commit, jalankan perintah claude rm <id> --discard-unpushed yang dicetak pesan, atau tekan Ctrl+X dua kali pada baris sesi dalam tampilan agent lagi. Ini menghapus sesi dan worktree bersama dengan branch-nya, commit yang tidak didorong, dan perubahan yang belum di-commit. Jika worktree telah mendapatkan commit sejak penolakan, Claude Code menyimpannya lagi dan menampilkan status yang diperbarui
  • Ketika pesan mengatakan worktree juga dicatat oleh sesi selesai lain, menghapus lagi tidak membuangnya: dorong commit, kemudian hapus sesi lagi

Sebelum v2.1.268, claude rm menempatkan ringkasan commit pada baris kept itu sendiri. Ketika claude rm tidak dapat merangkum commit, baris kept berbunyi worktree has commits that are not pushed anywhere sebagai pengganti ringkasan.

Sebelum v2.1.260, pesan tidak menamai branch atau commit, dan menghapus lagi ditolak dengan cara yang sama: menghapus sesi tanpa mendorong berarti menghapus worktree sendiri dengan git worktree remove --force <path>, kemudian menjalankan claude rm <id> lagi.

Sebelum v2.1.248, branch default yang diperiksa dalam checkout utama Anda tidak dihitung: branch yang sudah Anda gabungkan di sana masih memicu penolakan ini sampai commit-nya mencapai remote.

Proses host terminal mati

Setiap terminal sesi latar belakang berjalan dalam proses host di bawah layanan latar belakang, dan proses itu mati saat layanan masih menyimpan koneksinya, jadi sesi tidak dapat dijangkau.

Di Linux dan WSL, layanan latar belakang memeriksa setiap proses host setiap beberapa detik, menandai sesi gagal ketika proses telah keluar tetapi koneksinya ke layanan tidak pernah ditutup, dan menampilkan alasannya pada barisnya dalam tampilan agent:

terminal host process died — press Enter to restart

Dari shell, claude attach <id> memulai ulang sesi yang sudah ditandai gagal untuk host yang mati, dan sebaliknya mencetak penyebab dan keluar:

Couldn't attach to <id> — This session's terminal host process died (the conversation is saved) — run `claude attach <id>` again to restart it on a fresh host.

Percakapan disimpan bagaimanapun.

Baris yang menjalankan perintah shell sebagai gantinya menampilkan terminal host process died — its output is gone; the command was not run again, dan claude attach mencetak This command's terminal host process died — its output is gone and the command was not run again. Claude Code tidak pernah menjalankan kembali perintah untuk Anda.

Yang harus dilakukan:

  • Dalam tampilan agent, tekan Enter pada baris yang gagal; sesi dimulai ulang pada proses host segar dan percakapan dilanjutkan
  • Dari shell, jalankan claude attach <id> lagi. Claude Code mencetak Session <id>'s terminal host died — restarting it on a fresh one… dan membuka kembali sesi
  • Anda tidak dapat memulai ulang baris perintah shell dengan cara ini; kirim perintah lagi untuk menjalankannya kembali

Sebelum v2.1.247, proses host yang mati dapat melewati setiap pemeriksaan kelangsungan hidup yang dijalankan layanan latar belakang, jadi membuka sesi menampilkan opening… · esc to cancel tanpa batas dan claude attach <id> menunggu tanpa melaporkan kesalahan.

Sesi tidak merespons

Anda membuka sesi latar belakang dan layanan latar belakang menerima pembukaan, tetapi tidak ada output yang tiba selama sekitar sepuluh detik, jadi Claude Code menyimpulkan bahwa proses yang menyampaikan terminal sesi tidak dapat memberikan output, dan mengakhiri upaya alih-alih menunggu.

Dalam tampilan agent, Claude Code menawarkan restart dalam footer:

Press enter again to restart this session — it isn't responding (its conversation is saved and resumes).

Dari shell, claude attach <id> mencetak penyebab dan keluar:

Couldn't attach to <id> — Session isn't responding — `claude stop <id>`, then `claude attach <id>` restarts it (the conversation is saved).

Claude Code tidak pernah memulai ulang baris yang menjalankan perintah shell untuk Anda, karena restart akan menjalankan perintah lagi.

Yang harus dilakukan:

  • Dalam tampilan agent, tekan Enter pada baris yang sama lagi. Claude Code menghentikan proses yang tidak responsif dan memulai ulang sesi, dan percakapan dilanjutkan. Tidak ada yang dihentikan tanpa tekan kedua itu
  • Dari shell, jalankan claude stop <id>, kemudian claude attach <id>
  • Untuk baris perintah shell, tekan Ctrl+X dalam tampilan agent atau jalankan claude stop <id> untuk menghentikannya; kirim perintah lagi untuk menjalankannya kembali

Sesi dihentikan saat respawn sedang dalam perjalanan

Anda membuka sesi latar belakang yang prosesnya tidak berjalan, dan saat Claude Code memulainya kembali, proses Claude Code lain menghentikannya, misalnya claude stop di terminal lain. Claude Code menyimpan sesi tetap dihentikan:

Session <id> was stopped while the respawn was in flight

Membuka sesi yang baru saja Anda kirim, saat prosesnya masih dimulai, menunggu proses sebagai gantinya. Sebelum v2.1.246, membukanya pada saat itu dapat menghentikannya dan menampilkan pesan ini.

Yang harus dilakukan:

  • Jika Anda tidak menghentikan sesi, buka barisnya lagi dalam tampilan agent atau jalankan claude respawn <id> untuk memulainya kembali
  • Jika Anda menghentikannya sendiri, tidak ada yang tersisa untuk dilakukan: sesi tetap dihentikan

Agent sesi tidak lagi tersedia

Anda melanjutkan sesi yang menjalankan agent khusus, dimulai dengan --agent atau pengaturan agent, dan Claude Code tidak menemukan agent dengan nama itu. Ini mencari direktori asli sesi terlebih dahulu, ketika Anda telah mempercayai workspace itu, kemudian direktori tempat Anda melanjutkan. Sesi masih dilanjutkan, tetapi dengan tool default, jadi pembatasan tool agent tidak lagi berlaku:

This session was running agent 'code-reviewer', which is no longer available (no agent by that name in /home/you/project). Continuing with the default tools and system prompt — the agent's tool restrictions no longer apply. To restore it, re-create the agent, or resume with an explicit --agent <name>.

Peringatan hanya menamai direktori yang Claude Code cari, dan muncul dalam percakapan yang dilanjutkan apakah Anda membangunkan sesi latar belakang, menjalankan /resume atau claude --resume, atau melanjutkan dalam mode non-interaktif, di mana ia juga masuk ke stderr. Sesi menggunakan --input-format stream-json tidak menampilkannya, karena Agent SDK menyediakan agent setelah startup.

Claude Code tidak menyimpan fallback ke sesi, jadi peringatan berulang pada setiap resume sampai Anda bertindak. Agent claude bawaan tidak memicu peringatan, karena jatuh kembali ke set tool default tidak mengubah apa pun untuk itu. Sebelum v2.1.216, Claude Code secara diam-diam melanjutkan sebagai agent default, dan pencarian mencakup hanya direktori tempat Anda melanjutkan, jadi agent yang bersifat proyek hilang pada resume apa pun dari direktori lain.

Yang harus dilakukan:

  • Buat ulang file agent di .claude/agents/<name>.md dalam proyek sesi, atau di ~/.claude/agents/<name>.md untuk agent pribadi, kemudian lanjutkan lagi
  • Atau lanjutkan dengan --agent <name> yang menamai agent yang memang ada, untuk menjalankan sesi sebagai agent itu sebagai gantinya
  • Jika agent bersifat proyek dan Anda belum mempercayai direktori asli sesi, jalankan Claude Code di sana sekali, terima dialog kepercayaan, kemudian lanjutkan lagi

Kesalahan peluncur CLAUDE\_CODE\_PROCESS\_WRAPPER

CLAUDE_CODE_PROCESS_WRAPPER diatur, dan nilainya tidak dapat digunakan, jadi Claude Code menolak untuk memulai proses yang terpengaruh daripada menjalankannya tanpa peluncur. Masalah konfigurasi dilaporkan dengan pesan yang dimulai dengan nama variabel dan menyatakan alasannya, misalnya:

CLAUDE_CODE_PROCESS_WRAPPER: launcher `/opt/corp/launcher` is not an executable regular file

Peluncur yang dimulai tetapi keluar tanpa mengganti dirinya dengan Claude Code gagal sesi yang dimulainya, dan baris sesi dalam tampilan agent melaporkan bahwa peluncur must exec, not daemonize, diikuti oleh apa pun yang dicetak peluncur. Sesi yang tidak dapat dimulai atau menjangkau layanan latar belakang karena peluncur melaporkan masalah peluncur sebagai alasan di dalam Couldn't reach the background service (...).

Yang harus dilakukan:

  • Atur variabel ke jalur absolut dari executable yang berakhir dengan memanggil exec "$@". Lihat kontrak peluncur untuk kontrak lengkap
  • Periksa /status, yang menampilkan perintah peluncuran yang diselesaikan dalam entri Self-exec-nya dan memperingatkan ketika layanan latar belakang yang berjalan tidak cocok, atau jalankan claude daemon status dari shell
  • Setelah memperbaiki nilai dalam blok env dari pengaturan, mulai ulang layanan latar belakang dengan claude daemon stop --any sehingga pengiriman berikutnya memulai yang dibungkus

EUNKNOWN saat memulai sesi latar belakang

Windows menolak untuk memulai program dengan kode kesalahan yang tidak memiliki nama standar, jadi kegagalan muncul sebagai EUNKNOWN. Pemicu biasanya adalah kebijakan pembatasan perangkat lunak, seperti Group Policy atau AppLocker, memblokir program yang dimulai. Kesalahan muncul ketika Anda memulai sesi latar belakang dengan /background atau claude --bg:

Couldn't reach the background service (spawn background service: EUNKNOWN: unknown error, uv_spawn) — run 'claude daemon status'

Pada beberapa akun pesan mengatakan daemon sebagai pengganti background service.

Pada instalasi npm, EUNKNOWN yang muncul saat npm install -g @anthropic-ai/claude-code mengganti biner memiliki penyebab yang sama dengan EACCES selama reinstal dan hilang ketika Anda mencoba lagi setelah instalasi selesai.

Claude Code memulai layanan latar belakang melalui PowerShell sehingga layanan bertahan menutup terminal, menggunakan PowerShell 7 ketika diinstal dan Windows PowerShell 5.1 sebaliknya. Ketika tidak ada PowerShell yang dapat berjalan, Claude Code memulai layanan secara langsung sebagai gantinya, jadi kebijakan yang memblokir hanya PowerShell tidak menyebabkan kesalahan ini.

Sebelum v2.1.212, Claude Code hanya menggunakan Windows PowerShell 5.1 untuk memulai layanan, jadi mesin apa pun di mana Group Policy memblokir PowerShell 5.1 gagal dengan Couldn't start the session — EUNKNOWN: unknown error, uv_spawn, bahkan dengan PowerShell 7 diinstal.

Yang harus dilakukan:

  • Jika pesan berbunyi Couldn't start the session, tingkatkan ke v2.1.212 atau lebih baru. Pada versi sebelumnya Anda juga dapat menjalankan claude daemon run di terminal terpisah terlebih dahulu, kemudian mulai sesi latar belakang lagi. Perintah itu menjalankan layanan latar belakang di latar depan terminal, jadi layanan berlangsung hanya selama terminal itu tetap terbuka.
  • Jika instalasi npm mengganti biner, tunggu hingga selesai, kemudian mulai sesi latar belakang lagi
  • Jika kesalahan muncul pada v2.1.212 atau lebih baru saat tidak ada instalasi npm yang berjalan, periksa dengan administrator Windows Anda apakah kebijakan pembatasan memblokir executable Claude Code
  • Jika layanan latar belakang berhenti ketika Anda menutup terminal, Claude Code memulainya tanpa PowerShell. Instal PowerShell 7, atau minta administrator Anda untuk membuka blokir PowerShell, sehingga layanan dapat bertahan lebih lama dari terminal.

EACCES saat memulai sesi latar belakang

Claude Code tidak dapat menjalankan binernya sendiri untuk memulai layanan latar belakang yang menyelenggarakan sesi latar belakang. Pada instalasi npm, ini biasanya berarti npm install -g @anthropic-ai/claude-code mengganti biner pada saat itu, apakah Anda menjalankannya atau auto-updater melakukannya. Kesalahan muncul ketika Anda membuka sesi dari tampilan agent:

Couldn't start the background service — spawn background service: EACCES: permission denied, posix_spawn '/usr/local/lib/node_modules/@anthropic-ai/claude-code/bin/claude'

Ketika Anda memulai sesi dengan /background atau claude --bg, alasan yang sama muncul di dalam Couldn't reach the background service (...). Selama jendela reinstal yang sama kesalahan dapat menamai kode lain sebagai gantinya, seperti ENOENT atau ENOEXEC, atau EUNKNOWN atau EPERM di Windows; EUNKNOWN yang bertahan di seluruh percobaan ulang memiliki penyebab berbeda.

Pada instalasi npm, Claude Code menunggu reinstal selesai dan mencoba lagi sendiri: hingga sepuluh detik, dan hingga dua menit saat instalasi npm Claude Code masih terlihat berjalan di mesin, yang mencakup proses Claude Code lain mengunduh pembaruan. Ketika instalasi melampaui waktu tunggu itu, kegagalan menamai pembaruan alih-alih kode kesalahan telanjang:

Claude Code is being updated by npm on this machine (still not runnable after 2 min, EACCES) — try again when the update finishes

Sebelum v2.1.257, waktu tunggu berhenti pada sepuluh detik dalam setiap kasus, jadi kesalahan ini muncul saat proses Claude Code lain masih mengunduh pembaruan. Sebelum v2.1.246, Claude Code gagal sekaligus, tanpa menunggu.

Yang harus dilakukan:

  • Tunggu beberapa detik, kemudian buka sesi atau kirim lagi. Ketika pesan mengatakan Claude Code sedang diperbarui, coba lagi setelah pembaruan selesai.
  • Jika kesalahan bertahan saat tidak ada instalasi npm yang berjalan, pengguna Anda tidak dapat menjalankan biner yang diinstal. Periksa hak aksesnya dan direktorinya, atau instal ulang Claude Code.

Layanan latar belakang keluar sebelum dapat dijangkau

Proses yang Claude Code mulai sebagai layanan latar belakang keluar sebelum menerima koneksi, jadi Claude Code tidak dapat membuka sesi Anda. Ketika layanan mencetak kesalahan sebelum keluar, alasan dalam tanda kurung memberikan exit code atau sinyal dan baris pertama yang dicetak layanan, yang menamai apa yang menghentikannya:

Couldn't reach the background service (background service exited before it became reachable (exit code N): <the service's first error line>) — run 'claude daemon status'

Ketika Anda membuka sesi dari tampilan agent, alasan yang sama mengikuti Couldn't start the background service —. Ketika layanan tidak mencetak apa pun sebelum keluar, pesan mengatakan nothing on stderr sebagai gantinya.

Claude Code melaporkan kegagalan dengan baris kesalahan layanan. Sebelum v2.1.246, kegagalan muncul hanya setelah menunggu 45 detik, sebagai background service did not become reachable within 45s, tanpa baris kesalahan layanan.

Dua alasan yang dikutip memiliki penyebab yang diketahui:

  • Error: claude native binary not installed.: instalasi npm mengganti biner Claude Code pada saat itu, jadi layanan menjalankan placeholder npm sebagai gantinya. Coba lagi setelah instalasi selesai; jika baris bertahan tanpa instalasi yang berjalan, selesaikan instalasi npm. Sebelum v2.1.257, pembaruan diri npm macOS menghasilkan kegagalan ini pada setiap awal selama jendela instalasi.
  • nothing on stderr dengan exit code 1, pada setiap awal, di Windows: daemon.lock menamai proses yang Claude Code tidak dapat menandai atau membuktikan hilang, jadi setiap layanan baru menyimpulkan yang lain menyimpan kunci dan keluar. Kunci yang penulis Claude Code dapat membuktikan hilang diganti sendiri dan tidak menghasilkan kegagalan ini. Ketika kegagalan berulang pada setiap awal, hapus ~/.claude/daemon.lock, kemudian buka sesi atau kirim lagi. Sebelum v2.1.257, kunci seperti itu memblokir setiap awal sampai Anda menghapus file.

Yang harus dilakukan:

  • Jika pesan mengutip baris, perbaiki apa yang dinamainya, kemudian buka sesi atau kirim lagi. Upaya berikutnya memulai layanan lagi
  • Jalankan claude daemon status untuk memeriksa apakah layanan berjalan sekarang

Direktori kerja tidak lagi ada saat memulai sesi latar belakang

Direktori tempat Anda memulai sesi latar belakang dihapus saat sesi dimulai. Claude Code tidak memulai sesi, dan pesan menamai direktori yang hilang:

Couldn't start a background session (working directory no longer exists or is not accessible: /tmp/demo)

Sebelum v2.1.257, sesi tampak dimulai dan kemudian ditampilkan dalam tampilan agent sebagai baris yang gagal dengan alasan yang sama.

Sebelum v2.1.281, pesan ini juga muncul ketika direktori sudah hilang sebelum Anda memulai sesi. Kasus itu melaporkan could not be resolved on disk.

Yang harus dilakukan:

  • Buat ulang direktori yang dinamai pesan, atau kirim dari direktori yang ada, kemudian coba lagi

Workspace tidak dipercaya saat mengirim sesi latar belakang

Anda memulai atau memulai ulang sesi latar belakang dalam direktori yang belum Anda percayai, dan dialog kepercayaan workspace tidak dapat muncul untuk bertanya. Claude Code tidak memulai sesi:

Workspace not trusted. Run `claude` in /path/to/project once and accept the trust prompt, then retry.

Dari terminal di direktori sesi itu sendiri, perintah yang sama menampilkan dialog kepercayaan sebagai gantinya dan memulai sesi setelah Anda menerima. Pesan ini muncul di mana tidak ada dialog yang dapat muncul, seperti dalam skrip, atau ketika Anda memulai ulang sesi dari direktori selain miliknya sendiri.

Dua varian menamai penyebab berbeda:

  • The home directory is trusted one session at a time: direktori sesi adalah direktori home Anda. Claude Code tidak pernah menyimpan kepercayaan untuk direktori home, jadi menerima dialog di sana dalam sesi sebelumnya tidak dihitung.
  • <path> could not be resolved on disk: Claude Code tidak dapat menemukan direktori sesi di disk.

Sebelum v2.1.286, di Windows, pesan ini juga dapat muncul di direktori yang sudah Anda percayai, jika catatan kepercayaannya disimpan dengan jalur dalam huruf besar/kecil yang berbeda. Perbarui ke v2.1.286 atau lebih baru.

Yang harus dilakukan:

  • Jalankan claude di direktori yang dinamai pesan dan terima dialog kepercayaan, kemudian jalankan perintah lagi
  • Untuk pesan direktori home, jalankan perintah dari terminal di direktori home Anda sehingga dialog dapat muncul, atau mulai sesi dari direktori proyek sebagai gantinya
  • Untuk pesan could not be resolved on disk, buat ulang direktori, atau mulai sesi baru dari direktori yang ada

Kesalahan Wrapper dan IDE

Kesalahan ini berasal dari program yang meluncurkan Claude Code untuk Anda, seperti ekstensi IDE atau aplikasi Agent SDK, bukan dari Claude Code itu sendiri.

Proses Claude Code keluar dengan kode N

Proses claude yang mendasar keluar dengan kode bukan nol. Kode keluar saja tidak mengatakan apa yang gagal: kesalahan sebenarnya ada di output proses itu sendiri, yang wrapper tambahkan ketika menangkap apa pun dan sebaliknya menyimpannya di log-nya.

Error: Claude Code process exited with code 1

Di Windows, build native dapat keluar dengan kode 4294967295 tepat setelah giliran selesai. Ketika keluar itu mendarat di batas giliran, tanpa pesan menunggu dan tidak ada tugas latar belakang yang berjalan, ekstensi VS Code menutup sesi dengan tenang alih-alih menampilkan kesalahan ini. Pesan Anda berikutnya melanjutkan percakapan.

Sebelum v2.1.273, ekstensi menampilkan kesalahan untuk keluar itu di setiap batas giliran, meskipun tidak ada yang hilang.

Yang harus dilakukan:

  • Di VS Code, ikuti tautan View output logs yang ditampilkan dengan kesalahan untuk melihat kegagalan yang mendasar
  • Dalam aplikasi Agent SDK, tangkap kesalahan di sekitar loop pesan Anda. Entri di bawah CLI process exit mencakup apa yang diterima kode Anda di setiap bahasa SDK.
  • Jalankan claude di terminal dalam proyek yang sama. Kegagalan biasanya direproduksi di sana dengan pesan kesalahan sebenarnya, yang kemudian dapat Anda cari di halaman ini.
  • Jalankan claude doctor di terminal untuk memeriksa instalasi dan konfigurasi

Tidak dapat menemukan Claude CLI di PATH

Ekstensi VS Code menampilkan kesalahan ini di Windows ketika Anda membuka Claude Code di terminal terintegrasi, shell terminal adalah PowerShell, dan ekstensi tidak dapat menemukan executable claude yang terinstal di PATH. Ekstensi menolak untuk meluncurkan Claude Code sampai menemukan claude yang terinstal di PATH.

Failed to run Claude Code: Error: Could not locate the Claude CLI on PATH. Launching by name in a PowerShell terminal would run a 'claude' from the open folder instead of the installed CLI, so the launch was blocked. Make sure the Claude CLI's install directory is on your system PATH (not only your PowerShell profile), then restart VS Code and try again. VS Code reads PATH when it starts, so PATH changes take effect only after a restart.

Yang harus dilakukan:

  • Buka jendela PowerShell baru di luar VS Code dan jalankan where.exe claude. Jika tidak mencetak jalur, CLI tidak ada di PATH Anda: tambahkan direktori instalasinya dengan mengikuti Verify your PATH. Jika mencetak jalur, entri berasal dari profil PowerShell Anda atau dari perubahan PATH yang belum diambil VS Code; dua langkah berikutnya mencakup kasus-kasus tersebut.
  • Atur entri PATH sebagai variabel lingkungan pengguna atau sistem, bukan di profil PowerShell Anda. Ekstensi tidak menjalankan profil Anda, jadi edit PATH yang hanya ada di sana tidak pernah mencapainya.
  • Mulai ulang VS Code setelah mengubah PATH. Ekstensi memeriksa PATH yang ditangkap VS Code saat startup, jadi perubahan PATH hanya berlaku setelah restart.

Koneksi ke Claude Code berakhir sebelum pesan ini selesai

Ekstensi VS Code mengirim pesan Anda ke proses claude, dan koneksi berakhir tanpa kesalahan sebelum proses mengakui atau menyelesaikannya. Ekstensi tidak dapat mengatakan apakah pesan diproses, jadi meminta Anda untuk mengirimnya lagi:

The connection to Claude Code ended before this message completed — it may not have been processed, so please send it again.

Yang harus dilakukan:

  • Kirim pesan lagi. Pesan berikutnya memulai proses claude segar yang melanjutkan percakapan.
  • Jika terulang, jalankan claude di terminal dalam proyek yang sama. Kegagalan yang terus mengakhiri proses biasanya direproduksi di sana dengan pesan kesalahan sebenarnya.

Peringatan dan kesalahan Rewind

Pesan-pesan ini berasal dari pemulihan kode /rewind. Restored the code, but skipped N files adalah peringatan yang menunjukkan bahwa Claude Code melewati beberapa jalur. No files were restored adalah kesalahan yang berarti tidak ada yang dipulihkan.

Restored the code, but skipped files

Pemulihan kode /rewind melewati satu atau lebih jalur terlacak alih-alih menulis atau menghapus melaluinya. Claude Code melewati jalur ketika:

  • itu adalah, atau menjadi, symlink, hard link, atau file non-reguler lainnya
  • direktorinya berubah sejak checkpoint
  • backup-nya tidak dapat dibaca dengan aman

Jalur yang dilewati mempertahankan konten saat ini mereka. Sebelum v2.1.216, /rewind menulis dan menghapus melalui link di jalur terlacak, dan tidak melaporkan pemulihan sebagian.

Restored the code, but skipped 2 files: the tracked path is (or became) a link or other non-regular file, its directory changed since the checkpoint, or its backup could not be safely read. Skipped files were left untouched — run with --debug for the paths.

Yang harus dilakukan:

  • Identifikasi file mana yang dilewati sehingga Anda dapat menangani masing-masing dengan langkah-langkah di bawah ini. Pesan hanya memberikan hitungan; log debug di ~/.claude/debug/<session-id>.txt menamai setiap jalur yang dilewati saat pemulihan berjalan, jadi aktifkan logging debug dengan /debug sebelum pemulihan berikutnya Anda. Di macOS atau Linux, Anda dapat menemukan link secara langsung: find . -type l untuk symlink dan find . -type f -links +1 untuk file hard-linked.
  • Jika file yang dilewati adalah link yang Anda buat dengan sengaja, seperti file konfigurasi yang dikelola oleh manajer dotfile atau file yang hard-linked oleh alat seperti pnpm, rewind membiarkan kontennya saja. Untuk membatalkan perubahan sesi terhadapnya, minta Claude untuk membalikkan edit atau edit file sendiri
  • Jika Anda tidak membuat link, periksa jalur sebelum mempercayai kontennya

No files were restored

Claude Code menampilkan pesan ini ketika Anda memulihkan kode dengan /rewind dan tidak dapat memulihkan file apa pun dalam checkpoint tersebut. Untuk setiap file, baik backup yang disimpan Claude Code sebelum mengeditnya hilang, atau Claude Code tidak dapat menulis atau menghapus file.

Failed to restore the code:
No files were restored: 1 file failed (backup missing, or the file could not be updated)

Claude Code menghapus backup sesi dalam retention sweep, secara default sekitar 30 hari setelah sesi terakhir menyimpannya. Jika Anda melanjutkan sesi setelah itu, /rewind masih mencantumkan checkpoint-nya, tetapi rewind ke salah satunya dapat gagal dengan kesalahan ini. Jika pesan juga mengatakan N paths were skipped for link safety, lihat Restored the code, but skipped files untuk jalur-jalur tersebut.

Ketika Anda fork sesi, misalnya dengan --fork-session atau /branch, Claude Code menyalin backup sesi asli ke fork. Ketika Claude Code tidak dapat menyalin backup, misalnya karena disk penuh, backup tersebut hilang di fork. Rewind ke checkpoint yang membutuhkannya dapat gagal dengan kesalahan ini.

Yang harus dilakukan:

  • Batalkan perubahan dengan cara lain: minta Claude untuk membalikkan edit-nya, atau pulihkan file dari version control. Ketika backup hilang, menjalankan /rewind lagi gagal dengan cara yang sama.
  • Jika Claude Code tidak dapat menulis atau menghapus file, perbaiki apa yang memblokir penulisan, seperti izin file, kemudian jalankan /rewind lagi.
  • Untuk menyimpan backup lebih lama di sesi mendatang, naikkan cleanupPeriodDays.

Sebelum v2.1.260, Claude Code secara diam-diam melewati file yang backup-nya hilang, dan rewind tampak berhasil.

Peringatan penyimpanan sesi

Claude Code menampilkan peringatan ini pada baris persisten di bawah kotak input ketika tidak menyimpan transkrip sesi Anda. Sesi tetap berfungsi baik cara; peringatan memberi tahu Anda bahwa sesi mungkin hilang dari --resume nanti.

Penulisan transkrip gagal

Claude Code menyimpan transkrip ke disk saat Anda bekerja, dan penulisannya ke file transkrip gagal. Pesan ini menyebutkan penyebabnya dengan kode kesalahan yang mendasar, misalnya disk penuh:

Transcript writes are failing (disk full — ENOSPC) · recent messages may not be saved for resume

Peringatan muncul pada titik berbeda tergantung pada kesalahannya:

  • Pada kegagalan pertama untuk kondisi yang tidak hilang dengan sendirinya: disk penuh, kuota disk terlampaui, sistem file hanya-baca, jalur melebihi batas panjang sistem file, atau, di macOS dan Linux, kesalahan izin
  • Setelah kegagalan berulang yang berlangsung setidaknya satu menit untuk semuanya, termasuk kesalahan izin di Windows, di mana pemindaian antivirus dapat gagal pada satu penulisan yang kemudian berhasil saat dicoba ulang

Sebelum v2.1.217, Claude Code menghapus penulisan yang gagal tanpa peringatan, dan --resume yang hilang pesan terbaru kemudian adalah tanda pertama.

Yang harus dilakukan:

  • Perbaiki kondisi yang disebutkan kode kesalahan: bebaskan ruang disk untuk ENOSPC; naikkan atau hapus kuota untuk EDQUOT; pulihkan akses tulis ke lokasi transkrip untuk EACCES, EPERM, atau EROFS
  • Peringatan hilang dengan sendirinya pada penulisan berikutnya yang berhasil; tidak perlu restart
  • Pesan yang dikirim saat peringatan ditampilkan mungkin masih hilang ketika Anda melanjutkan sesi nanti

Penyimpanan transkrip dimatikan karena CLAUDE\_CODE\_SKIP\_PROMPT\_HISTORY diatur

Sesi ini dimulai dengan CLAUDE_CODE_SKIP_PROMPT_HISTORY diatur, jadi Claude Code tidak menulis transkrip atau riwayat prompt untuk sesi ini:

Transcript saving is off — CLAUDE_CODE_SKIP_PROMPT_HISTORY is set · --resume will not find this session; if unintended, unset it and restart

Variabel ini adalah opt-out yang disengaja untuk sesi skrip sementara, tetapi juga dapat mencapai sesi melalui profil shell, skrip pembungkus, atau proses induk yang mengekspornya.

Yang harus dilakukan:

  • Jika Anda mengatur variabel dengan sengaja, tidak ada tindakan yang diperlukan; pemberitahuan ini mengonfirmasi bahwa sesi tidak akan muncul di --resume, --continue, atau riwayat panah-atas
  • Jika tidak, hapus variabel dari shell atau skrip yang meluncurkan claude, kemudian mulai sesi baru. Pesan dari sesi saat ini tidak disimpan secara retroaktif.

Penyimpanan transkrip dimatikan karena penanda CLAUDE\_CODE\_CHILD\_SESSION yang diwariskan

Claude Code mengatur CLAUDE_CODE_CHILD_SESSION dalam subproses yang dihasilkannya, dan memperlakukan sesi interaktif yang mewarisinya sebagai bersarang: Claude Code tidak menyimpan transkrip untuk sesi tersebut, jadi sesi yang Claude sendiri mulai tidak mengisi daftar --resume Anda. Pemberitahuan ini berarti sesi saat ini Anda mewarisi penanda:

Transcript saving is off — inherited CLAUDE_CODE_CHILD_SESSION marker · restart with CLAUDE_CODE_FORCE_SESSION_PERSISTENCE=1 to keep future transcripts

Pemberitahuan ini diharapkan ketika Anda menjalankan claude dari dalam sesi Claude Code lain; pemberitahuan ini menandakan salah klasifikasi ketika penanda bocor melalui perantara yang tahan lama, misalnya terminal, sesi screen, atau peluncur yang awalnya dimulai oleh sesi Claude Code.

Di dalam tmux, Claude Code mendeteksi penanda yang tiba melalui lingkungan global server tmux dan terus menyimpan, jadi pemberitahuan ini tidak muncul untuk kasus itu.

Yang harus dilakukan:

  • Jika Anda memulai sesi ini dari dalam sesi Claude Code lain dengan sengaja, tidak ada tindakan yang diperlukan
  • Jika ini adalah sesi tingkat atas, keluar dan restart dengan CLAUDE_CODE_FORCE_SESSION_PERSISTENCE=1 diatur. Penyimpanan berlaku dari restart, jadi pesan yang dikirim sebelumnya tidak disimpan.
  • Untuk memperbaiki peluncuran di masa depan dari terminal atau peluncur yang sama, hapus CLAUDE_CODE_CHILD_SESSION dari lingkungannya

Peringatan Konfigurasi

Claude Code menulis sebagian besar pesan ini ke stderr, bukan ke dalam percakapan, dan menulis sebagian besar di saat startup. Sebuah entri mengatakan demikian ketika pesannya muncul di tempat lain, seperti dalam log debug atau sebagai pemberitahuan startup dalam tampilan percakapan, atau pada waktu lain, seperti baris diagnostik model yang tidak dikenali pada saat permintaan.

Claude Code keluar setelah kesalahan antarmuka yang tidak dapat dipulihkan

Claude Code mencetak pesan ini ketika keluar karena antarmuka terminalnya mengalami kesalahan yang tidak dapat dipulihkan, di salah satu renderer. Kalimat kedua muncul hanya ketika kesalahan terjadi saat renderer fullscreen sedang memulai:

Claude Code exited after an unrecoverable interface error (<error>). It happened while the fullscreen renderer was starting, so the next launch will use the classic renderer (CLAUDE_CODE_DISABLE_ALTERNATE_SCREEN=1 forces that any time).

Yang harus dilakukan:

  • Mulai Claude Code lagi. Untuk melanjutkan percakapan, jalankan claude --resume di direktori yang sama.
  • Jika pesan menyebutkan renderer fullscreen, Fullscreen rendering mengatakan apa yang dilakukan peluncuran berikutnya, yang tergantung pada cara Anda mengaktifkan fullscreen, dan cara mencoba fullscreen lagi atau tetap menggunakan renderer klasik.

Sebelum v2.1.236, Claude Code keluar tanpa mencetak pesan setelah kesalahan jenis ini.

Deskripsi agent melebihi batas token 15.0k

Claude Code menampilkan peringatan ini sebagai pemberitahuan startup dalam tampilan percakapan daripada di stderr. Deskripsi gabungan dari subagents Anda, kecuali yang bawaan, melebihi 15.000 token seperti yang diperkirakan Claude Code. Setiap agent menghitung namanya ditambah frontmatter description nya. Claude Code memuat setiap agent terlepas dari apakah totalnya melebihi batas, jadi peringatan tidak mengubah apa yang dimuat.

Agent descriptions are over the 15.0k-token limit (~16.2k tokens) · ask Claude to trim agent descriptions in .claude/agents/

Yang harus dilakukan:

  • Perpendek frontmatter description dari file agent Anda, atau minta Claude untuk memangkasnya untuk Anda.
  • Hapus file agent yang tidak lagi Anda gunakan.

Skill, command, atau workflow tidak dimuat karena namanya dicadangkan

Folder skill, frontmatter name, file atau subfolder di .claude/commands/, atau saved workflow menggunakan nama anthropic-skills atau nama yang dimulai dengan anthropic-skills:. Claude Code mencadangkan nama itu untuk skills yang disinkronkan dari claude.ai dan tidak memuat item itu.

Claude Code menampilkan peringatan ini sebagai pemberitahuan startup dalam tampilan percakapan daripada di stderr:

Not loaded: rename .claude/skills/anthropic-skills, then restart — its name uses "anthropic-skills", a name reserved for the skills synced from your claude.ai account

Pemberitahuan menyebutkan apa yang harus diubah untuk item pertama yang ditolak: folder atau file untuk diubah nama, baris name: untuk diedit, atau workflow untuk diubah nama. Ketika lebih dari satu item ditolak, pemberitahuan berakhir dengan hitungan seperti · 2 more, dan log debug menyebutkan masing-masing.

Yang harus dilakukan:

  • Ubah nama item yang dinamai pemberitahuan, atau edit baris name: yang ditunjuknya, kemudian restart sesi.

Sebelum v2.1.282, Claude Code memuat skills dan commands dengan nama-nama ini.

Workspace belum dipercaya

Claude Code menemukan aturan permissions.allow atau entri permissions.additionalDirectories dalam .claude/settings.json atau .claude/settings.local.json proyek dan tidak menerapkannya, karena aturan allow dari pengaturan proyek memerlukan kepercayaan workspace. Jumlah, nama pengaturan, dan file yang dinamai dalam pesan bervariasi dengan konfigurasi Anda. Aturan deny dan ask tidak terpengaruh.

Ignoring 2 permissions.allow entries from .claude/settings.local.json: this workspace has not been trusted. Run Claude Code interactively here once and accept the trust dialog, or set projects["/Users/you/project"].hasTrustDialogAccepted: true in /Users/you/.claude.json.

Yang harus dilakukan:

  • Jalankan claude di direktori dan terima dialog kepercayaan. Project allow rules and workspace trust mengatakan folder mana yang dicakup oleh penerimaan tersebut.
  • Dalam mode non-interaktif dengan -p tidak ada dialog yang ditampilkan. Atur entri hasTrustDialogAccepted dalam ~/.claude.json menggunakan kunci projects yang tepat yang dicetak pesan.
  • Jika pesan menyebutkan .claude/settings.local.json dan Anda memulai Claude Code di luar repositori git atau di direktori home Anda, perbarui ke v2.1.200 atau lebih baru. Versi 2.1.196 hingga 2.1.199 memperlakukan .claude/settings.local.json Anda sendiri sebagai yang disediakan repositori di workspace tersebut. Pada v2.1.207 dan lebih baru, pembaruan tidak cukup di luar repositori git jika Anda belum mempercayai folder: menentukan bahwa folder tidak berada di dalam repositori menjalankan git, dan Claude Code menjalankan pemeriksaan itu hanya setelah Anda menerima dialog kepercayaan, jadi gunakan langkah pertama. Direktori home Anda dan configuration home lainnya dikecualikan dan tidak menunggu dialog. Lihat Project allow rules and workspace trust.

Direktori kerja adalah jalur jaringan

Claude Code tidak menambahkan jalur jaringan sebagai direktori kerja. Mencari jalur jaringan dapat menghubungi host yang dinamainya, dan di Windows kontak itu dapat mengirim kredensial Anda ke host, jadi Claude Code menolak jalur tanpa mencarinya. Anda melihat pesan ini ketika Anda menjalankan /add-dir dengan jalur seperti itu, atau sebagai peringatan pada startup. Ketika muncul pada startup, Claude Code memulai tanpa direktori itu.

\\server\share is a network path, which cannot be added as a working directory. On Windows, map the share to a drive letter and pass it at launch with --add-dir (a drive letter added mid-session does not yet carry remote-read trust).

Jalur yang Claude Code tolak dengan cara ini termasuk:

  • Berbagi UNC seperti \\server\share
  • Jalur automount seperti /net/<host>, kecuali Anda meluncurkan Claude Code dari direktori di bawah automount host itu
  • Jalur lokal yang mencapai lokasi jaringan melalui symbolic link atau junction

Huruf drive yang dipetakan dan jalur \\wsl$ tidak dihitung sebagai jalur jaringan.

Yang harus dilakukan:

  • Di Windows, petakan berbagi ke huruf drive, misalnya dengan net use Z: \\server\share, dan teruskan drive pada peluncuran dengan claude --add-dir Z:\.
  • Di macOS atau Linux, pasang berbagi di jalur lokal dan tambahkan jalur itu sebagai gantinya.
  • Jika jalur ada di permissions.additionalDirectories, hapus dari file pengaturan yang mencantumnya.

Sebelum v2.1.257, Claude Code menerima jalur jaringan yang dapat dijangkau sebagai direktori kerja.

Pengaturan yang dikelola jarak jauh gagal dimuat

Sesi Anda memenuhi syarat untuk server-managed settings, tetapi Claude Code tidak dapat mengambilnya atau tidak dapat menerapkan apa yang dikembalikan server, jadi menampilkan peringatan ini dalam sesi interaktif.

Penyebab dalam tanda kurung menyebutkan apa yang gagal, seperti network error, request timed out, atau authentication rejected (401). Penyebab no setting in the server response could be applied as written berarti server menjawab tetapi tidak ada pengaturan yang dikembalikannya yang lulus validation. Sebelum v2.1.282, penyebab ini berbunyi server returned invalid settings.

Sisa baris mengatakan kebijakan mana yang dijalankan sesi:

  • Pengaturan di-cache dari pengambilan sebelumnya yang berhasil: Claude Code menjalankan sesi pada kebijakan yang di-cache itu, kecuali variabel lingkungan yang ditahan, dan baris berbunyi using cached policy.
  • Tidak ada cache: Claude Code menjalankan sesi tanpa server-managed settings, dan baris berbunyi no remote policy applied.

Yang harus dilakukan:

  • Bertindak atas penyebab yang dinamai pesan: untuk penyebab jaringan, periksa bahwa mesin ini dapat menjangkau api.anthropic.com; untuk penyebab autentikasi, periksa sign-in Anda dengan /status
  • Untuk no setting in the server response could be applied as written, minta administrator Anda untuk memperbaiki pengaturan di server
  • Jalankan /status atau claude doctor untuk diagnostik lengkap

Sebelum v2.1.248, Claude Code melaporkan pengambilan pengaturan yang gagal hanya dalam log debug.

Pengaturan yang dikelola tidak disetujui

Server-managed settings organisasi Anda mencakup pengaturan yang memerlukan persetujuan Anda, dan Anda menolak dialog persetujuan keamanan, jadi Claude Code keluar tanpa menerapkannya:

Managed settings were not approved; exiting without applying them.

Yang harus dilakukan:

  • Mulai Claude Code lagi dan setujui dialog untuk melanjutkan di bawah pengaturan organisasi Anda. Dialog yang ditolak tidak diingat, jadi muncul lagi pada startup berikutnya.
  • Jika Anda tidak yakin tentang pengaturan yang dialog cantumkan, tanyakan kepada siapa pun yang memelihara pengaturan yang dikelola organisasi Anda sebelum menyetujui

Managed settings memblokir model default

Managed settings organisasi Anda memblokir model yang opsi Default diselesaikan dan setiap model yang dapat diturunkan. Sesi yang akan dimulai pada opsi Default keluar pada startup daripada menjalankan model yang diblokir. Pesan mana yang Anda lihat tergantung pada pengaturan yang memblokir. Ketika daftar deniedModels memblokir, pesan berbunyi:

Claude Code can't start: your organization's managed settings block the default model (claude-opus-5-5) in "deniedModels", and none of the models they allow can be used as the default instead. Ask your administrator to update "deniedModels" or "availableModels".

Ketika daftar availableModels dengan availableModelsMatch diatur ke "exact" menghilangkannya, pesan berbunyi:

Claude Code can't start: your organization allows only the models listed in "availableModels", and none of them can be used as the default model (claude-opus-5-5 isn't listed). Ask your administrator to update "availableModels".

Yang harus dilakukan:

  • Jika Anda mengelola pengaturan, tambahkan model yang dapat dijalankan pengguna Anda ke availableModels, atau persempit entri deniedModels yang memblokir setiap fallback. Block specific models or versions menjelaskan bagaimana opsi Default diturunkan
  • Jika Anda tidak mengelolanya, kirim pesan ke administrator Anda. File pengaturan Anda sendiri tidak dapat memperluas daftar availableModels atau deniedModels yang dikelola

Managed settings tidak mengizinkan penyedia API ini

Managed settings organisasi Anda menetapkan daftar allowedProviders, dan penyedia API sesi tidak ada di dalamnya atau sesi menggunakan endpoint yang tidak disematkan dengan cara yang diperlukan entri itu. Claude Code menolak pada startup, sebelum login, atau ketika sesi berikutnya menghubungi API. Pesan dimulai dengan penyedia yang diizinkan:

Your organization's managed settings allow Claude Code to use: Anthropic API, Amazon Bedrock.

Ketika daftar kosong, pesan berbunyi sebagai gantinya:

Your organization's managed settings allow Claude Code to use no API provider at all (allowedProviders is an empty list), so it cannot start on this machine.

Ketika setiap entri tidak dikenali, parenthetical berbunyi (allowedProviders lists only unrecognized entries) sebagai gantinya.

Yang harus dilakukan:

  • Ikuti langkah To continue: pesan
  • Jika Anda mengelola pengaturan, baris pesan yang dimulai Admins: menyebutkan entri untuk ditambahkan atau nilai untuk disematkan, dan entri allowedProviders mengatakan blok env sumber mana yang dapat menyematkannya

Server MCP diblokir oleh kebijakan yang dikelola perusahaan

Anda memilih Reconnect pada server di /mcp, atau mengaktifkan kembali server yang dinonaktifkan di sana, dan pengaturan yang membatasi server MCP memblokir server itu. Claude Code menolak untuk menghubungkannya dan menampilkan:

MCP server <name> is blocked by enterprise managed policy

Salah satu dari pengaturan ini dapat menghasilkan pesan:

Yang harus dilakukan:

  • Periksa file pengaturan pengguna dan proyek Anda sendiri untuk salah satu pengaturan ini dan ubah atau hapus
  • Jika tidak ada pengaturan Anda sendiri yang menjelaskan blokir, tanyakan administrator Anda pengaturan yang dikelola mana yang memblokir server

Sebelum v2.1.257, Reconnect dan re-enable di /mcp dapat menghubungkan server yang pembaruan kebijakan mid-session memblokir.

Dokumen pengaturan yang dikelola tidak dapat diuraikan

Organisasi Anda menerapkan managed settings, dan salah satu dokumen yang diterapkan ada tetapi tidak dapat diuraikan sebagai objek JSON, jadi Claude Code keluar dengan kode 1 pada startup daripada berjalan tanpa kebijakan yang dibawa dokumen. Baris menyebutkan sumber yang gagal sebelum pesan:

/Library/Application Support/ClaudeCode/managed-settings.json: Managed settings document could not be parsed as a JSON object; none of its settings are in effect. Fix or remove it.

Sumbernya adalah salah satu dari:

  • Jalur file managed-settings.json atau file drop-in di bawah managed-settings.d
  • Profil preferensi yang dikelola macOS, per-user managed preferences atau device-level managed preferences
  • Nilai registry Windows, Registry: HKLM\SOFTWARE\Policies\ClaudeCode\Settings

Find entries Claude Code dropped mencantumkan apa yang membuat setiap sumber tidak dapat diuraikan.

Claude Code menolak untuk memulai bahkan ketika sumber admin lain memberikan kebijakan yang valid. Anda melihat kesalahan ini dalam sesi interaktif, claude -p, sesi Agent SDK, background sessions, dan sebagian besar subperintah, claude doctor termasuk. Penolakan gagal tertutup dengan sengaja: pengaturan dalam dokumen yang tidak dapat diuraikan Claude Code tidak dapat ditegakkan, dan memulai bagaimanapun akan menjalankan sesi tanpa kontrol organisasi Anda.

Masalah skema dalam dokumen yang dapat diuraikan tidak menghasilkan kesalahan ini. Find entries Claude Code dropped mencakup apa yang Claude Code lakukan dengan satu.

Ketika direktori managed-settings.d/ ada tetapi tidak dapat didaftar, Claude Code melaporkan Managed settings drop-in directory could not be read: diikuti oleh kesalahan yang mendasar sebagai gantinya. Find entries Claude Code dropped mencakup kapan kegagalan baca keluar pada startup.

Yang harus dilakukan:

  • Jika Anda mengelola mesin, perbaiki dokumen yang dinamai sehingga diuraikan sebagai objek JSON, atau hapus file, profil, atau nilai registry. managed-settings.json kosong dihitung sebagai {} dan tidak memblokir peluncuran.
  • Jika tidak, minta administrator Anda untuk memperbaiki dokumen yang diterapkan. Tidak ada dalam file pengaturan Anda sendiri yang menyebabkan atau menghapus kesalahan ini.

Tidak dapat membaca pengaturan kebijakan yang dikelola

Organisasi Anda menerapkan managed settings, dan salah satu sumber yang diterapkan ada tetapi tidak dapat dibaca, karena alasan seperti kesalahan I/O daripada sistem operasi menolak pembacaan. Tanpa sumber admin lain yang menyediakan kebijakan, Claude Code keluar pada startup daripada berjalan tanpa kebijakan yang mungkin dibawa sumber:

Unable to read managed policy settings.
This machine may require organization login enforcement, but the policy file failed to load.
Contact your administrator.

Detail: <source>: <reason>

Dalam keadaan yang sama, alur sign-in, permintaan API dari sesi yang sudah berjalan, dan server claude gateway ditolak dengan varian baris pertama yang menyebutkan allowedProviders.

Pembacaan yang ditolak sistem operasi, seperti pada file root-only, tidak menghasilkan keluar ini: sesi dimulai tanpa kebijakan sumber itu. Untuk sumber yang tidak dapat diuraikan, Claude Code keluar dengan pesan berbeda yang menyebutkan sumber.

Yang harus dilakukan:

  • Jika Anda mengelola mesin, perbaiki masalah yang dinamai baris Detail: sehingga sumber yang diterapkan dapat dibaca, atau hapus sumber
  • Jika tidak, kirim pesan ke administrator Anda. Tidak ada dalam file pengaturan Anda sendiri yang menyebabkan atau menghapus kesalahan ini

Sebelum v2.1.285, hanya sesi yang masuk dengan kredensial claude.ai atau Claude Console yang keluar dengan pesan ini, dan pembacaan yang ditolak sistem operasi juga menghasilkannya.

otelHeadersHelper gagal

Claude Code menampilkan peringatan ini sebagai notifikasi dalam antarmuka terminal, sekali per sesi interaktif, ketika skrip otelHeadersHelper gagal atau mencetak output yang tidak memenuhi persyaratan skrip.

Sementara skrip terus gagal, ekspor gagal dan backend telemetri Anda tidak menerima apa pun dari sesi.

Teks setelah See /status: mengatakan apa yang gagal, seperti kode keluar skrip diikuti oleh output kesalahannya:

otelHeadersHelper failed; telemetry is not being exported. See /status: exited 1: token service unreachable

Yang harus dilakukan:

  • Jalankan /status untuk membaca detail kegagalan.
  • Perbaiki skrip sehingga keluar 0 dalam 30 detik dan mencetak objek JSON dari nilai header string di stdout. Lihat script requirements.
  • Jika organisasi Anda menerapkan skrip melalui managed settings, minta siapa pun yang memeliharanya untuk memperbaikinya.

Dalam mode non-interaktif dengan -p, kegagalan yang sama muncul di stderr sebagai otelHeadersHelper failed (OpenTelemetry export headers unavailable): <error> sebagai gantinya.

headersHelper tidak dijalankan

Claude Code menghubungkan server MCP dengan headers statis saja dan melewati headersHelper server, karena helper adalah perintah shell dan folder tidak memiliki kepercayaan yang disimpan. Folder mendapatkan kepercayaan yang disimpan ketika Anda mengatur entrinya di ~/.claude.json dengan tangan atau, di luar direktori home Anda, ketika Anda menerima dialog kepercayaan untuk itu dalam sesi interaktif. Lihat Trust a folder before its headersHelper runs untuk server mana pemeriksaan ini berlaku.

Claude Code menulis baris ini dalam mode non-interaktif saja, sekali per server. Dalam sesi interaktif, itu menulis penolakan yang sama ke log debug sebagai gantinya.

MCP server 'internal-api': headersHelper not run — this workspace has no persisted trust; accept the trust dialog here once interactively, or set projects["/Users/you/project"].hasTrustDialogAccepted in /Users/you/.claude.json.

Kunci projects yang dicetak pesan adalah folder yang Project allow rules and workspace trust katakan Claude Code kunci kepercayaan. Menerima dialog kepercayaan untuk folder induk tidak memenuhi pemeriksaan, dan sesi -p atau SDK tidak memenuhinya juga.

Yang harus dilakukan:

  • Jalankan claude di folder yang dinamai pesan, terima dialog kepercayaan, kemudian jalankan perintah -p atau SDK Anda lagi
  • Atur entri hasTrustDialogAccepted dalam ~/.claude.json sendiri, menggunakan kunci projects yang tepat yang dicetak pesan
  • Jika Anda memulai sesi di direktori home Anda, bekerja dari direktori proyek yang telah Anda percayai. Ketika Anda menerima dialog kepercayaan di direktori home Anda, Claude Code menyimpan kepercayaan itu untuk sesi saat ini saja.

Aturan Tool(content) yang salah format

Aturan izin dalam salah satu file pengaturan Anda tidak memiliki bentuk Tool atau Tool(content), misalnya karena teks mengikuti tanda kurung penutup atau salah satu tanda kurung hilang. Claude Code melewati aturan dan mencantumnya dalam dialog pengaturan yang tidak valid ketika sesi interaktif dimulai, dan dalam output claude doctor:

Invalid permission rule "Bash(ls) x" was skipped: Malformed Tool(content) rule. Rules take the form Tool or Tool(content) and must end at the closing ")"; parentheses inside the content are literal

Yang harus dilakukan:

  • Dalam file pengaturan yang tercantum dengan pesan, tulis ulang aturan sehingga berakhir pada tanda kurung penutupnya, misalnya Bash(ls *) sebagai pengganti Bash(ls) x
  • Biarkan tanda kurung di dalam konten apa adanya. Mereka literal, jadi aturan seperti Edit(./Finance (2024)/**) valid tanpa escaping

Sebelum v2.1.260, Claude Code melaporkan aturan dengan tanda kurung yang tidak cocok sebagai Mismatched parentheses.

Tidak cocok dengan pemeriksaan izin file

Claude Code menemukan aturan izin Write, NotebookEdit, MultiEdit, atau Glob dengan jalur dalam salah satu file pengaturan Anda, dalam managed settings, atau dalam nilai flag --allowedTools, --disallowedTools, atau --settings. Itu memeriksa izin file terhadap aturan Edit dan Read saja, jadi tidak pernah berkonsultasi dengan aturan jalur yang menyebutkan salah satu alat file lainnya. Itu menyimpan aturan dan tidak mengubah apa pun yang lain; peringatan menyebutkan aturan, sumbernya dalam tanda kurung, dan penggantian untuk ditulis:

Permission deny rule (.claude/settings.json): Write(docs/**) is not matched by file permission checks — only Edit(path) rules are. Use Edit(docs/**) instead (Edit rules cover all file-editing tools).

Yang harus dilakukan:

  • Ganti aturan Write(path), NotebookEdit(path), dan MultiEdit(path) warisan dengan Edit(path). Aturan Edit mencakup semua alat pengeditan file.
  • Kecuali dalam --allowedTools, di mana Claude Code menerima aturan Glob tanpa peringatan, ganti aturan Glob(path) dengan Read(path).
  • Perbaiki aturan di sumber yang dinamai peringatan dalam tanda kurung: jalur file pengaturan, atau flag itu sendiri untuk --allowed-tools dan --disallowed-tools. Jalur claude-settings-<hash>.json yang tidak ada di disk mewakili nilai --settings inline. Perbaiki JSON yang Anda teruskan ke flag itu.
  • Biarkan aturan nama alat bare seperti Write atau Glob saja. Claude Code mencocokkannya di tingkat alat dan tidak memperingatkan tentang mereka.
  • Jika sumber berbunyi managed policy settings, teruskan peringatan kepada siapa pun yang memelihara pengaturan yang dikelola Anda, karena Anda tidak dapat menghapusnya sendiri.

Dalam background session atau dengan --output-format json atau stream-json, Claude Code menulis peringatan ke log debug daripada stderr, jadi output yang dibaca mesin tetap bersih. Jalankan dengan --debug untuk menangkapnya di ~/.claude/debug/<session-id>.txt. Sebelum v2.1.210, Claude Code menerima aturan ini tanpa peringatan.

Memiliki wildcard sebelum sisa perintah

Claude Code menemukan aturan allow Bash yang * nya datang sebelum kata belakangan yang menentukan perintah mana itu, seperti Bash(git * main) atau Bash(git -C * status *), dalam salah satu file pengaturan Anda, dalam managed settings, atau dalam nilai flag --allowedTools atau --settings. * cocok dengan teks apa pun, termasuk opsi yang disisipkan pada posisi itu: Bash(git * main) juga menyetujui git -c core.fsmonitor=<script> diff main, di mana -c membuat git menjalankan program yang dinamai perintah. Wildcard patterns menunjukkan aturan pencocokan.

Peringatan ada sehingga Anda dapat mempersempit aturan yang wildcard-nya lebih luas dari yang Anda maksudkan. Claude Code menyimpan aturan dan tidak mengubah apa pun tentang cara pencocokannya; peringatan menyebutkan aturan dan sumbernya dalam tanda kurung:

Permission allow rule (.claude/settings.json): Bash(git -C * status *) has a wildcard before the rest of the command, so it also matches any options inserted at that position and approves them without a prompt. For git, options such as -c and --exec-path can run arbitrary commands. Replace that * with the exact value you mean, or only use * after the subcommand (for example Bash(git status *)).

Yang harus dilakukan:

  • Ganti * sebelum subperintah dengan nilai yang tepat yang Anda maksudkan: Bash(git checkout main) sebagai pengganti Bash(git * main).
  • Pindahkan setiap * setelah subperintah: Bash(git status *) sebagai pengganti Bash(git -C * status *). Tulis satu aturan per subperintah yang ingin Anda izinkan.
  • Perbaiki aturan di sumber yang dinamai peringatan dalam tanda kurung: jalur file pengaturan, atau flag --allowed-tools itu sendiri. Jalur claude-settings-<hash>.json yang tidak ada di disk mewakili nilai --settings inline. Perbaiki JSON yang Anda teruskan ke flag itu.
  • Jika sumber berbunyi managed policy settings, teruskan peringatan kepada siapa pun yang memelihara pengaturan yang dikelola Anda, karena Anda tidak dapat menghapusnya sendiri.

Claude Code tidak memperingatkan tentang aturan deny dan ask dengan bentuk yang sama: itu menolak atau meminta perintah tambahan yang mereka cocokkan daripada menyetujuinya. Itu juga tidak memperingatkan tentang aturan yang subperintahnya datang sebelum * pertama, seperti Bash(git commit *), atau aturan di mana tidak ada kata selain opsi yang mengikuti *, seperti Bash(git *), atau tentang aturan awalan :* seperti Bash(git:*).

Dalam background session atau dengan --output-format json atau stream-json, Claude Code menulis peringatan ke log debug daripada stderr, jadi output yang dibaca mesin tetap bersih. Jalankan dengan --debug untuk menangkapnya di ~/.claude/debug/<session-id>.txt. Sebelum v2.1.246, Claude Code menerima aturan ini tanpa peringatan.

crossSessionInbound harus salah satu dari accept, hold, refuse

File pengaturan menetapkan crossSessionInbound ke nilai yang tidak dikenali Claude Code, seperti typo "reject". Kalimat kedua peringatan tergantung pada file mana yang menyimpan nilai; dalam file pengguna, proyek, lokal, atau --settings berbunyi:

"crossSessionInbound" must be one of "accept", "hold", "refuse"; received "reject". This value was ignored; while it is present, cross-session messages are held for your approval instead of being delivered. Set it to one of the values above.

Dalam managed settings, Claude Code memperlakukan nilai yang tidak dikenali sebagai refuse, nilai paling ketat, dan peringatan mengatakan pesan lintas sesi ditolak sampai administrator memperbaikinya. Untuk cara hold menggabungkan dengan nilai dalam file pengaturan lainnya, lihat crossSessionInbound.

Yang harus dilakukan:

  • Atur kunci ke "accept", "hold", atau "refuse", atau hapus
  • Ketika peringatan menyebutkan managed settings, minta administrator untuk memperbaiki nilai

Sebelum v2.1.248, Claude Code mengabaikan nilai yang tidak dikenali tanpa peringatan.

Batas 200K tidak ditegakkan

Anda menetapkan CLAUDE_CODE_DISABLE_1M_CONTEXT=1, yang biasanya membuat auto-compaction menahan sesi pada model konteks 1M ke jendela 200K, tetapi tidak ada ambang batas compaction yang membatasi sesi ini pada atau di bawah 200K, jadi percakapan dapat tumbuh melampaui itu.

CLAUDE_CODE_DISABLE_1M_CONTEXT is set, but the 200K limit isn't enforced for <model>, so this session can grow past it. To enforce it, set CLAUDE_CODE_AUTO_COMPACT_WINDOW=200000 (or the autoCompactWindow setting).

Claude Code menegakkan batas 200K sendiri untuk setiap model yang dikenalinya sebagai memiliki jendela 1M asli, dan untuk ID model yang tidak dikenalinya, itu compacts pada jendela yang diasumsikan. Peringatan muncul ketika konfigurasi lain mengalahkan penegakan itu:

Yang harus dilakukan:

  • Atur CLAUDE_CODE_AUTO_COMPACT_WINDOW=200000, atau pengaturan autoCompactWindow ke 200000, sehingga auto-compaction compacts pada batas 200K
  • Jika pesan menyebutkan ID model yang versi ini tidak kenali, jalankan claude update. Versi yang mengenali ID sebagai model konteks 1M menegakkan batas tanpa konfigurasi lebih lanjut.
  • Jika Anda ingin sesi menggunakan jendela penuh model sebagai gantinya, batalkan CLAUDE_CODE_DISABLE_1M_CONTEXT; peringatan melaporkan hanya bahwa batas 200K tidak ditegakkan

Dalam background session atau dengan --output-format json atau stream-json, Claude Code menulis peringatan ke log debug daripada stderr.

ID model yang tidak dikenali pada permintaan

Claude Code mengirim permintaan untuk ID model yang versi Claude Code Anda tidak kenali, dan tidak menemukan entri modelOverrides yang memetakan ID itu ke model yang dikenalinya. Claude Code masih mengirim permintaan dengan ID seperti yang Anda konfigurasi, dan tidak keluar atau beralih model.

[claude-code:unrecognized_model] {"model":"my-proxy-model","query_source":"sdk"}

Dalam skrip atau harness yang membaca stderr, cocokkan pada awalan [claude-code:unrecognized_model]. Setelah awalan dan satu spasi, Claude Code menulis objek JSON satu baris. Claude Code dapat menambahkan bidang ke dalamnya dalam versi yang lebih baru, jadi abaikan bidang apa pun yang tidak Anda harapkan. Itu menulis setidaknya dua ini:

  • model: string model seperti yang Anda konfigurasi
  • query_source: jalur permintaan yang menggunakan model. Claude Code melaporkan sdk untuk jalankan -p dan nilai yang dimulai dengan agent: untuk subagent.

Claude Code menulis baris ke salah satu dari dua tempat, tergantung pada cara Anda menjalankannya:

  • Dalam mode non-interaktif dengan -p, Claude Code menulis ke stderr di bawah setiap --output-format, jadi Anda dapat menguraikan stdout tanpa memfilter baris keluar
  • Dalam sesi interaktif atau background session, Claude Code menulis ke log debug sebagai gantinya; jalankan dengan --debug untuk menangkapnya di ~/.claude/debug/<session-id>.txt

Claude Code menulis baris sekali per string model per proses. Itu menulis baris terpisah untuk setiap ID yang tidak dikenali lebih lanjut, seperti yang digunakan subagent atau background functionality.

Claude Code tidak menulis baris untuk ID penyedia yang diselesaikannya ke model yang dikenalinya, seperti Amazon Bedrock us.anthropic.claude-... ID, ID Agent Platform Google Cloud dengan akhiran versi @, dan nama deployment Microsoft Foundry yang berisi ID model Claude. Claude Code memeriksa model di balik application inference profile ARN Amazon Bedrock daripada ARN itu sendiri. Itu tidak menulis baris untuk ARN yang tidak dapat diselesaikannya, seperti yang salah ketik.

Yang harus dilakukan:

  • Jika Anda menetapkan ID dengan sengaja, seperti alias LLM gateway, tambahkan entri modelOverrides ke file pengaturan Anda dengan ID sebagai nilainya. Gunakan ID model Anthropic sebagai kunci, bukan alias keluarga seperti opus. Untuk my-proxy-model dari baris contoh, tambahkan entri ini:

    {
      "modelOverrides": {
        "claude-opus-4-6": "my-proxy-model"
      }
    }
    

    Claude Code kemudian memperlakukan my-proxy-model sebagai claude-opus-4-6 dan berhenti menulis baris.

  • Jika ID menyebutkan model yang lebih baru dari versi Claude Code Anda, jalankan claude update

  • Jika ID adalah typo, perbaiki di mana pun dari tempat Anda dapat menetapkan model atau variabel alias yang menyimpannya. Jika query_source dimulai dengan agent:, perbaiki di mana Anda menetapkan model subagent sebagai gantinya.

Sebelum v2.1.233, Claude Code tidak menulis baris ketika mengirim permintaan untuk ID model yang tidak dikenalinya.

File mask sandbox basi ditinggalkan oleh sesi yang dibunuh

claude doctor mencetak peringatan ini dalam diagnostiknya, dan /status mencantumkan baris yang sama. Itu muncul di Linux dan WSL2 ketika sandboxing diaktifkan dengan isolasi filesystem aktif.

Sementara perintah sandboxed berjalan, sandbox menyimpan penolakan tulis pada file yang belum ada dengan membuat placeholder read-only 0-byte di sana, dan menghapusnya setelahnya. Sesi yang dibunuh sebelum pembersihan itu berjalan, misalnya oleh SIGKILL, meninggalkan placeholder di belakang. Sesi-sesi kemudian mengikatnya read-only lagi pada setiap start, jadi penulisan pengaturan seperti menyimpan "Yes, and don't ask again" gagal di mana satu duduk.

- Stale sandbox mask files left by a killed session: /home/you/project/.claude/settings.local.json
  Fix: Remove each with `rm <path>` while no other Claude Code session is running in that project — a 0-byte read-only file where a settings file belongs makes "Yes, and don't ask again" fail to save, and the sandbox binds it read-only again on every start

Yang harus dilakukan:

  • Keluar dari sesi Claude Code lain yang berjalan di proyek itu, kemudian hapus setiap file yang tercantum dengan rm. Peringatan menyebutkan hingga tiga file dan menghitung sisanya, jadi jalankan kembali claude doctor setelah menghapus sampai peringatan tidak lagi muncul. Placeholder yang sandbox sesi lain masih gunakan adalah bagian hidup dari perlindungan tulis sesi itu
  • Jika pilihan izin yang Anda simpan dengan "Yes, and don't ask again" tidak tetap, simpan lagi setelah menghapus placeholder

Sebelum v2.1.257, claude doctor tidak menandai file-file ini; versi-versi sebelumnya meninggalkan placeholder yang sama di belakang ketika sesi dibunuh.

Respons tampak berkualitas lebih rendah dari biasanya

Jika jawaban Claude tampak kurang mampu dari yang Anda harapkan tetapi tidak ada kesalahan yang ditampilkan, penyebabnya biasanya adalah status percakapan daripada model itu sendiri. Claude Code tidak secara diam-diam mengubah versi model. Ini dapat beralih ke model fallback dalam kasus-kasus berikut:

  • --fallback-model yang dikonfigurasi mengambil alih setelah kesalahan ketersediaan, hanya untuk giliran itu, dengan pemberitahuan dalam transkrip
  • Pemeriksaan startup Amazon Bedrock atau Google Cloud's Agent Platform menemukan model default Anda tidak tersedia, atau akun Anda kehilangan akses ke sana di tengah sesi
  • Fallback model otomatis pada Fable 5.1, Fable 5, Opus 5.5, Sonnet 5.5, dan Opus 5 memindahkan sesi ke model fallback kategori yang ditandai, ketika kategori itu memiliki satu, dan menampilkan pemberitahuan dalam transkrip

Pemeriksaan Model selection di bawah menangkap kasus kedua dan ketiga; yang pertama muncul sebagai pemberitahuan transkrip daripada perubahan /model. Model configuration menjelaskan kapan setiap fallback berlaku.

Periksa ini terlebih dahulu:

  • Model selection: jalankan /model untuk mengonfirmasi Anda berada di model yang Anda harapkan. Pilihan /model sebelumnya atau variabel lingkungan ANTHROPIC_MODEL mungkin membuat Anda berada di model yang lebih kecil dari yang Anda maksudkan.
  • Effort level: jalankan /effort untuk memeriksa tingkat penalaran saat ini dan naikkan untuk debugging atau pekerjaan desain yang sulit. Default bervariasi menurut model, jadi periksa sebelum menganggap Anda di bawah maksimum. Lihat Adjust effort level untuk default per-model dan pintasan ultrathink.
  • Context pressure: jalankan /context untuk melihat seberapa penuh jendela itu. Jika mendekati kapasitas, jalankan /compact pada titik alami atau /clear untuk memulai segar. Lihat Explore the context window untuk bagaimana auto-compact mempengaruhi giliran sebelumnya.
  • Stale instructions: file CLAUDE.md yang besar atau ketinggalan zaman dan definisi alat MCP mengonsumsi konteks dan dapat mengarahkan respons. Pemeriksaan /doctor menandai file memori yang berukuran besar dan ekstensi yang tidak digunakan, dan /context menampilkan penggunaan token alat MCP. Sebelum v2.1.205, /doctor membuka layar diagnostik yang menandai file memori yang berukuran besar dan definisi subagent.

Ketika respons salah, rewinding biasanya bekerja lebih baik daripada membalas dengan koreksi. Tekan Esc dua kali atau jalankan /rewind untuk mundur ke sebelum giliran buruk, kemudian rephrase prompt dengan lebih spesifik. Mengoreksi dalam-thread menjaga upaya yang salah dalam konteks, yang dapat menambatkan jawaban nanti ke sana. Lihat Checkpointing.

Jika kualitas masih tampak tidak benar setelah memeriksa di atas, jalankan /feedback dan jelaskan apa yang Anda harapkan versus apa yang Anda dapatkan. Umpan balik yang dikirimkan dengan cara ini mencakup transkrip percakapan, yang merupakan cara tercepat bagi Anthropic untuk mendiagnosis regresi nyata. Lihat Report an error jika /feedback tidak tersedia di lingkungan Anda.

Jika Claude memperingatkan tentang injeksi prompt yang dicurigai, atau menolak permintaan karena injeksi yang dicurigai, dan teks yang dinamai peringatan adalah konteks yang Claude Code tambahkan ke percakapan secara otomatis daripada konten file atau web, jalankan claude update dan coba lagi. Jika peringatan berulang setelah memperbarui, laporkan daripada menempel konten yang ditandai kembali ke prompt. Sebelum v2.1.201, Sonnet 5 menolak beberapa permintaan dengan cara yang sama.

Laporkan kesalahan

Untuk kesalahan dari komponen yang tidak tercakup di halaman ini, lihat panduan yang relevan:

Jika kesalahan tidak tercantum di sini atau perbaikan yang disarankan tidak membantu:

  • Jalankan /feedback di dalam Claude Code untuk mengirimkan transkrip dan deskripsi ke Anthropic. Perintah ini juga menawarkan untuk membuka masalah GitHub yang sudah diisi sebelumnya. Pengiriman ke Anthropic memerlukan authentication. Di Amazon Bedrock, Google Cloud's Agent Platform, Microsoft Foundry, dan penyedia pihak ketiga lainnya, atau ketika tidak ada kredensial Anthropic yang dikonfigurasi, /feedback menyimpan arsip lokal yang dapat Anda kirimkan ke perwakilan akun Anthropic Anda.
  • Jalankan claude doctor dari shell Anda untuk diagnostik sistem file read-only dari instalasi Anda, atau jalankan pemeriksaan /doctor di dalam Claude Code untuk menemukan dan memperbaiki masalah pengaturan
  • Periksa status.claude.com untuk insiden aktif
  • Cari existing issues di GitHub