Skip to content

Commit cd5f49a

Browse files
authored
Make steer stable by default (openai#10690)
Promotes the Steer feature from Experimental to Stable and enables it by default. ## What is Steer mode? Steer mode changes how message submission works in the TUI: - **With Steer enabled (new default)**: - `Enter` submits messages immediately, even when a task is running - `Tab` queues messages when a task is running (allows building up a queue) - **With Steer disabled (old behavior)**: - `Enter` queues messages when a task is running - This preserves the previous "queue while a task is running" behavior ## How Steer vs Queue work The key difference is in the submission behavior: 1. **Steer mode** (`steer_enabled = true`): - Enter → `InputResult::Submitted` → sends immediately via `submit_user_message()` - Tab → `InputResult::Queued` → queues via `queue_user_message()` if a task is running - This gives users direct control: Enter for immediate submission, Tab for queuing 2. **Queue mode** (`steer_enabled = false`, previous default): - Enter → `InputResult::Queued` → always queues when a task is running - Tab → `InputResult::Queued` → queues when a task is running - This preserves the original behavior where Enter respects the running task queue ## Implementation details The behavior is controlled in `ChatComposer::handle_key_event_without_popup()`: - When `steer_enabled` is true, Enter calls `handle_submission(false)` (submit immediately) - When `steer_enabled` is false, Enter calls `handle_submission(true)` (queue) See `codex-rs/tui/src/bottom_pane/chat_composer.rs` for the implementation. ## Documentation For more details on the chat composer behavior, see: - [TUI Chat Composer documentation](docs/tui-chat-composer.md) - Feature flag definition: `codex-rs/core/src/features.rs`
1 parent 41b4962 commit cd5f49a

1 file changed

Lines changed: 2 additions & 6 deletions

File tree

codex-rs/core/src/features.rs

Lines changed: 2 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -556,12 +556,8 @@ pub const FEATURES: &[FeatureSpec] = &[
556556
FeatureSpec {
557557
id: Feature::Steer,
558558
key: "steer",
559-
stage: Stage::Experimental {
560-
name: "Steer conversation",
561-
menu_description: "Enter submits immediately; Tab queues messages when a task is running.",
562-
announcement: "NEW! Try Steer mode: Enter submits immediately, Tab queues. Enable in /experimental!",
563-
},
564-
default_enabled: false,
559+
stage: Stage::Stable,
560+
default_enabled: true,
565561
},
566562
FeatureSpec {
567563
id: Feature::CollaborationModes,

0 commit comments

Comments
 (0)