mirror of
https://github.com/openai/codex.git
synced 2026-04-26 15:45:02 +00:00
feat: structured plugin parsing (#13711)
#### What Add structured `@plugin` parsing and TUI support for plugin mentions. - Core: switch from plain-text `@display_name` parsing to structured `plugin://...` mentions via `UserInput::Mention` and `[$...](plugin://...)` links in text, same pattern as apps/skills. - TUI: add plugin mention popup, autocomplete, and chips when typing `$`. Load plugin capability summaries and feed them into the composer; plugin mentions appear alongside skills and apps. - Generalize mention parsing to a sigil parameter, still defaults to `$` <img width="797" height="119" alt="image" src="https://github.com/user-attachments/assets/f0fe2658-d908-4927-9139-73f850805ceb" /> Builds on #13510. Currently clients have to build their own `id` via `plugin@marketplace` and filter plugins to show by `enabled`, but we will add `id` and `available` as fields returned from `plugin/list` soon. ####Tests Added tests, verified locally.
This commit is contained in:
@@ -32,7 +32,10 @@ pub enum UserInput {
|
||||
name: String,
|
||||
path: std::path::PathBuf,
|
||||
},
|
||||
/// Explicit mention selected by the user (name + app://connector id).
|
||||
/// Explicit structured mention selected by the user.
|
||||
///
|
||||
/// `path` identifies the exact mention target, for example
|
||||
/// `app://<connector-id>` or `plugin://<plugin-name>@<marketplace-name>`.
|
||||
Mention { name: String, path: String },
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user