Claude Code 2.1.282 ignores telemetry set by project files

Suppose you clone a repository whose settings file switches on telemetry export, points it at an endpoint or asks to capture content. Claude Code 2.1.282 skips those variables and tells you at startup that it did, according to the release notes on Github, which also cover stricter managed settings and a long list of repairs.
At a glance
- Project and local settings files can't turn on OpenTelemetry export, choose its endpoint or capture content, so variables like CLAUDE_CODE_ENABLE_TELEMETRY and OTEL_LOG_* are ignored when they come from there.
- Claude Code reports every skip: a startup notice, a /status entry and a claude doctor entry list telemetry variables that were ignored or that turned telemetry off.
- The catch: MCP servers configured under the names anthropic-skills or claude-ai stop listing skills and prompts, though their tools still work, so you will need to rename them.
If you have not followed Claude Code's telemetry setup: according to Claude Code Docs, it exports metrics, events and optionally distributed traces through OpenTelemetry. The same docs say exporter selectors such as OTEL_METRICS_EXPORTER follow per-key precedence starting with v2.1.223. The Claude Code Ultimate Guide reports an earlier move in the same direction: v2.1.84 introduced CLAUDE_CODE_SUBPROCESS_ENV_SCRUB, which strips credentials from subprocess environments.
Project and local settings stop honoring telemetry export, endpoint and content variables
The core change is narrow. Project and local settings files ignore OpenTelemetry variables that do one of three things: turn on export, set its endpoint, or capture content. The release notes give CLAUDE_CODE_ENABLE_TELEMETRY and the OTEL_LOG_* family as examples.
The skip is visible. At startup, Claude Code shows a notice listing telemetry variables from a project's settings files that were ignored or that turned telemetry off, and the same list shows up in /status and claude doctor. If your team switched telemetry on through a committed settings file, that setup stops working, and the notice is where you will find out.
A related change touches auto mode. On a direct Anthropic API connection with telemetry off, auto mode uses the server-side classifier by default, and CLAUDE_CODE_AUTO_MODE_SERVER=0 opts out. According to the Claude Code Ultimate Guide, the previous release, v2.1.281 (Sep 23, 2026), had already made that variable an opt-out on direct connections, where the local classifier counts toward usage.
A mistyped lock key in managed settings still locks, and two skill names become reserved
Several fixes change what managed settings do when something in them is wrong. A mistyped value for a boolean lock key such as disableClaudeAiConnectors or allowManagedPermissionRulesOnly used to be ignored. The lock applies in that case now, and startup names the key. When one nested value in managed permissions, autoMode, worktree or attribution settings was invalid, the whole block was ignored. The rest of the block now still applies.
Two namespaces become reserved. Skill(anthropic-skills:*) and Skill(claude-ai:*) allow rules cover only skills synced from claude.ai, and skill folders, command files and workflow commands in those namespaces stop loading. A plugin with such a name still loads, but synced skills win any name tie.
MCP servers configured under the name anthropic-skills or claude-ai list no skills or prompts, although their tools still work as before. Renaming the server in your MCP configuration brings the listing back.
--continue and --resume sessions get fixes for dropped reasoning
If you work in long sessions, you will feel these fixes most. Continued or resumed sessions sometimes re-sent earlier messages in a changed form, which could make the API drop Claude's earlier reasoning, and this release fixes more of those cases. Earlier extended thinking was also lost when /model, /rename, /artifacts or another immediate slash command ran while Claude was working. The same happened on a relaunch with a --tools list that left out a built-in tool offered earlier.
Several failure loops are fixed too. Conversations whose history held web search results the API cannot decrypt, for example from a turn answered through a third-party gateway, failed every request with a 400 error. On an "Invalid data in redacted_thinking block" error, Claude Code drops the thinking blocks and retries once, refused compaction retries on a fallback model, and very large sessions resume faster.
maxProseWidth caps prose width while tables keep the full terminal
maxProseWidth is a new setting that caps the width of Claude's prose in wide terminals, while tables and code blocks keep the full width. store.readiness_grace_seconds, added to the Claude apps gateway, keeps /readyz ready through a short Postgres outage such as a database failover. And allowClaudeInChromeWithManagedMcp lets claude --chrome run alongside an exclusive managed-mcp.json. The error shown when Chrome is blocked now names that setting.
The rest of the list is repairs. Bash and PowerShell stop hiding a full disk quota behind "Exit code 1". The VS Code panel stops re-parsing the whole reply on every update, and Claude Tag footers stop showing cost and token totals many times too high after a cloud worker restart. Vim mode gets four entries of fixes, and the Clawd mascot's feet in the start-up banner sit under the corners of his body.
Why could a project settings file point telemetry at any endpoint?
Claude Code reads settings in layers: managed settings from an admin, your user settings, and project and local settings that live inside the repository. Project settings are committed and travel with the code, so what they set applies to anyone who opens the repo. A variable there that enabled export and named an endpoint would send your session's telemetry wherever the file's author chose.
Think of a shared office printer: a note taped to it can set the paper size, but it should not decide where copies get mailed. According to Claude Code Docs, admins already had a stronger lever. Managed OTEL_EXPORTER_OTLP_* values make Claude Code remove conflicting developer-set variables at startup, and OTEL_* variables are not passed to the Bash tool, hooks, MCP servers or language servers.
The notes leave gaps. They say which kinds of telemetry variables project files lose, and give two examples, but they do not publish a full list of the affected names. In our view, the rename requirement for anthropic-skills and claude-ai MCP servers is the sharper edge: tools keep working while skills and prompts drop out of the list, and the notes describe no warning for that case.
Your first launch on 2.1.282
The startup notice is the first thing to check. On the first run after upgrading, it shows whether any project you open had telemetry variables skipped, and /status or claude doctor will list them again later. According to the Claude Code Ultimate Guide, releases come out almost daily. Nothing has been said about what the next one contains, or whether the telemetry filter will cover more variables.
Related stories
- Claude Code 2.1.281 adds Bedrock guardrails to its gateway
- Claude Code 2.1.283 keeps new models out until admins say so
- Claude Code opens network hosts one command at a time
- Claude Code 2.1.223 patches a Bash permission bypass
- Worktree isolation was leaking git commands into the main copy
- Claude Code 2.1.221: permission bypass fixed, Focus view in VSCode, credential masking
Comments
No comments yet. Be the first.
Join the conversation
Sign in with Google to leave a comment. Your name and avatar come from your Google profile, and the comment appears after moderation.
