{"version":"2.1.301","anchor":"user-agent-entrypoint-can-come-from-a-new-helper","canonical_anchor":"attribution-header-entrypoint-can-be-overridden-by-a-functio","heading":"Reported entrypoint now comes from a helper before CLAUDE_CODE_ENTRYPOINT","tier":"internal","area":"Environment Variables","scope":"individual","heads_up":false,"url":"https:\/\/changelogs.core-directive.com\/v\/2.1.301\/e\/user-agent-entrypoint-can-come-from-a-new-helper","release_url":"https:\/\/changelogs.core-directive.com\/v\/2.1.301","markdown":"### Reported entrypoint now comes from a helper before CLAUDE_CODE_ENTRYPOINT\n\nThe entrypoint label in the billing header and the User-Agent now asks a helper first, then CLAUDE_CODE_ENTRYPOINT, then a fallback\n\n**Unclear.** What the new first source returns, and so whether `CLAUDE_CODE_ENTRYPOINT` can still decide the label, is not clear.\n\n**What**\n\nClaude Code tells Anthropic's servers how it was started, called the entrypoint (for example, from the command line). Two places that send this label now ask a new helper first.\n\n- The `cc_entrypoint` value in the billing header uses the helper's answer, then `CLAUDE_CODE_ENTRYPOINT`, then `unknown`.\n\n- The entrypoint part of the `claude-cli\/` User-Agent (the identifying string sent with each request) uses the helper's answer, then `CLAUDE_CODE_ENTRYPOINT`, then `cli`.\n\nBefore this release, both read `CLAUDE_CODE_ENTRYPOINT` directly.\n\n**Why**\n\nIf you set `CLAUDE_CODE_ENTRYPOINT`, it may no longer be the value reported, because the helper's answer now comes first. The label Anthropic receives for how Claude Code was started may change.\n\n- Area: Environment Variables\n- Names: `CLAUDE_CODE_ENTRYPOINT`\n- Tier: Under the hood\n- Useful: 1\/5\n- Signal: 2\/5\n- Scope: individual\n- Heads-up: no"}