Let explicit user tool/MCP choice override auto-triggered bundled skills

Open 💬 1 comment Opened Aug 3, 2026 by f-trycua
💡 Likely answer: A maintainer (github-actions[bot], contributor) responded on this thread — see the highlighted reply below.

What feature would you like to see?

Codex should treat an explicit user choice of tool, MCP server, plugin, or skill as the highest-priority routing signal when multiple capabilities can perform the same task.

Today, a bundled skill can auto-trigger from the task domain and then mandate its own backend even when the user explicitly named another one. This creates a strong routing bias toward bundled capabilities and makes third-party or user-provided computer-use integrations difficult to select reliably.

Concrete reproduction

In a session where both the bundled Computer Use capability and a third-party CUA Driver MCP were available:

  1. The user explicitly asked: “using CUA Driver MCP, open WhatsApp…”
  2. Because operating a local Mac app matched the bundled computer-use:computer-use skill description, Codex automatically selected that skill.
  3. The skill's mandatory workflow routed the action through node_repl and the bundled @oai/sky Computer Use client.
  4. This happened despite the user repeatedly specifying CUA Driver.
  5. The user had to interrupt the action and ask why their selected integration was being ignored.

No message was sent in this reproduction, but the same routing problem can affect any overlapping capability: browsers, computer-use drivers, GitHub workflows, document tools, or custom MCP servers.

Expected behavior

When a user explicitly names a capability, Codex should:

  • Prefer that exact tool, MCP server, plugin, or skill over auto-triggered alternatives.
  • Avoid loading a conflicting bundled skill whose mandatory instructions force a different backend.
  • Fall back only if the selected capability is unavailable, incompatible, or prohibited—and clearly tell the user why.
  • Preserve normal safety and confirmation requirements regardless of provider.
  • Expose which capability was selected and why.

Requested controls

Useful controls could include:

  • Per-turn explicit selection: Natural language such as “use CUA Driver only” or a structured mention should suppress conflicting auto-routing.
  • Per-session preferences: For example, “prefer cua-driver for computer use in this session.”
  • Persistent routing preferences: A user/project config mapping domains to preferred capabilities.
  • Skill modes: auto, manual, or off for bundled and installed skills.
  • Clear fallback semantics: If the preferred capability cannot be used, ask or explain instead of silently switching.
  • Routing provenance: Show the selected skill/tool/MCP and whether selection came from an explicit user choice, config, or automatic matching.

A possible precedence order:

  1. Explicit user-selected capability for the current turn
  2. Session/project/user preference
  3. Explicitly invoked skill
  4. Automatic skill/plugin routing
  5. Generic fallback tools

Why this matters

  • Users may choose an alternative for privacy, reliability, accessibility, local deployment, testing, or feature reasons.
  • Third-party MCPs cannot compete fairly if broad bundled skill triggers always take precedence.
  • Mandatory skill workflows can turn a routing mistake into repeated use of the wrong backend.
  • Explicit user intent is more reliable than domain-based inference when both are present.

Acceptance criteria

  • Add a regression test with two overlapping computer-use capabilities.
  • An explicit request to use capability B prevents automatic routing through capability A.
  • If B is unavailable, Codex reports that fact before using A.
  • The effective capability selection and its provenance are visible.
  • Safety policies remain provider-neutral and unchanged.

Related issues

  • #17085 — skip auto-triggered skills / per-skill auto, manual, off modes
  • #19883 — plugin router metadata, including suppression when a skill is explicitly selected
  • #30967 — per-thread skill/plugin capability selection
  • #35128 — implicitly selected plugin skills across product surfaces

This request is narrower: explicit user selection of a particular tool or MCP should override a conflicting auto-triggered bundled skill.

View original on GitHub ↗

1 Comment

github-actions[bot] contributor · 25 days ago

Potential duplicates detected. Please review them and close your issue if it is a duplicate.

  • #35797

Powered by Codex Action