René's URL Explorer Experiment


Title: Thinking-level (reasoning effort) picker in the chat composer · Issue #44 · modelstudioai/openwork · GitHub

Open Graph Title: Thinking-level (reasoning effort) picker in the chat composer · Issue #44 · modelstudioai/openwork

X Title: Thinking-level (reasoning effort) picker in the chat composer · Issue #44 · modelstudioai/openwork

Description: Problem or Motivation OpenWork supports six per-session thinking levels (off / low / medium / high / xhigh / max), but there is no way to change the thinking level from the chat composer. Today the only place to influence it is Settings ...

Open Graph Description: Problem or Motivation OpenWork supports six per-session thinking levels (off / low / medium / high / xhigh / max), but there is no way to change the thinking level from the chat composer. Today the...

X Description: Problem or Motivation OpenWork supports six per-session thinking levels (off / low / medium / high / xhigh / max), but there is no way to change the thinking level from the chat composer. Today the...

Opengraph URL: https://github.com/modelstudioai/openwork/issues/44

X: @github

direct link

Domain: github.com


Hey, it has json ld scripts:
{"@context":"https://schema.org","@type":"DiscussionForumPosting","headline":"Thinking-level (reasoning effort) picker in the chat composer","articleBody":"## Problem or Motivation\n\nOpenWork supports six per-session **thinking levels** (`off` / `low` / `medium` /\n`high` / `xhigh` / `max`), but there is **no way to change the thinking level from\nthe chat composer**. Today the only place to influence it is Settings → AI, which\nsets a *per-workspace default* for new chats. To dial reasoning effort up for a\nsingle hard task or down for a quick one, you have to leave the conversation, open\nsettings, change the default, and start a new chat.\n\nComparable desktop apps put this control right in the composer, next to the model\npicker: Claude Code Desktop ships a dedicated **effort menu** (`⌘⇧E`) alongside its\nmodel menu, so you can raise or lower reasoning effort per message without leaving\nthe prompt.\n\nOpenWork already has the neighbor for it — the composer has a **model picker**\ndropdown — but the thinking-level equivalent is missing even though all the\nplumbing is already in place:\n\n- The composer (`FreeFormInput`) already receives `thinkingLevel` and\n  `onThinkingLevelChange` props — they are threaded from `ChatPage` /\n  `DraftChatPage` → `ChatDisplay` → `ChatInputZone` → `InputContainer` →\n  `FreeFormInput`, and both pages already persist the value (draft\n  `createOptions.thinkingLevel` / session options). But `FreeFormInput` never\n  renders a trigger for it — the prop is only read for an ACP command refresh.\n- The level metadata already exists: `THINKING_LEVELS` (id + `nameKey` +\n  `descriptionKey`) in `packages/shared/src/agent/thinking-levels.ts`, and the\n  `thinking.*` translation keys are already present in **all** locales.\n\nSo the value is fully wired end-to-end — the app just has no UI to set it from the\nplace you actually compose.\n\n## Proposed Solution\n\nAdd a **thinking-level picker** to the composer toolbar, immediately before the\nmodel picker, mirroring the existing model-picker dropdown:\n\n- A toolbar button showing the current level's name (e.g. \"Medium\") with a brain\n  icon and a chevron; tooltip \"Thinking\".\n- Opening it lists all six levels (`THINKING_LEVELS` order) with name +\n  description, a check on the active level, and calls the already-wired\n  `onThinkingLevelChange(level)` on select — so the choice persists exactly like a\n  model change does.\n- Hidden in `compactMode` (same rule the model picker uses).\n\nThis is a **frontend-only** change:\n\n- It renders a Radix dropdown (the same `StyledDropdownMenu*` primitives the model\n  picker uses) and calls the existing `onThinkingLevelChange` prop. No backend / no\n  qwen-code change — the value already flows to the runtime today.\n- It introduces **no new i18n keys**: level names/descriptions reuse the existing\n  `thinking.*` keys and the trigger tooltip reuses `settings.ai.thinking`.\n\n## Alternatives Considered\n\n- **Settings → AI thinking default** already exists, but it is a *workspace\n  default for new chats*, not a per-conversation control. You can't raise effort\n  for the current task without starting over.\n- **A keyboard-only shortcut** (à la `⌘⇧E`) could open a menu, but OpenWork's\n  established pattern for composer controls is a visible toolbar dropdown (the\n  model picker), so a visible picker is the more discoverable, consistent fit. A\n  shortcut can be layered on later.\n\n## Additional Context\n\nFeasibility: **frontend-only / doable.** Verified against `apps/electron` — the\n`thinkingLevel` / `onThinkingLevelChange` props already reach `FreeFormInput` and\nboth the draft and active chat pages already persist the value; only the UI trigger\nis missing.\n\n### Acceptance criteria (CDP e2e assertion)\n\nA new `e2e/assertions/thinking-level-picker.assert.ts` drives the real built app\nover CDP and asserts the full path:\n\n1. The composer renders a thinking-level trigger button.\n2. Clicking it opens a menu listing all **six** thinking levels.\n3. The trigger reflects a known current level (the default), and the active level\n   is marked as selected in the menu.\n4. Selecting a **different** level closes the menu **and** updates the trigger\n   label to the newly selected level — proving the picker actually changes the\n   session's thinking level, not merely displays a list.\n\nPart of the autonomous desktop-feature loop (`loop-bot`).","author":{"url":"https://github.com/DragonnZhang","@type":"Person","name":"DragonnZhang"},"datePublished":"2026-07-02T01:25:52.000Z","interactionStatistic":{"@type":"InteractionCounter","interactionType":"https://schema.org/CommentAction","userInteractionCount":0},"url":"https://github.com/44/openwork/issues/44"}

