Feature request: expose native composer suggestion hooks/API for local plugins
Summary
Codex local plugins can currently package skills, apps, MCP servers, and install-surface metadata, but there does not appear to be a public plugin API for intercepting native composer typing events and rendering realtime suggestion UI inside the desktop app's input box.
This blocks a class of plugins that are specifically about in-composer guidance, autocomplete, prompt coaching, and adaptive keyword suggestion.
Concrete use case
I built a local Codex plugin called oh-oh-oh that helps users choose better Codex keywords from natural-language prompts.
The plugin already supports:
- local installation through marketplace + plugin cache
- skill-based invocation
- local personalization based on accepted keyword history
- realtime keyword recommendation logic in the plugin runtime
What I cannot do with the current public surface is the most important part of the UX:
- detect when the user pauses while typing in the native Codex desktop composer
- show a ranked suggestion deck directly under the input box
- let the user click a suggestion to prepend it to the prompt
- hide suggestions that were already accepted
Why this matters
This is especially useful for newer users who do not know professional Codex keywords or prompt prefixes yet.
Example:
- User types:
鎴戞兂鐪嬬湅浠g爜鏈夊摢浜涘啑浣欑殑
- Plugin should be able to suggest something like
code review or another appropriate built-in keyword/prefix
- If the user accepts it, Codex should insert that prefix at the beginning of the prompt
Without a native composer suggestion API, plugin authors can only approximate this via:
- explicit skill invocation
- external prototype UIs
- separate helper commands
Those workarounds are useful, but they do not solve the real in-context onboarding problem.
Current limitation observed
From the currently published Codex docs, local plugins appear to support:
- skills
- apps/connectors
- MCP servers
- install and discovery metadata such as
defaultPrompt, composerIcon, and logo
However, I could not find a public API for:
- composer input change events
- pause/debounce hooks for the native input field
- plugin-owned suggestion rows under the composer
- accepting a suggestion and programmatically rewriting the current draft
features.codex_hooks also appears to be about lifecycle hooks and is marked as under development, not as a composer extension API.
Requested capability
Please expose a supported plugin API for native composer augmentation in Codex desktop, for example:
- Read-only access to the current draft text in the composer
- Debounced
onInputChanged or onPause events
- A way for plugins to return ranked suggestion items with labels, descriptions, and insertion behavior
- A safe API to prepend, replace, or insert suggestion text into the current draft
- A way to hide or invalidate suggestions after acceptance
- Optional telemetry hooks so plugins can learn from accepted suggestions locally
Suggested design constraints
- Keep this API local-first so plugins do not need to exfiltrate draft text
- Make suggestion rendering clearly attributed to the plugin
- Provide user controls to disable a plugin's composer suggestions
- Limit mutation scope so plugins can only edit the active draft, not arbitrary thread history
- Consider rate limits / debounce guidance to avoid noisy or expensive suggestion loops
Impact
Opening this API would unlock an important category of Codex-native productivity plugins:
- prompt keyword coaches
- onboarding assistants
- repo-aware command recommenders
- code-review prompt helpers
- test/debug prompt suggestions
- adaptive workflow hints for new users
Right now, plugin authors can package the recommendation logic, but not the UX surface where that logic is most valuable.
Environment used while investigating
- Codex desktop on Windows
- local plugin installed and enabled through
~/.agents/plugins/marketplace.json
- plugin enabled in
~/.codex/config.toml
- plugin loaded from
~/.codex/plugins/cache/.../local
The plugin installation itself works correctly. The missing piece is the public native composer extension surface.
Feature request: expose native composer suggestion hooks/API for local plugins
Summary
Codex local plugins can currently package skills, apps, MCP servers, and install-surface metadata, but there does not appear to be a public plugin API for intercepting native composer typing events and rendering realtime suggestion UI inside the desktop app's input box.
This blocks a class of plugins that are specifically about in-composer guidance, autocomplete, prompt coaching, and adaptive keyword suggestion.
Concrete use case
I built a local Codex plugin called
oh-oh-ohthat helps users choose better Codex keywords from natural-language prompts.The plugin already supports:
What I cannot do with the current public surface is the most important part of the UX:
Why this matters
This is especially useful for newer users who do not know professional Codex keywords or prompt prefixes yet.
Example:
鎴戞兂鐪嬬湅浠g爜鏈夊摢浜涘啑浣欑殑code reviewor another appropriate built-in keyword/prefixWithout a native composer suggestion API, plugin authors can only approximate this via:
Those workarounds are useful, but they do not solve the real in-context onboarding problem.
Current limitation observed
From the currently published Codex docs, local plugins appear to support:
defaultPrompt,composerIcon, andlogoHowever, I could not find a public API for:
features.codex_hooksalso appears to be about lifecycle hooks and is marked as under development, not as a composer extension API.Requested capability
Please expose a supported plugin API for native composer augmentation in Codex desktop, for example:
onInputChangedoronPauseeventsSuggested design constraints
Impact
Opening this API would unlock an important category of Codex-native productivity plugins:
Right now, plugin authors can package the recommendation logic, but not the UX surface where that logic is most valuable.
Environment used while investigating
~/.agents/plugins/marketplace.json~/.codex/config.toml~/.codex/plugins/cache/.../localThe plugin installation itself works correctly. The missing piece is the public native composer extension surface.