feat(vscode): reference a model inline in the prompt with @ - #14006
Merged
Merged
Conversation
Add a Model entry to the @ mention menu that opens the shared model selector and inserts an @provider/model reference. The token is inline text, never a file attachment, so an orchestrator can pass an exact model to Agent Manager or the subagent tool.
Contributor
Code Review SummaryStatus: No Issues Found | Recommendation: Merge Files Reviewed (2 files)
Previous Review Summary (commit e9f18b7)Current summary above is authoritative. Previous snapshots are kept for context only. Previous review (commit e9f18b7)Status: 1 Issues Found | Recommendation: Address before merge Overview
Issue Details (click to expand)WARNING
Files Reviewed (8 files)
Reviewed by grok-4.6 · Input: 118.4K · Output: 11.1K · Cached: 395.6K Review guidance: REVIEW.md from base branch |
Classify a restored @-mention against the live model catalog when syncing and when parsing attachments, not only at seed time. A draft restored before the catalog loads can no longer turn a model reference into a bogus file attachment.
marius-kilocode
enabled auto-merge
September 10, 2026 11:59
WebReflection
approved these changes
Sep 10, 2026
7 tasks
This was referenced Sep 14, 2026
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.
What Problem This Solves
An orchestrator cannot tell an Agent Manager session or the subagent tool which model to use from the prompt. It has to describe the model in prose, and the receiving agent has to guess the exact
provider/modelkey. There is no way to pick a model inline while composing a prompt.Why This Change Was Made
The
@mention menu already powers files, terminal output, git changes, past chats, and worktrees. This adds a Model entry to that menu. Selecting it opens the existing shared model selector and inserts an@providerID/modelIDtoken into the prompt text.The token is inline text, not a file attachment. It is tracked separately from file paths, so it is never sent as a file or rendered as a clickable path link. This keeps the exact model key visible to the model reading the prompt, for example to pass as the
modelparameter of the subagent or Agent Manager tool.The reuse is deliberately non-invasive:
ModelSelectorBasegains an optionalcollapsedprop. The inline@picker forces the compact list, because there is no current model to preview and picking is a one-click insert. Normal chat and settings selectors keep the persisted expand/collapse preference.openModelPickerevent, keyed to amention-modeltrigger, so the chat selector and/modelsare unaffected.collapsedis not passed.User Impact
Typing
@, then choosing Model, opens the model picker. Picking a model inserts@provider/modelinto the prompt. It does not change the active session model. The token behaves as one atomic unit for cursor movement and deletion.Evidence
The
@menu now lists Model first:Picking it opens the shared model picker in its compact form:
The inserted reference is inline text; the session model stays unchanged:
Verified in an isolated VS Code instance (sidebar and Agent Manager): the menu entry appears and filters, the picker opens and searches, keyboard navigation and Enter insert, Escape closes and refocuses the prompt, the session model is unchanged, and no console errors appear.
bun run test:unitpasses (5505 pass, 2 skip), along with extension lint, typecheck, knip, andcheck-kilocode-change.