What
Add the dynamicThinkingEffort experimental setting (off by default) that gates the dynamic thinking-effort feature set: the model adjusting its own reasoning effort per turn via a native tool, and the user adjusting it in-chat.
Part of the Dynamic Thinking Effort series (5 PRs). Master design issue: easonLiangWorldedtech#28.
PR protocol (all series PRs): draft PR until CI is fully green -> switch to ready -> CodeRabbit bot review addressed in full -> 100% test coverage on patch lines. Each PR <= 1000 diff lines, based on latest upstream main (stacked on preceding series PRs where noted; rebased to pure main once dependencies merge).
Stacking: PR 1/5 — standalone, based on main.
Scope
packages/types/src/experiment.ts — experiment id dynamicThinkingEffort
src/shared/experiments.ts — EXPERIMENT_IDS entry + default config { enabled: false }
webview-ui/src/components/settings/ExperimentalSettings.tsx — toggle following the existing experimental-setting render pattern
- i18n keys for the new setting in every locale the
check-translations CI gate requires
Out of scope
Native tool, task state, and chat UI surfaces — follow-up PRs 2-5 of the series.
Acceptance criteria
What
Add the
dynamicThinkingEffortexperimental setting (off by default) that gates the dynamic thinking-effort feature set: the model adjusting its own reasoning effort per turn via a native tool, and the user adjusting it in-chat.Part of the Dynamic Thinking Effort series (5 PRs). Master design issue: easonLiangWorldedtech#28.
PR protocol (all series PRs): draft PR until CI is fully green -> switch to ready -> CodeRabbit bot review addressed in full -> 100% test coverage on patch lines. Each PR <= 1000 diff lines, based on latest upstream main (stacked on preceding series PRs where noted; rebased to pure main once dependencies merge).
Stacking: PR 1/5 — standalone, based on main.
Scope
packages/types/src/experiment.ts— experiment iddynamicThinkingEffortsrc/shared/experiments.ts—EXPERIMENT_IDSentry + default config{ enabled: false }webview-ui/src/components/settings/ExperimentalSettings.tsx— toggle following the existing experimental-setting render patterncheck-translationsCI gate requiresOut of scope
Native tool, task state, and chat UI surfaces — follow-up PRs 2-5 of the series.
Acceptance criteria
check-translationsgreen