route-pattern/_view_fragments/issues/show/:user_id/:repository/:id/issue_layout(.:format)
route-controllervoltron_issues_fragments
route-actionissue_layout
fetch-noncev2:1dd14163-ba14-35c9-5bc1-7c4ad66387d4
current-catalog-service-hash81bb79d38c15960b92d99bca9288a9108c7a47b18f2423d0f6438c5b7bcd2114
request-idCCAA:1A8C4D:10435F3:162E563:6A522713
html-safe-noncee1757f44f45ea732a2511249affd43a33318c31d9dba1f2755e0d829abd3c9ea
visitor-payloadeyJyZWZlcnJlciI6IiIsInJlcXVlc3RfaWQiOiJDQ0FBOjFBOEM0RDoxMDQzNUYzOjE2MkU1NjM6NkE1MjI3MTMiLCJ2aXNpdG9yX2lkIjoiMjczOTA5NjAwNzMyNTM5NDcwNyIsInJlZ2lvbl9lZGdlIjoiaWFkIiwicmVnaW9uX3JlbmRlciI6ImlhZCJ9
visitor-hmac7959a343dd0053a75ab2fe0dc53ab398dd4b04f7aa1f1520a264f2bd4f58db32
hovercard-subject-tagissue:4790445605
github-keyboard-shortcutsrepository,issues,copilot
google-site-verificationApib7-x98H0j5cPqHWwSMm6dNU4GmODRoqxLiDzdx9I
octolytics-urlhttps://collector.github.com/github/collect
analytics-location///voltron/issues_fragments/issue_layout
fb:app_id1401488693436528
apple-itunes-appapp-id=1477376905, app-argument=https://github.com/_view_fragments/issues/show/modelstudioai/openwork/44/issue_layout
twitter:imagehttps://opengraph.githubassets.com/057be00342745e95cb7bcc596de6b5cddee0eafb9b7711ce475555da37099cc9/modelstudioai/openwork/issues/44
twitter:cardsummary_large_image
og:imagehttps://opengraph.githubassets.com/057be00342745e95cb7bcc596de6b5cddee0eafb9b7711ce475555da37099cc9/modelstudioai/openwork/issues/44
og:image:altProblem or Motivation OpenWork supports six per-session thinking levels (off / low / medium / high / xhigh / max), but there is no way to change the thinking level from the chat composer. Today the...
og:image:width1200
og:image:height600
og:site_nameGitHub
og:typeobject
og:author:usernameDragonnZhang
hostnamegithub.com
expected-hostnamegithub.com
Noneb9a586c06a05a7a86fc7e3f4dbd03e42f6869085879aa184aa6369456dbd50fb
turbo-cache-controlno-preview
go-importgithub.com/modelstudioai/openwork git https://github.com/modelstudioai/openwork.git
octolytics-dimension-user_id283556804
octolytics-dimension-user_loginmodelstudioai
octolytics-dimension-repository_id1256697754
octolytics-dimension-repository_nwomodelstudioai/openwork
octolytics-dimension-repository_publictrue
octolytics-dimension-repository_is_forkfalse
octolytics-dimension-repository_network_root_id1256697754
octolytics-dimension-repository_network_root_nwomodelstudioai/openwork
turbo-body-classeslogged-out env-production page-responsive
disable-turbofalse
browser-stats-urlhttps://api.github.com/_private/browser/stats
browser-errors-urlhttps://api.github.com/_private/browser/errors
release7aed05249554b889eb33d002851a973eebcc7e91
ui-targetfull
theme-color#1e2327
color-schemelight dark

