Follow Discord
Sweep 22 Oct 2026 · 04:32Z Build v2.1.308 527 read Stable v2.1.308 Latest v2.1.308 Next v2.1.308 Feeds RSS JSON llms.txt llms-full.txt Unofficial

CLAUDE_CODE_EVAL_CONFINED

env in the build JSON

A Claude Code environment variable, read out of the shipped bundle. It has been in the build since v2.1.251, including the newest one read.

In confined evaluation runs, publishing re-checks a file's identity before reading it.

Not Anthropic's. This is the line from the earliest changelog entry here that named it, v2.1.251.

First seen v2.1.251 28 Aug 2026
Last seen v2.1.308 22 Oct 2026
Builds49 / 149on this box, as of v2.1.308
Written about v2.1.251 first named in a changelog, 28 Aug 2026
v2.1.251in the build not in the build never minedv2.1.308

In the changelogs

15

Releases whose published page names CLAUDE_CODE_EVAL_CONFINED.

  1. v2.1.301
    Files with extra hard links can now be refused case by case

    Claude Code's refusal of files with more than one hard link can now be switched on for a single file access, not only by an environment variable

    found in this entry's text, named in this entry

  2. v2.1.301
    Refusing hard-linked files can now be asked for separately

    Claude Code's refusal to read hard-linked files can now be turned on for a single read, not only with CLAUDE_CODE_EVAL_CONFINED

    found in this entry's text, named in this entry

  3. v2.1.300
    Files can be attached as mentions without being typed in the prompt

    Claude Code can now attach mentioned files from a supplied list of file paths, not only from @-mentions typed in the prompt

    found in this entry's text

  4. v2.1.295
    Refusals to create cloud sessions now come from one combined check

    Creating a cloud session is now refused by a single check that gives its own message and reason, replacing two separate checks

    found in this entry's text

  5. v2.1.288
    Plugins lose network access in confined sessions

    Plugins are now refused network access when CLAUDE_CODE_EVAL_CONFINED is set, and a message says the session's credential is withheld

    found in this entry's text, named in this entry

  6. v2.1.284
    Hooks cannot grant web fetching or searching in Projects sessions

    In Projects sessions, a PermissionRequest hook can no longer approve WebFetch or WebSearch or loosen their rules

    found in this entry's text

  7. v2.1.281
    Worktree isolation refused in diskless sessions

    Agents can no longer use worktree isolation in sessions launched without a disk

    found in this entry's text

  8. v2.1.268
    Strict network allowlist check consolidated and extended with CLAUDE_CODE_EVAL_CONFINED

    Network sandbox strict-allowlist check consolidated into one helper, now also considering CLAUDE_CODE_EVAL_CONFINED

    found in this entry's text, named in this entry

  9. v2.1.257
    Confined-evaluation-child mode skips remote settings fetch entirely

    As a confined evaluation child, Claude Code skips fetching remote settings and uses a harness-written policy snapshot.

    found in this entry's text, named in this entry

  10. v2.1.251
    Publish re-verifies a file's identity after opening it

    In confined evaluation runs, publishing re-checks a file's identity before reading it.

    named in this entry, found in this entry's text

  11. v2.1.251
    Subagent report-file heuristic disabled in confined runs

    The subagent report-file guess is switched off entirely in confined evaluation runs.

    found in this entry's text

  12. v2.1.251
    How the evaluation subprocess environment is assembled

    The confined-evaluation flag is injected into eval child processes, confirming it's harness plumbing not a setting.

    named in this entry, found in this entry's text

  13. v2.1.251
    A confined evaluation mode, set by Claude Code on itself

    A confined evaluation mode exists that Claude Code only sets on its own eval subprocesses.

    named in this entry, found in this entry's text

  14. v2.1.251
    Evaluation runs get narrowed permissions

    In confined evaluation runs, allow rules from settings files are ignored; only CLI ones count.

    named in this entry, found in this entry's text

  15. v2.1.251
    What the confined mode changes across cloud, permissions and plugin loading

    Confined mode also blocks cloud sessions and changes how MCP servers and hooks load.

    named in this entry

First cited

7

The earliest release whose published evidence quoted CLAUDE_CODE_EVAL_CONFINED was v2.1.251, 28 Aug 2026. That is the oldest release this project wrote about it, so it is a floor on the name's age and not the release that introduced it. It is not a presence reading: which builds carried the name is the table below.

