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.
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.
curl -O https://raw.githubusercontent.com/microsoft/vscode/main/.github/skills/chat-customizations-editor/SKILL.mdgit clone --depth 1 https://github.com/microsoft/vscodeWrote 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.
[](https://agentmods.dev/skills/microsoft/vscode/chat-customizations-editor)<a href="https://agentmods.dev/skills/microsoft/vscode/chat-customizations-editor"><img src="https://agentmods.dev/badge/skills/microsoft/vscode/chat-customizations-editor/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.
<a href="https://agentmods.dev/skills/microsoft/vscode/chat-customizations-editor"><img src="https://agentmods.dev/badge/skills/microsoft/vscode/chat-customizations-editor.svg" alt="Reviewed on agentmods" width="80" height="20"></a>- Snyk pass
- NVIDIA SkillSpector warn
SkillSpector: 4 findings, up to medium
These are SkillSpector’s own severities. On a checked sample its high-severity flags on skills were ~96% false positives — a documented command, a public API, a “never do X” rule — so we show them as a caution to read, not a verdict. Why →
- medium MCP Rug Pull · line 5 npx commands without a version suffix (e.g. @1.0.0) create a rug-pull risk if the upstream server is compromised and publishes a malicious update.Fix: Pin the version: npx @scope/[email protected]
- medium MCP Rug Pull · line 161 npx commands without a version suffix (e.g. @1.0.0) create a rug-pull risk if the upstream server is compromised and publishes a malicious update.Fix: Pin the version: npx @scope/[email protected]
- medium MCP Rug Pull · line 169 npx commands without a version suffix (e.g. @1.0.0) create a rug-pull risk if the upstream server is compromised and publishes a malicious update.Fix: Pin the version: npx @scope/[email protected]
- medium MCP Rug Pull · line 176 npx commands without a version suffix (e.g. @1.0.0) create a rug-pull risk if the upstream server is compromised and publishes a malicious update.Fix: Pin the version: npx @scope/[email protected]
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.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00035 | $0.02743 |
| Opus 5.5 | $0.00014 | $0.01097 |
| Sonnet 5.5 | $0.00007 | $0.00549 |
| Haiku 4.5 | $0.00003 | $0.00274 |
Grade A, and why
chat-customizations-editor 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.
How it starts
The opening of the file, as written. The whole thing — 198 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Chat Customizations Editor
Split-view management pane for AI customization items across workspace, user, extension, and plugin storage. Supports harness-based filtering (Local, Copilot CLI, Claude).
Spec
src/vs/sessions/AI_CUSTOMIZATIONS.md — read for ownership and interface contracts. Update it only when those contracts change; behavior and regressions belong in focused tests.
Key Folders
| Folder | What |
|---|---|
src/vs/workbench/contrib/chat/common/ |
ICustomizationHarnessService, ISectionOverride, ICustomizationItemProvider — shared interfaces |
src/vs/workbench/contrib/chat/browser/aiCustomization/ |
Management editor, list widgets (prompts, MCP, plugins), harness service registration |
src/vs/sessions/contrib/chat/browser/ |
Sessions-window overrides (harness service, workspace service) |
src/vs/sessions/contrib/sessions/browser/ |
Sessions tree view counts and toolbar |
When changing harness descriptor interfaces or factory functions, verify both core and sessions registrations compile.
Key Interfaces
IHarnessDescriptor— drives harness behavior declaratively (hidden sections, button overrides, item providers, agent gating). See spec for the stable ownership contract.ISectionOverride— per-section button customization (command invocation, root file creation, type labels, file extensions).ICustomizationItemProvider/ICustomizationItem— internal interfaces (incustomizationHarnessService.ts) for extension-contributed providers that supply items directly. These mirror the proposed extension API types.
Principle: the UI widgets read everything from the descriptor — no harness-specific conditionals in widget code.
Extension API (chatSessionCustomizationProvider)
The proposed API in src/vscode-dts/vscode.proposed.chatSessionCustomizationProvider.d.ts lets extensions register customization providers. Changes to ICustomizationItem or ICustomizationItemProvider must be kept in sync across the full chain:
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.
- 1mo ago First seen · 198 lines · 35 tokens per session scan A f84a23cb3416
chat-customizations-editor is a skill published in the GitHub repository microsoft/vscode (194,219 stars, last pushed today), licensed MIT. It adds 35 tokens to every session and 2,743 once invoked, about $0.0001 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-08-30.
Other skills, from other repositories
cyrene-plan-mode
A planning guide for Cyrene’s Plan Mode, used before code or file changes are made. It helps turn a broad request into an agreed implementation plan based on the project’s actual code and constraints.
cyrene-plugin-dev
A guide for developing runtime plugins for Cyrene, including plugins that add tools, windows, events, live context, or connections to services. Cyrene is the host application that runs these plugins.
cyrene-exam-paper
A method for creating formal exams from a learning plan, then keeping the questions, answers, grading, and review separate. It maps learned topics to skills and suitable question types.
cyrene-obsidian-workspace
A set of rules for an agent working with an Obsidian vault, a folder of linked Markdown notes. It defines where materials, notes, exercises, templates, and progress files belong and how they may be edited.
cyrene-work-hygiene
A Work-mode rulebook for organizing projects that create, arrange, or deliver several files.
cyrene-diagram
A design guide for making static SVG learning cards: small diagrams or reference cards rendered as images. It explains when to use a card instead of Mermaid, a text-based diagram format, and sets layout, color, size, and safety rules.