Dev & Engineering ✓ Microsoft · Official tool-registrationbackward-compatibilitytypescriptlanguage-model-toolscode-reviewprompt-files

Tool Rename Compatibility Check

Protect existing prompts and tool configurations when built-in tools are renamed.

FollowSkills review · FSRS-2.0
Recommended
63/ 100 5-point scale 3.2 / 5
1 2 3 4 5 6
1Trust20 / 25 · 4.0/5

The skill only instructs compatibility review for renamed tools; it requires no commands, external services, or sensitive data handling, and clearly protects stable IDs, legacy names, and auto-approval behavior. It lacks explicit user confirmation, rollback guidance, data-flow disclosure, and dependency-security checks, so full marks are not justified.

2Reliability8 / 20 · 2.0/5

The procedure, field mappings, consumer checks, and regression checklist are internally consistent and cover TypeScript, tool sets, and extensions. However, there is no executable helper, abnormal-input handling, diagnostic failure feedback, or static reproducibility test, so the score is reduced under the static limit.

3Adaptability12 / 15 · 4.0/5

Trigger conditions are specific and cover renames, moves, and registration-code reviews, with separate TypeScript and package.json guidance. Inputs, output format, non-fit boundaries, and Chinese-language usage guidance are under-specified. The core function does not depend on overseas services, so no network-reachability deduction applies.

4Convention11 / 15 · 3.7/5

The document provides progressive steps, a mapping table, code examples, key files, real examples, reference PRs, and anti-patterns; repository evidence also supplies MIT licensing and Microsoft maintenance provenance. The skill itself lacks a version, changelog, explicit maintainer, and update path.

5Effectiveness7 / 15 · 2.3/5

The checklist is directly usable for manually reviewing tool-name compatibility and covers stable IDs, legacy resolution, and auto-approval restrictions. Static evidence does not verify representative completed changes, and the process still requires manual searches and checks, so the score reaches but does not exceed the static ceiling.

6Verifiability5 / 10 · 2.5/5

The skill cites concrete source locations, fields, and pull requests, while repository files provide auditable test and CI context. It does not include committed tests or third-party execution evidence for the skill's key path, so only limited static verifiability is credited.

Evidence confidence:Low Reviewed Jul 20, 2026 Reviewed revision 5b3e1be7be9e
The upstream repository has new commits since this review. The score still applies to the reviewed revision shown and may not cover the latest changes.
Before you use it
  • This is a static document review; the skill, tests, and an actual rename regression were not executed.
  • Users should verify that the old name is present in the correct legacy array and inspect every consumer; cited line numbers and examples may drift across revisions.
  • The skill defines no structured output or failure procedure when the registration point cannot be located, so reviewers must record evidence and conclusions themselves.
See the full review method →

What does this skill do, and when should you use it?

This is a development skill in Microsoft's Visual Studio Code Code-OSS repository for checking backward compatibility during built-in tool and tool-set renames. It requires previous reference names to remain in the appropriate legacy arrays while stable id or name fields remain unchanged. It also checks prompt resolution, tool enablement, auto-approval, and tool-set membership consumers. It is intended for reviewing TypeScript or package.json registration changes, not for general-purpose tool development.

Inspects changes to toolReferenceName, referenceName, id, and name in tool and tool-set registration; verifies that legacyToolReferenceFullNames or legacyFullNames contain every previous name; checks that moving a tool between sets preserves the old toolSet/toolName path; verifies that prompt files, tool configurations, enablement maps, and eligibleForAutoApproval settings still recognize legacy names; flags changes to the stable name of extension-contributed tools; and identifies first-party prompts, documentation, model descriptions, and tests that may need updated references.

  1. A VS Code engineer renaming a built-in toolReferenceName uses it to confirm the previous name is added to legacyToolReferenceFullNames.
  2. A developer changing a tool-set referenceName or createToolSet registration uses it to verify that legacyFullNames preserves the previous name.
  3. A developer moving a tool between tool sets uses it to confirm that the former toolSet/toolName path remains resolvable.
  4. A reviewer examining a pull request that changes IToolData, createToolSet, or package.json languageModelTools/languageModelToolSets uses it for regression checks.
  5. An extension-tool maintainer uses it to ensure only toolReferenceName changes while the stable package.json name remains unchanged.

What are this skill's strengths and limitations?

Pros
  • Covers concrete tool renames, tool-set renames, and moves between tool sets.
  • Checks more than prompt resolution, including enablement, auto-approval, and the RunInTerminalTool local check.
  • Clearly separates mutable reference names from stable id/name identifiers, making it useful for code review.
  • Provides real rename examples for runInTerminal, todo, and getTaskOutput, plus related reference pull requests.