ReleaseDateThe span that was quoted
v2.1.25128 Aug 2026!a.CLAUDE_CODE_EVAL_CONFINED && (X6() || qr(ee()) !== null)
v2.1.25128 Aug 2026CLAUDE_CODE_EVAL_CONFINED
v2.1.25128 Aug 2026a.CLAUDE_CODE_EVAL_CONFINED
v2.1.25128 Aug 2026v.CLAUDE_CODE_EVAL_CONFINED = "1"
v2.1.26810 Sep 2026function QVt() { return H7() || von() || Boolean(a.CLAUDE_CODE_EVAL_CONFINED); }
v2.1.28123 Sep 2026return !a.CLAUDE_CODE_EVAL_CONFINED && !Xa() && (Z6() || $r(ne()) !== null);

1 further span in the ledger name it. The list above is the earliest first and stops at 6.

Presence across releases

1
BuildsHow manyDatesReading
v2.1.251 – v2.1.30849 builds28 Aug 2026 → 22 Oct 2026 ◆in the build

Build by build

49

One row per release since the first build this name was read out of. Absent means the build was read and the name was not in it, never mined means no bundle for that release was ever archived, and a declared type or a default is only ever what that release's own bundle stated.

BuildDateStateThe record behind it
v2.1.25128 Aug 2026·addedverdict: added · bool
v2.1.25231 Aug 2026·presentverdict: present · bool
v2.1.2571 Sep 2026·presentverdict: present · bool
v2.1.2581 Sep 2026·presentverdict: present · bool
v2.1.2592 Sep 2026·presentverdict: present · bool
v2.1.2603 Sep 2026·presentverdict: present · bool
v2.1.2614 Sep 2026·presentverdict: present · bool
v2.1.2636 Sep 2026·presentverdict: present · bool
v2.1.2658 Sep 2026·presentverdict: present · bool
v2.1.2668 Sep 2026·presentverdict: present · bool
v2.1.2679 Sep 2026·presentverdict: present · bool
v2.1.26810 Sep 2026·presentverdict: present · bool
v2.1.26911 Sep 2026·presentverdict: present · bool
v2.1.27012 Sep 2026·presentverdict: present · bool
v2.1.27114 Sep 2026·presentverdict: present · bool
v2.1.27214 Sep 2026·presentverdict: present · bool
v2.1.27315 Sep 2026·presentverdict: present · bool
v2.1.27416 Sep 2026·presentverdict: present · bool
v2.1.27517 Sep 2026·presentverdict: present · bool
v2.1.27618 Sep 2026·presentverdict: present · bool
v2.1.27718 Sep 2026·presentverdict: present · bool
v2.1.27819 Sep 2026·presentverdict: present · bool
v2.1.28022 Sep 2026·presentverdict: present · bool
v2.1.28123 Sep 2026·presentverdict: present · bool
v2.1.28224 Sep 2026·presentverdict: present · bool
v2.1.28325 Sep 2026·presentverdict: present · bool
v2.1.28428 Sep 2026·presentverdict: present · bool
v2.1.28529 Sep 2026·presentverdict: present · bool
v2.1.28630 Sep 2026·presentverdict: present · bool
v2.1.2871 Oct 2026·presentverdict: present · bool
v2.1.2882 Oct 2026·presentverdict: present · bool
v2.1.2893 Oct 2026·presentverdict: present · bool
v2.1.2905 Oct 2026·presentverdict: present · bool
v2.1.2916 Oct 2026·presentverdict: present · bool
v2.1.2926 Oct 2026·presentverdict: present · bool
v2.1.2937 Oct 2026·presentverdict: present · bool
v2.1.2948 Oct 2026·presentverdict: present · bool
v2.1.2958 Oct 2026·presentverdict: present · bool
v2.1.2969 Oct 2026·presentverdict: present · bool
v2.1.29914 Oct 2026·presentverdict: present · bool
v2.1.30014 Oct 2026·presentverdict: present · bool
v2.1.30115 Oct 2026·presentverdict: present · bool
v2.1.30216 Oct 2026·presentverdict: present · bool
v2.1.30318 Oct 2026·presentverdict: present · bool
v2.1.30419 Oct 2026·presentverdict: present · bool
v2.1.30520 Oct 2026·presentverdict: present · bool
v2.1.30621 Oct 2026·presentverdict: present · bool
v2.1.30721 Oct 2026·presentverdict: present · bool
v2.1.30822 Oct 2026·presentverdict: present · bool

Read out of the published npm bundle release by release, and out of Anthropic's own documentation as this site captured it. Nothing on this page is a description anybody here wrote about what the environment variable does. All environment variables.

Feedback