feat(settings): let agents use provider-native visual tools instead of T3 Preview - #6
Open
hwanseoc wants to merge 1 commit into
Open
feat(settings): let agents use provider-native visual tools instead of T3 Preview#6hwanseoc wants to merge 1 commit into
hwanseoc wants to merge 1 commit into
Conversation
hwanseoc
force-pushed
the
feat/mcp-server-toggle
branch
from
August 8, 2026 15:48
6a67297 to
d6922cc
Compare
hwanseoc
force-pushed
the
feat/mcp-server-toggle
branch
from
August 8, 2026 16:37
d6922cc to
aa4f26e
Compare
Adds an Agent visual tools setting under Settings > General with two modes. T3 Preview stays the default and matches current behavior. Provider native stops T3 from mounting the t3-code MCP server for newly started sessions and stops Codex from receiving the collaborative-browser instructions. The gate is a single read in ProviderService.prepareMcpSession before credential issuance, so every adapter is covered without per-adapter changes. Codex instructions key off whether the t3-code server is actually mounted, so they cannot advertise tools the session does not have. Co-authored-by: joshfcc <joshfcc@users.noreply.github.com>
hwanseoc
force-pushed
the
feat/mcp-server-toggle
branch
from
August 8, 2026 20:31
aa4f26e to
e47f564
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
By default, with no option to opt out, T3 Code injects its own MCP server into every provider session — Codex, Claude, Cursor, Grok, and OpenCode all receive the
preview_*browser tools, and Codex additionally receives developer instructions telling it to route through them. This is great when you're doing web development, where letting the agent drive a browser to check its own work is most of the value. When you're doing backend, systems, or mobile work it just distracts: the agent spends context on a toolkit it can't use and probes it anyway. It's worse if you already run Playwright or another browser MCP, since two overlapping toolsets end up operating on different browser contexts.For those who wish to have the agent exhibit the same behavior in T3 Code as in the provider's own CLI, this PR adds an Agent visual tools setting under Settings → General. T3 Preview is the default and is exactly today's behavior. Provider native stops the MCP mount and the Codex browser instructions for newly started sessions. Nothing changes unless you turn it off.
The gate is a single settings read in
ProviderService.prepareMcpSessionbefore credentials are issued, so every adapter is covered without per-adapter changes, and switching modes revokes any credential left over on that thread. Codex instructions key off whether thet3-codeserver is actually mounted rather than off the setting, so they can never advertise tools the session doesn't have.Verification: 205 tests across the seven touched files, plus clean
tsgotypechecks,vp lint, andvp fmt --check.Builds on the approach from an existing upstream PR proposing the same control with the default inverted; credited via commit co-authorship.