Limitations
  • It is a review and guidance skill; the supplied material does not show an automatic fix script or automated test suite.
  • The reviewer must inspect the actual diff and array contents rather than merely checking whether a field exists.
  • Its scope is limited to VS Code tool and tool-set registration compatibility, not general refactoring or migration work.
  • The supplied material does not document a standalone installation process, platform matrix, or runtime performance.

How do you install this skill?

The supplied materials do not document a standalone installation command. The skill is located at .github/skills/tool-rename-deprecation/SKILL.md in https://github.com/microsoft/vscode and is one of 61 skills bundled in that repository. The repository is licensed under the MIT license.

How do you use this skill?

Invoke it when reviewing any tool-registration change, for example: "Review this tool registration change, confirm every previous toolReferenceName or referenceName is present in the appropriate legacy array, and check that stable name/id fields were not changed." Then follow its procedure to inspect the actual diff, registration fields, consumers, and tool-set membership lists. The supplied materials do not provide an executable script or dedicated command.

FAQ

Does it automatically modify the code?
The material describes checks, required fields, and reference updates, but provides no automatic editing script, so automatic code modification cannot be confirmed.
Which field must not change when renaming an extension-contributed tool?
The package.json name is mapped to IT​​oolData.id and is used for activation events. The skill requires keeping name unchanged, renaming only toolReferenceName, and adding the previous reference name to legacyToolReferenceFullNames.
What if the old name is already in the legacy array?
Read the actual array and confirm that it contains the value immediately preceding the current change, while also verifying that existing legacy entries were not removed.
What changes is it designed to review?
It is designed for pull requests and registration changes involving TypeScript IToolData, createToolSet, and package.json languageModelTools or languageModelToolSets.

More skills from this repository

All from microsoft/vscode

Dev & Engineering ✓ Microsoft · Official

VS Code Agent Customization Assistant

Create, repair, and troubleshoot VS Code Agent customization files and their loading behavior.

Dev & Engineering ✓ Microsoft · Official

VS Code Unit Test Runner

Run VS Code repository unit tests by file, test name, or compiled-output glob.

Dev & Engineering ✓ Microsoft · Official

Session Code Review

Review the current session's code changes and place actionable findings directly on the relevant lines.

Dev & Engineering ✓ Microsoft · Official

VS Code Hygiene Checks

Catch VS Code commit-blocking style and hygiene issues before the work is declared complete.

Dev & Engineering ✓ Microsoft · Official

Reusable Prompt Creator

Turn recurring tasks into reusable .prompt.md files.

Dev & Engineering ✓ Microsoft · Official

Anthropic SDK Upgrade Assistant

Upgrade Anthropic SDK packages methodically while checking API changes, compilation, and Claude-focused tests.

Dev & Engineering ✓ Microsoft · Official

Session Pull Request Assistant

Checks session changes and creates a GitHub pull request through GitHub MCP.

Dev & Engineering ✓ Microsoft · Official

Create Draft Pull Request

Validate the current session’s changes and open a draft PR through GitHub MCP.

Dev & Engineering ✓ Microsoft · Official

Existing Pull Request Updater

Sync the branch, run checks, and publish new changes to an existing pull request.

Dev & Engineering ✓ Microsoft · Official

VS Code Configuration Policy Maintainer

Standardize VS Code policy registration, export, and validation.

Dev & Engineering ✓ Microsoft · Official

VS Code Chat Customizations Editor Skill

Guides developers through safe changes and testing for VS Code’s chat customization management UI.

Dev & Engineering ✓ Microsoft · Official

Memory Leak Audit

Systematically find and fix listener, lifecycle, and disposable leaks in VS Code code.

Dev & Engineering ✓ Microsoft · Official

Run Command Builder

Configure and update commands shown in a VS Code Agent Session's Run button.

Dev & Engineering ✓ Microsoft · Official

VS Code Smoke Test Failure Diagnosis

Diagnose and validate intermittent VS Code Electron smoke-test failures in Azure DevOps.

Dev & Engineering ✓ Microsoft · Official

V8 Heap Snapshot Analyzer

Trace V8 heap retention paths to diagnose leaks and GC-surviving objects.

Dev & Engineering ✓ Microsoft · Official

Context7 Project Bootstrapper

Build a complete VS Code project scaffold using current library documentation.

Dev & Engineering ✓ Microsoft · Official

GitHub Copilot SDK Upgrade Assistant

Upgrade and validate @github/copilot in the VS Code Copilot Chat project.

Dev & Engineering ✓ Microsoft · Official

Feedback Action

Reads current-session feedback and applies the requested code changes.

Design & Frontend ✓ Microsoft · Official

VS Code Design Philosophy

Turn vague UI discomfort into concrete fixes using shared values, principles, and design moves.

Dev & Engineering ✓ Microsoft · Official

VS Code Agents Window Sessions

Safely implement and repair VS Code Agents window features.

Related skills