diff --git a/codex-rs/tui/src/bottom_pane/chat_composer.rs b/codex-rs/tui/src/bottom_pane/chat_composer.rs index 17877e4bfa..ac1ff37080 100644 --- a/codex-rs/tui/src/bottom_pane/chat_composer.rs +++ b/codex-rs/tui/src/bottom_pane/chat_composer.rs @@ -923,7 +923,7 @@ impl ChatComposer { if !self.skills_enabled() { return None; } - Self::current_prefixed_token(&self.textarea, '$', true) + Self::current_prefixed_token(&self.textarea, '%', true) } /// Replace the active `@token` (the one under the cursor) with `path`. @@ -998,7 +998,7 @@ impl ChatComposer { .unwrap_or(after_cursor.len()); let end_idx = safe_cursor + end_rel_idx; - let inserted = format!("${skill_name}"); + let inserted = format!("%{skill_name}"); let mut new_text = String::with_capacity(text.len() - (end_idx - start_idx) + inserted.len() + 1); diff --git a/codex-rs/tui/src/chatwidget.rs b/codex-rs/tui/src/chatwidget.rs index 37cd004a15..2642116fed 100644 --- a/codex-rs/tui/src/chatwidget.rs +++ b/codex-rs/tui/src/chatwidget.rs @@ -1604,7 +1604,7 @@ impl ChatWidget { self.insert_str("@"); } SlashCommand::Skills => { - self.insert_str("$"); + self.insert_str("%"); } SlashCommand::Status => { self.add_status_output(); @@ -3513,7 +3513,8 @@ fn find_skill_mentions(text: &str, skills: &[SkillMetadata]) -> Vec { - self.insert_str("$"); + self.insert_str("%"); } SlashCommand::Status => { self.add_status_output(); @@ -3518,7 +3518,8 @@ fn find_skill_mentions(text: &str, skills: &[SkillMetadata]) -> Vec`. +- Mention a skill by name in a message using `%`. - In the TUI, you can also use `/skills` to browse and insert skills. ## Validation and errors