What
Programs can drive Claude Code through the SDK, a software kit for controlling it from code, by sending it control requests. When one fails, the reply carries an error code. The documented list of those codes now includes:
unsupported_request, for any request this end does not servecheck_unreachable,check_server_error,oauth_org_not_allowedandhooks_unchecked, finer reasons for a failed model changecredential_name, for reading a file to uploadmcp_call_refusal_limitand the othermcp_call_*codes, for claude-code-server tenants
Before, the list stopped at model change codes such as check_failed and check_rejected.
Why
A program can now tell a deliberate refusal apart from a real failure, and retry only the cases worth retrying.