{"version":"2.1.232","anchor":"artifact-commands-now-require-a-claude-ai-login-specifically","canonical_anchor":"artifact-commands-now-require-a-claude-ai-login-specifically","heading":"Artifact commands now require a claude.ai login specifically","tier":"notice","area":"Artifacts","scope":null,"heads_up":null,"url":"https:\/\/changelogs.core-directive.com\/v\/2.1.232\/e\/artifact-commands-now-require-a-claude-ai-login-specifically","release_url":"https:\/\/changelogs.core-directive.com\/v\/2.1.232","markdown":"### Artifact commands now require a claude.ai login specifically\n\nArtifact commands now need a claude.ai login and fail fast if you're on an API key.\n\n**What**\n\nEvery artifact request (list, read, comments, delete, publish) now checks for a claude.ai OAuth token instead of accepting any authenticated session. Setups signed in by API key or other means get `Not authenticated \u2014 run \/login (no claude.ai login)` immediately rather than a failed network call.\n\n**Details**\n\n- The endpoints affected are `\/api\/frame\/frames`, `\/api\/frame\/read\/...`, `\/api\/frame\/comments\/...` and the artifact delete and publish paths.\n- The check returns `{ ok: !1, reason: \"no-auth\", detail: \"no claude.ai login\" }` before any request is sent.\n- The token refresh that runs before each call moved into a helper that logs `firstPartyApi: refreshOAuth failed` and continues with the cached token instead of failing the whole call.\n\n**Evidence**\n\n`no claude.ai login`\n\n- Area: Artifacts\n- Names: `\/login`\n- Tier: You'll notice\n- Useful: 4\/5\n- Signal: 3\/5"}