{"version":"2.1.310","anchor":"trusted-device-session-expiry-message","canonical_anchor":"trusted-device-session-expiry-message","heading":"Cloud session creation recovers from untrusted-device refusals","tier":"notice","area":"Elsewhere","scope":"individual","heads_up":false,"url":"https:\/\/changelogs.core-directive.com\/v\/2.1.310\/e\/trusted-device-session-expiry-message","release_url":"https:\/\/changelogs.core-directive.com\/v\/2.1.310","markdown":"### Cloud session creation recovers from untrusted-device refusals\n\nStarting a cloud session now re-enrolls an untrusted device and retries, and tells you to run \/login when that or the trusted-device check fails\n\n**What**\n\nA cloud session is Claude Code running on a remote machine. Creating one now handles refusals tied to device trust and sign-in:\n\n- When the server refuses with a 403 `token_refused` and device identity is enabled, Claude Code re-enrolls the computer as a device and sends the request again.\n\n- If that recovery fails, the message says: \"this computer is not a trusted device for your account yet. Sign in again with \/login to enroll it, then retry\".\n\n- A new message covers an expired sign-in: \"session expired for trusted-device check - run \/login to re-authenticate\".\n\n- Session creation now builds its sign-in details through a helper that can refresh credentials, so a failed create can retry with refreshed details.\n\n- The 403 message \"Choose a cloud environment with \/remote-env\" now appears only when the refusal is recognised as an unrecognized-environment refusal.\n\n**Why**\n\nStarting a cloud session from a computer that is not yet enrolled as trusted can now recover by itself, and when it cannot, you are told to use `\/login` instead of seeing a bare failure.\n\n- Area: Elsewhere\n- Names: `\/login`\n- Tier: You'll notice\n- Useful: 2\/5\n- Signal: 3\/5\n- Scope: individual\n- Heads-up: no"}