Skip to content

Conversation

@ammar-agent
Copy link
Collaborator

@ammar-agent ammar-agent commented Jan 3, 2026

Summary

Enhanced the Models settings page with compaction model configuration and extended model information display.

Changes

Compaction Model Setting:

  • Added Compaction Model dropdown in Model Defaults section
  • Falls back to workspace model if not set
  • Uses existing modeAiDefaults.compact.modelString storage

Model Information:

  • Added contextWindow and description fields to KnownModelDefinition
  • Display context window size (e.g., "200K", "1M") next to each built-in model
  • Added info icon with tooltip showing model description
  • Populated data for all built-in models (Anthropic, OpenAI, Google, xAI)

Unified Model Defaults UX:

  • Removed star icons from model rows (default model now set via dropdown)
  • Single "Model Defaults" section with Default Model and Compaction Model dropdowns

Generated with mux • Model: anthropic:claude-opus-4-5 • Thinking: high

Copy link

@chatgpt-codex-connector chatgpt-codex-connector bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 05c1031a7c

ℹ️ About Codex in GitHub

Codex has been enabled to automatically review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

When you sign up for Codex through ChatGPT, Codex can also answer questions or update the PR, like "@codex address that feedback".

@ammar-agent ammar-agent force-pushed the model-settings-zzqp branch 12 times, most recently from 733d9a5 to 27f51cc Compare January 10, 2026 02:45
Add a Model Defaults section with searchable dropdowns for:
- Default Model: model used for new workspaces
- Compaction Model: model used for /compact (falls back to workspace model)

Show a subtle 'configure' link during compaction (when no custom model is set)
that opens Settings → Models.

Add story to capture the configure hint state.
…down

- Move model row tooltip trigger from entire row to dedicated Info icon
- Replace custom SearchableModelSelect with cmdk-based combobox for proper
  keyboard navigation (arrow keys, type-to-filter, scrolling)
- Restyle Model Defaults section to match table aesthetic with header row
  and horizontal label/dropdown layout
- Restyle Add Model form with consistent header styling and backgrounds
- Add overflow-visible to PopoverContent to prevent clipping
- Use flex layout with max-h on Command container
- Make Command.List flex-1 with overflow-y-auto for scrolling
cmdk's scrolling behavior was unreliable. Replace with a custom
implementation that:
- Uses native div with overflow-y-auto for reliable scrolling
- Implements arrow key navigation with highlighted index tracking
- Auto-scrolls highlighted items into view
- Supports type-to-filter with search input
- Tracks mouse hover for highlight updates
The overflow-hidden constraint was preventing child elements from
scrolling. Removed it along with max-h constraint from base styles
so individual popovers can control their own overflow behavior.
- Added modal prop to Popover for proper focus trapping in dialog context
- Added explicit max-h to PopoverContent as backup constraint
Add a version counter to useProvidersConfig that tracks fetch requests.
When an optimistic update occurs, the counter is incremented to invalidate
any in-flight fetches. This prevents race conditions where a slow initial
fetch response would overwrite an optimistic update with stale data.

Also adds a UI test for the custom model addition flow (though it has
known limitations with Radix Dialog portals in happy-dom).
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant