Every feature flag, and where it lived
49 of 2,095 feature flags One tick per build on this box, oldest on the left. A gap is a build the feature flag was not in.
State
This account
Anonymous
Compiled default
A is the one account this site reads, N the anonymous baseline, D what the release compiled in. 1,158 of 2,095 gates have been read at all: a run only records the gates its own release wrote about. Claude Code evaluates its gates on Anthropic's servers, so a reading of off can be a rollout this account sits outside of, and none of it says anything about your install. How to read these.
○ not in v2.1.309, ◇ we found no documentation describing it.
Feature flagWhat it doesSpan v2.1.138 → v2.1.309 Status Reading
tengu_amber_lattice ◇ Default {}. Its plugins field is a list of plugin names (without the @marketplace suffix) whose hook commands are given the user's Anthropic credential in their environment: ANTHROPIC_AUTH_TOKEN set to the claude.ai OAuth access token when logged in that way, otherwise ANTHROPIC_API_KEY. It applies only to a plugin installed from one of Anthropic's official marketplaces, never when ANTHROPIC_UNIX_SOCKET is set, and subject to further provider and account checks.v2.1.144 → v2.1.309 ◆in the build AND v2.1.308
tengu_amber_moleskin ◇ Default null. A per-context-window version of tengu_amber_rokovoko, the fraction of the effective context window held in reserve when deciding to start precomputing a compaction summary in the background. The value is an object keyed by context-window size in tokens, or default, each entry {repl, sdk} with fractions from 0 up to but not including 1; sdk is used for queries whose source is sdk and repl for the rest. With null, a malformed table, or no entry for the current window and no default, the tengu_amber_rokovoko value is used.v2.1.179 → v2.1.309 ◆in the build AND v2.1.308
tengu_amber_rokovoko ◇ Default 0.2. The fraction of the effective context window held in reserve when deciding to start precomputing a compaction summary in the background: precompute arms once the context reaches the effective window minus this fraction of it, or the auto-compact threshold if that is lower. A value that is not a number from 0 up to but not including 1 falls back to 0.2. A matching entry in tengu_amber_moleskin takes precedence.v2.1.142 → v2.1.309 ◆in the build AND v2.1.308
tengu_amber_tally ◇ Default {}. Configures a warning shown when an inactive conversation is continued after its prompt cache has likely expired, or with a different model: the cost of re-sending the context is estimated as a percentage of the 5-hour usage limit from creditsPerMillionTokens (per model) and fiveHourCredits (per rate-limit tier), and if it reaches minPercent (default 5) a dialog offers Resume or Start a new conversation. With the default {} those two required maps are missing and no warning is shown. Setting newConversationPointer to false also drops the reminder that points a conversation started this way at the earlier transcript.v2.1.282 → v2.1.309 ◆in the build AND v2.1.308
tengu_bg_attach_stall_ms ◇ Default 5000 (milliseconds). How long attaching to a background session may wait for it to redraw before Claude Code restarts the session with Session not responding; after two such restarts it gives up, prints Session keeps stalling at startup. and kills the session. 0 turns the restart off; any other value is raised to at least 2000, or 12000 when a background-session launcher is configured.v2.1.138 or earlier → v2.1.309 ◆in the build AND v2.1.308
tengu_bridge_rc_child_idle_exit_ms ◇ More conditions now trigger a session-tag prefetch before spawning a Remote Control bridge workerv2.1.273 → v2.1.309 ◆in the build AND v2.1.308
tengu_canary ◇ Default {}. Its external field, when it holds a valid version string, names a canary release for the native installer: when an update asks for latest and the canary is newer than the version latest resolved to, the canary is installed instead. A canary above the configured maxVersion is not applied.v2.1.138 or earlier → v2.1.309 ◆in the build AND v2.1.308
tengu_ccr_bundle_max_bytes ◇ Default null, which means 104857600 bytes (100 MiB). The size cap for the git bundle built to upload a local repository to a cloud session: bundle tiers larger than the cap are skipped in favour of narrower ones, and when even the last tier exceeds it the upload fails with "Repo is too large to bundle". Twice the cap also limits the bytes staged into the work-in-progress stash commit that goes into the bundle.v2.1.138 or earlier → v2.1.309 ◆in the build AND v2.1.308
tengu_cedar_hollow_7m ◇ Default {}. When the current model resolves to claude-opus-4-8, a model field in this object sets the model the auto mode permission classifier uses, ahead of tengu_auto_mode_config.model. With any other model, or with no model field, the classifier uses tengu_auto_mode_config.model and then the current model.v2.1.154 → v2.1.165 ○gone AND v2.1.308
tengu_curried_trinket ◇ No description from anybody.v2.1.290 → v2.1.309 ◆in the build AND v2.1.308
tengu_ember_trail ◇ Default "0". Picks the warm resume hint shown at startup, last here <time> · <session title> · /resume to continue: "0" and any unrecognised value hide it, "1" and "2" show it with · claude --resume --fork-session to branch appended when the terminal is wide enough, and "3" shows it without that part. It appears only on a plain claude start with no arguments, outside CI, within the first 30 startups, when a previous session is recorded, and only until it has been shown once.v2.1.138 or earlier → v2.1.143 ○gone AND v2.1.308
tengu_fennel_kite_model ◇ Default "". A model-ID substring: when the current model's ID contains it, and the base preconditions hold (the default Anthropic API base URL or CLAUDE_CODE_MID_CONVERSATION_SYSTEM set, plus other provider and model checks), requests send the mid-conversation-system-2026-04-07 beta header and message building switches to its mid-conversation-system handling. A model ID matching CLAUDE_CODE_MID_CONVERSATION_SYSTEM is accepted first, and a non-empty cached client-data value of the same name is used in place of the flag.v2.1.138 or earlier → v2.1.153 ○gone AND v2.1.308
tengu_hazel_osprey_floor ◇ Number, code default 75000. While the tengu_hazel_osprey context-hint feature is on for main-thread requests, a request that qualifies for the hint carries context_hint: {enabled: true, target_tokens_saved: <value>}; a value of 0 or less leaves target_tokens_saved out.v2.1.138 or earlier → v2.1.309 ◆in the build AND v2.1.308
tengu_iridescent_gem ◇ New sampled telemetry records detailed hashes around cache-prefix breaks.v2.1.261 → v2.1.309 ◆in the build AND v2.1.308
tengu_jaunty_plum ◇ No description from anybody.v2.1.300 → v2.1.309 ◆in the build AND v2.1.308
tengu_juniper_sundial ◇ Default null, meaning 10. While ultra effort stays on, the number of user messages since the last ultra effort reminder after which Claude Code attaches a sparse ultra_effort_enter reminder again. A number is floored and raised to at least 1; a non-number uses the default, and CLAUDE_CODE_JUNIPER_SUNDIAL or one other override source take precedence.v2.1.218 → v2.1.309 ◆in the build AND v2.1.308
tengu_juniper_vale ◇ Default {enabled: false, maxChars: 500, autoDismissAfterMs: 30000}. Controls the follow-up prompt shown after the user answers the in-session feedback survey with anything other than dismissing it: enabled: true turns it on, maxChars (a positive number, default 500) sets its character limit, and autoDismissAfterMs (at least 600, default 30000) sets when it is dismissed automatically. It is not shown while a response is loading, an overlay is open, or the prompt input has text, and another check can force it on with the default limits.v2.1.213 → v2.1.309 ◆in the build AND v2.1.308
tengu_lilac_loom ◇ Default null. A promotional "feature of the week" campaign payload: an object with feature, optional command, startsAt and endsAt (ISO 8601 with a timezone), and optional display fields such as titleLabel, tips, announcementLines and creditless. A payload that fails validation is logged and ignored, and the campaign is active only between startsAt and endsAt.v2.1.242 → v2.1.309 ◆in the build AND v2.1.308
tengu_long_context_survey_probability ◇ Default "", which means 0.2. Chance that the long-context feedback survey opens once its token threshold is crossed: the value goes through Number, an empty or non-finite value uses 0.2, and the result is clamped to 0 through 1. The roll is made once per survey component, so a failed roll is not retried.v2.1.196 → v2.1.309 ◆in the build AND v2.1.308
tengu_long_context_survey_question_variant ◇ Default "". Selects the long-context survey question: instruction_following asks How well is Claude following the instructions you gave earlier in this conversation? (optional), and any other value uses the generic survey question.v2.1.191 → v2.1.309 ◆in the build AND v2.1.308
tengu_long_context_survey_threshold ◇ Default "". Token count at which the long-context feedback survey may appear; the value must be all digits and greater than 0, and anything else leaves the threshold unset so the survey never triggers. The count it is compared with is chosen by tengu_long_context_survey_trigger_mode.v2.1.191 → v2.1.309 ◆in the build AND v2.1.308
tengu_long_context_survey_trigger_mode ◇ Default "". Which token count is compared with tengu_long_context_survey_threshold: virtual_context uses a context-token count computed from the current transcript, and any other value (cumulative) uses the session's cumulative token count.v2.1.196 → v2.1.309 ◆in the build AND v2.1.308
tengu_mcp_local_oauth_blocked_hosts ◇ Default {"hosts": ["microsoft365.mcp.claude.com", "gmail.mcp.claude.com", "gcal.mcp.claude.com"]}. An http or sse MCP server whose URL host (lowercased, trailing dot removed) is in hosts is classified as Anthropic-hosted for authentication, with a message that it doesn't support local OAuth and should be connected under Settings, Connectors on claude.ai. A missing or non-array hosts, or one with no string entries, uses the default list.v2.1.162 → v2.1.309 ◆in the build AND v2.1.308
tengu_mcp_negotiation_server_denylist ◇ Remote config can force legacy MCP handshakes or suppress listening for named servers, matched by hostname.v2.1.259 ○gone AND v2.1.308
tengu_mem_push_delete_mode ◇ Default corroborate. How a memory store sync push treats a previously synced file that is now missing locally: immediate deletes it remotely on that push, never never deletes it (and skips the mass-delete hold check), and corroborate deletes it only after it has been missing on at least 2 walks at least 30000 ms apart. Other flag values mean corroborate; a set CLAUDE_CODE_MEMORY_PUSH_DELETE_MODE overrides the flag.v2.1.212 → v2.1.309 ◆in the build AND v2.1.308
tengu_memoized_turtle ◇ No description from anybody.v2.1.295 → v2.1.308 ○gone AND v2.1.308
tengu_nifty_lemur ◇ Five analytics events cover the weekly limit-reset flow.v2.1.248 → v2.1.309 ◆in the build AND v2.1.308
tengu_non_deferrable_builtins ◇ Default null. A list of tool names that tool search does not defer, so they are loaded with the request. The value may be a plain array or an object keyed by model name substring with a * fallback; it is merged with a non_deferrable_builtins list from another config source, and its entries also feed a set of MCP server names alongside the always-allow rules.v2.1.176 → v2.1.309 ◆in the build AND v2.1.308
tengu_org_config_required ◇ No description from anybody.v2.1.293 → v2.1.309 ◆in the build AND v2.1.308
tengu_pewter_lark ◇ Default "off". Controls the goal-command-nudge tip for /goal (3-session cooldown) for users signed in with a claude.ai subscription: any value other than off makes the tip eligible, and the value picks the copy: copy_orig ("Set an objective with /goal"), copy_b ("Use /goal all tests pass"), or any other value for the default "/goal keeps Claude working until a condition is met" text. On the first-party API without a claude.ai subscription login the tip is eligible with the copy_orig text whatever the flag says, and in other setups, such as third-party providers, it stays off.v2.1.141 → v2.1.179 ○gone AND v2.1.308
tengu_porch_bell_9f ◇ Default "". A non-empty string is shown as a high-priority warning notification for 30000 ms, and is re-checked when flag values update; an empty value removes the notification. Not shown when the workspace is remote.v2.1.138 or earlier → v2.1.139 ○gone AND v2.1.308
tengu_rate_limit_promo_notices ◇ Default []. A list of { bar, text, variant } notices for the usage limit bars (Current session, Current week (all models) and the rest): each notice whose bar matches a bar's key case-insensitively, such as five_hour, seven_day or seven_day_sonnet, is rendered as an extra line under that bar. variant must be a key of the dark theme or it is dropped; a list that fails validation shows nothing.v2.1.208 → v2.1.309 ◆in the build AND v2.1.308
tengu_rc_permission_nudge ◇ An object {afterPromptCount, probability, maxImpressions} configuring the "Approve tool calls from your phone" hint, with code default {afterPromptCount: 5, probability: 0, maxImpressions: 3}. The hint can appear only while Remote Control is active with a session URL, after afterPromptCount permission prompts, with random chance probability, and at most maxImpressions times; with the default probability of 0 it never shows. The CLAUDE_CODE_RC_PERMISSION_NUDGE environment variable (JSON) overrides it.v2.1.208 → v2.1.309 ◆in the build AND v2.1.308
tengu_reflective_bee ◇ A new dialog can offer to connect GitHub to claude.ai after a git push, not yet confirmed livev2.1.267 → v2.1.309 ◆in the build AND v2.1.308
tengu_russet_whimbrel ◇ No description from anybody.v2.1.295 → v2.1.309 ◆in the build AND v2.1.308
tengu_sepia_cormorant ◇ Default null. A list of model name substrings: when the session's current model contains one (case-insensitive) and tengu_umber_petrel is also on, auto memory defaults to off for that model and its status reads unavailable for current model with the toggle disabled. CLAUDE_CODE_DISABLE_AUTO_MEMORY set to a false value still forces auto memory on; a non-array or empty value has no effect.v2.1.138 or earlier → v2.1.309 ◆in the build AND v2.1.308
tengu_starry_waterfall ◇ No description from anybody.v2.1.304 → v2.1.309 ◆in the build AND v2.1.308
tengu_steady_plum ◇ The effort-downgrade nudge now works per model instead of just one, but each model needs its own flag turned on.never mined ·never mined AND v2.1.308
tengu_tern_alloy ◇ Default "off". Any other value makes the subagent-fanout-nudge tip eligible, with a 3-session cooldown, on the first-party API for users not signed in with a claude.ai subscription. The value copy_b shows For big tasks, tell Claude to use subagents. They work in parallel and keep your main thread clean.; any other non-off value shows Say "fan out subagents" and Claude sends a team. Each one digs deep so nothing gets missed.v2.1.138 or earlier → v2.1.140 ○gone AND v2.1.308
tengu_tide_elm ◇ Default "off". Any other value makes the effort-high-nudge tip, which suggests /effort high and has a 3-session cooldown, eligible on the first-party API for users not signed in with a claude.ai subscription, when the current model supports effort, no policy effortLevel is set, CLAUDE_CODE_EFFORT_LEVEL is unset or invalid (its values auto and unset also hide the tip), and the effortLevel setting is not high, xhigh or max. The value copy_b shows Use /effort high for better one-shot answers. Claude thinks it through first.; any other non-off value shows Working on something tricky? /effort high gives better first answers.v2.1.138 or earlier → v2.1.140 ○gone AND v2.1.308
tengu_timber_lark ◇ Default "off". Controls the loop-command-nudge tip for /loop: "off" hides it, "copy_b" shows Use /loop 5m check the deploy to run any prompt on a schedule. Set it and forget it., and any other value shows /loop runs any prompt on a recurring schedule. Great for monitoring deploys, babysitting PRs, or polling status. The tip also needs cron scheduling to be enabled (CLAUDE_CODE_DISABLE_CRON not set true and tengu_kairos_cron on) plus a further eligibility check, and has a cooldown of 3 sessions.v2.1.138 or earlier → v2.1.140 ○gone AND v2.1.308
tengu_toasty_breeze ◇ Hitting the 5-hour limit could offer to keep working at reduced priority, but it is off for everyone.v2.1.239 → v2.1.309 ◆in the build AND v2.1.308
tengu_tool_search_unsupported_models ◇ Default null. A list of model name substrings for which tool search is treated as unsupported: a model whose name contains one (case-insensitive) does not get tool search and reports model_unsupported where that reason is used. A non-array value falls back to the built-in list claude-3-5-haiku, claude-3-haiku.v2.1.138 or earlier → v2.1.309 ◆in the build AND v2.1.308
tengu_ultraplan_prompt_identifier ◇ Default "simple_plan". Picks the ultraplan prompt variant: simple_plan, visual_plan or three_subagents_with_critique; an unknown value falls back to simple_plan. It also picks the dialog and command text, where three_subagents_with_critique shows a ~10-30 min estimate and the Advanced multi-agent plan mode. blurb; a launch that carries its own prompt identifier uses that instead.v2.1.138 or earlier → v2.1.309 ◆in the build AND v2.1.308
tengu_ultraplan_timeout_seconds ◇ Default 5400. Seconds Claude Code polls a cloud ultraplan session for an approved plan before failing with no approval after N minutes or, if no plan was ever pending, ExitPlanMode never reached after N minutes.v2.1.138 or earlier → v2.1.309 ◆in the build AND v2.1.308
tengu_velvet_harbor_owl ◇ A startup banner pitching Claude Enterprise to org admins exists but no one sees it by default.v2.1.238 → v2.1.309 ◆in the build AND v2.1.308
tengu_velvet_marble ◇ No description from anybody.v2.1.307 → v2.1.309 ◆in the build AND v2.1.308
tengu_velvet_moth ◇ Default 0.2. Probability that the memory survey opens for an assistant message that cites a memory with an eligible citation sentence (at most 250 characters), once the survey is otherwise enabled (tengu_dunwich_bell on, product feedback allowed, CLAUDE_CODE_DISABLE_FEEDBACK_SURVEY unset, among other checks); each message is considered once. 1 always opens it for an eligible message and 0 never does.v2.1.138 or earlier → v2.1.309 ◆in the build AND v2.1.308
tengu_zippy_gosling ◇ Default 0 (off). Idle threshold in milliseconds for an interval poller used by several background checks, including policy limits polling. When it is a positive number, no main-loop query is running, and more time than that has passed since the later of the last user interaction and the last API completion, a poll tick is postponed until the next user interaction, at most 3 ticks in a row; a non-number, zero or negative value turns the postponement off.v2.1.261 → v2.1.309 ◆in the build AND v2.1.308
Nothing on this page matches that. Press Enter to search every feature flag.