vscode: Instructions file for GitHub Copilot

extensions/copilot/.github/instructions/model-prompts.instructions.md

vscode model-prompts.instructions.md is an instructions file for GitHub Copilot from microsoft/vscode. It costs 2,022 tokens per session, scanned A, original, MIT.

Instructions for creating, registering, and testing prompts tailored to different AI models through a prompt registry.

In plain words
What is it for?
Use them when adding model resolvers, provider fallbacks, family-prefix matches, and default prompt customisations.
Why use it?
They help model-specific prompt rules work in the right order without broad defaults overriding more specific matches.

Instructions file for GitHub Copilot ✓ vendor

Written for GitHub Copilot: a Copilot instructions file. Also seen: mentions Codex.

This is microsoft/vscode's own configuration. It tells GitHub Copilot how to work on vscode itself, so it is not a mod to install elsewhere. Copy it as a starting point and replace the rules that are about this project. Everything vscode configures →

About the project

Visual Studio Code is a code editor that supports editing, navigating, understanding, debugging, and extending software projects. Developers use it for the edit-build-debug cycle, and the catalogue add-ons provide skills, instructions, and agents for working within the editor.

microsoft/vscode · 194,219 stars · on GitHub · code.visualstudio.com

Reuse

Borrowing it

Nothing to install: this file belongs to microsoft/vscode. Take a copy, put it at the same path in your own repository, and replace the rules that are about this project with yours.

Copy the file
curl -O https://raw.githubusercontent.com/microsoft/vscode/main/extensions/copilot/.github/instructions/model-prompts.instructions.md
Clone the repo
git clone --depth 1 https://github.com/microsoft/vscode

Made for: GitHub Copilot.

Wrote this? Show the measurements

A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.

agentmods badge for vscode model-prompts.instructions.md

README.md
[![agentmods](https://agentmods.dev/badge/instructions/microsoft/vscode/model-prompts/github.svg)](https://agentmods.dev/instructions/microsoft/vscode/model-prompts)
Your own site
<a href="https://agentmods.dev/instructions/microsoft/vscode/model-prompts"><img src="https://agentmods.dev/badge/instructions/microsoft/vscode/model-prompts/github.svg" alt="Measured on agentmods" height="20"></a>

Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.

agentmods 80×15 button for vscode model-prompts.instructions.md

Your own site · 80×15
<a href="https://agentmods.dev/instructions/microsoft/vscode/model-prompts"><img src="https://agentmods.dev/badge/instructions/microsoft/vscode/model-prompts.svg" alt="Reviewed on agentmods" width="80" height="20"></a>
Per session 2,022 This file is loaded in full into every session.
When invoked 2,022 The same file — it is already loaded in full.
Security scan A 0 findings. A grade says what 26 rules found in the file — not that it is safe.
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5.1 $0.02022 $0.02022
Opus 5.5 $0.00809 $0.00809
Sonnet 5.5 $0.00404 $0.00404
Haiku 4.5 $0.00202 $0.00202

Measured 1mo ago against content hash b16ca940e882, method: parsed. Prices are Anthropic first-party input rates as of 2026-10-07, from the pricing page.

Security

Grade A, and why

vscode model-prompts.instructions.md scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 1mo ago.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

extensions/copilot/.github/instructions/model-prompts.instructions.md · 206 lines

How it starts

The opening of the file, as written. The whole thing — 206 lines — stays where its author put it; the contents beside it link to each section on GitHub.

Guidelines for creating, registering, and testing model-specific prompts via the PromptRegistry system.

Prompt Registry

The PromptRegistry in promptRegistry.ts maps AI models to their optimal prompt structures. Each model provider has a resolver class implementing IAgentPrompt that returns prompt customizations for that provider's models.

Resolution Order

When PromptRegistry.resolveAllCustomizations() is called:

  1. Phase 1 — matchesModel(): Iterates registered resolvers in order, calling matchesModel(). First true wins.
  2. Phase 2 — familyPrefixes: If no matchesModel matched, checks endpoint.family.startsWith(prefix). First match wins.
  3. Phase 3 — provider fallback: If neither phase matched, checks predicates registered through registerFallbackPrompt(resolver, matchesModel). First match wins.
  4. Defaults: If no resolver matches, defaults are used for all customizations.

Registration order matters within each phase. Register broad provider defaults through registerFallbackPrompt, not matchesModel or familyPrefixes, so they never shadow a model-specific resolver or a family-prefix registration.

OpenAI Default

Unrecognized GPT families and endpoints identified as OpenAI use the latest approved GPT prompt bundle. The single promotion point is the LatestOpenAIPromptResolver import in openai/latestOpenAIPrompt.ts, currently GPT-6 Astra. It reuses the entire resolver, including reminders, identity, safety, tool-reference hints, and user-query tag defaults, without copying prompt text.

  • Do not add a prompt file just because a new OpenAI model ships. Add a dedicated resolver only when the model needs different instructions.
  • Existing specialized GPT/Codex resolvers and the explicitly retained legacy families in defaultOpenAIPrompt.tsx take precedence. Version matchers must distinguish gpt-5.1 and its hyphenated variants from gpt-5.10.
  • OpenAI provider metadata can identify opaque preview names; an OpenAI-compatible API alone does not establish OpenAI model identity. Explicit family routing takes precedence over the provider fallback.
  • Prompt inheritance must not alias the endpoint family or enable GPT-6-specific API/tool capabilities. Rendering still respects the actual endpoint's capabilities and available tools.
  • Hidden model I is explicitly matched by the GPT-6 resolver and included alongside GPT-6 capability and instruction gates, independently of the provider fallback. Its model ID and family remain unchanged.
  • To promote a new default, update the resolver import in latestOpenAIPrompt.ts and the expected default in test/openAIPrompts.spec.ts. Run its routing/rendering tests and the existing agent prompt snapshots. Keep older specialized resolvers unchanged.

Read the full file on GitHub · 206 lines

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. 1mo ago Changed · +1 lines · +35 tokens per session b16ca940e882
  2. 1mo ago First seen · 205 lines · 1,987 tokens per session scan A 5fad036783cc

Subscribe to this mod's changes

vscode model-prompts.instructions.md is an instructions file published in the GitHub repository microsoft/vscode (194,219 stars, last pushed today), licensed MIT. It adds 2,022 tokens to every session, about $0.0081 per session on Opus 5.5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-09-03.