Links:

Skip to contenthttps://github.com/modelstudioai/openwork/issues/44#start-of-content
https://github.com/
Sign in https://github.com/login?return_to=https%3A%2F%2Fgithub.com%2Fmodelstudioai%2Fopenwork%2Fissues%2F44
GitHub CopilotWrite better code with AIhttps://github.com/features/copilot
GitHub Copilot appDirect agents from issue to mergehttps://github.com/features/ai/github-app
MCP RegistryNewIntegrate external toolshttps://github.com/mcp
ActionsAutomate any workflowhttps://github.com/features/actions
CodespacesInstant dev environmentshttps://github.com/features/codespaces
IssuesPlan and track workhttps://github.com/features/issues
Code ReviewManage code changeshttps://github.com/features/code-review
GitHub Advanced SecurityFind and fix vulnerabilitieshttps://github.com/security/advanced-security
Code securitySecure your code as you buildhttps://github.com/security/advanced-security/code-security
Secret protectionStop leaks before they starthttps://github.com/security/advanced-security/secret-protection
Why GitHubhttps://github.com/why-github
Documentationhttps://docs.github.com
Bloghttps://github.blog
Changeloghttps://github.blog/changelog
Marketplacehttps://github.com/marketplace
View all featureshttps://github.com/features
Enterpriseshttps://github.com/enterprise
Small and medium teamshttps://github.com/team
Startupshttps://github.com/enterprise/startups
Nonprofitshttps://github.com/solutions/industry/nonprofits
App Modernizationhttps://github.com/solutions/use-case/app-modernization
DevSecOpshttps://github.com/solutions/use-case/devsecops
DevOpshttps://github.com/solutions/use-case/devops
CI/CDhttps://github.com/solutions/use-case/ci-cd
View all use caseshttps://github.com/solutions/use-case
Healthcarehttps://github.com/solutions/industry/healthcare
Financial serviceshttps://github.com/solutions/industry/financial-services
Manufacturinghttps://github.com/solutions/industry/manufacturing
Governmenthttps://github.com/solutions/industry/government
View all industrieshttps://github.com/solutions/industry
View all solutionshttps://github.com/solutions
AIhttps://github.com/resources/articles?topic=ai
Software Developmenthttps://github.com/resources/articles?topic=software-development
DevOpshttps://github.com/resources/articles?topic=devops
Securityhttps://github.com/resources/articles?topic=security
View all topicshttps://github.com/resources/articles
Customer storieshttps://github.com/customer-stories
Events & webinarshttps://github.com/resources/events
Ebooks & reportshttps://github.com/resources/whitepapers
Business insightshttps://github.com/solutions/executive-insights
GitHub Skillshttps://skills.github.com
Documentationhttps://docs.github.com
Customer supporthttps://support.github.com
Community forumhttps://github.com/orgs/community/discussions
Trust centerhttps://github.com/trust-center
Partnershttps://github.com/partners
View all resourceshttps://github.com/resources
GitHub SponsorsFund open source developershttps://github.com/open-source/sponsors
Security Labhttps://securitylab.github.com
Maintainer Communityhttps://maintainers.github.com
Acceleratorhttps://github.com/open-source/accelerator
GitHub Starshttps://stars.github.com
Archive Programhttps://archiveprogram.github.com
Topicshttps://github.com/topics
Trendinghttps://github.com/trending
Collectionshttps://github.com/collections
Enterprise platformAI-powered developer platformhttps://github.com/enterprise
GitHub Advanced SecurityEnterprise-grade security featureshttps://github.com/security/advanced-security
Copilot for BusinessEnterprise-grade AI featureshttps://github.com/features/copilot/copilot-business
Premium SupportEnterprise-grade 24/7 supporthttps://github.com/enterprise/premium-support
Pricinghttps://github.com/pricing
Search syntax tipshttps://docs.github.com/search-github/github-code-search/understanding-github-code-search-syntax
documentationhttps://docs.github.com/search-github/github-code-search/understanding-github-code-search-syntax
Sign in https://github.com/login?return_to=https%3A%2F%2Fgithub.com%2Fmodelstudioai%2Fopenwork%2Fissues%2F44
Sign up https://github.com/signup?ref_cta=Sign+up&ref_loc=header+logged+out&ref_page=%2F%3Cuser-name%3E%2F%3Crepo-name%3E%2Fvoltron%2Fissues_fragments%2Fissue_layout&source=header-repo&source_repo=modelstudioai%2Fopenwork
Reloadhttps://github.com/modelstudioai/openwork/issues/44
Reloadhttps://github.com/modelstudioai/openwork/issues/44
Reloadhttps://github.com/modelstudioai/openwork/issues/44
Please reload this pagehttps://github.com/modelstudioai/openwork/issues/44
modelstudioai https://github.com/modelstudioai
openworkhttps://github.com/modelstudioai/openwork
Notifications https://github.com/login?return_to=%2Fmodelstudioai%2Fopenwork
Fork 3 https://github.com/login?return_to=%2Fmodelstudioai%2Fopenwork
Star 11 https://github.com/login?return_to=%2Fmodelstudioai%2Fopenwork
Code https://github.com/modelstudioai/openwork
Issues 14 https://github.com/modelstudioai/openwork/issues
Pull requests 12 https://github.com/modelstudioai/openwork/pulls
Actions https://github.com/modelstudioai/openwork/actions
Projects https://github.com/modelstudioai/openwork/projects
Security and quality 0 https://github.com/modelstudioai/openwork/security
Insights https://github.com/modelstudioai/openwork/pulse
Code https://github.com/modelstudioai/openwork
Issues https://github.com/modelstudioai/openwork/issues
Pull requests https://github.com/modelstudioai/openwork/pulls
Actions https://github.com/modelstudioai/openwork/actions
Projects https://github.com/modelstudioai/openwork/projects
Security and quality https://github.com/modelstudioai/openwork/security
Insights https://github.com/modelstudioai/openwork/pulse
#45https://github.com/modelstudioai/openwork/pull/45
Thinking-level (reasoning effort) picker in the chat composerhttps://github.com/modelstudioai/openwork/issues/44#top
#45https://github.com/modelstudioai/openwork/pull/45
enhancementNew feature or requesthttps://github.com/modelstudioai/openwork/issues?q=state%3Aopen%20label%3A%22enhancement%22
loop-bothttps://github.com/modelstudioai/openwork/issues?q=state%3Aopen%20label%3A%22loop-bot%22
https://github.com/DragonnZhang
DragonnZhanghttps://github.com/DragonnZhang
on Jul 2, 2026https://github.com/modelstudioai/openwork/issues/44#issue-4790445605
enhancementNew feature or requesthttps://github.com/modelstudioai/openwork/issues?q=state%3Aopen%20label%3A%22enhancement%22
loop-bothttps://github.com/modelstudioai/openwork/issues?q=state%3Aopen%20label%3A%22loop-bot%22
https://github.com
Termshttps://docs.github.com/site-policy/github-terms/github-terms-of-service
Privacyhttps://docs.github.com/site-policy/privacy-policies/github-privacy-statement
Securityhttps://github.com/security
Statushttps://www.githubstatus.com/
Communityhttps://github.community/
Docshttps://docs.github.com/
Contacthttps://support.github.com?tags=dotcom-footer

Viewport: width=device-width


URLs of crawlers that visited me.