Official agent skill

Mtp Hot Reload

by microsoft in microsoft/testfx

Suggests using Microsoft Testing Platform (MTP) hot reload to iterate fixes on failing tests without rebuilding.

OfficialMITAuto-check passedDevOps & Cloud

Install Mtp Hot Reload

skills CLI
$ npx skills add microsoft/testfx --skill mtp-hot-reload -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install microsoft/testfx mtp-hot-reload --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/microsoft/testfx.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.agents/skills/mtp-hot-reload .claude/skills/mtp-hot-reload && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
mtp-hot-reload
GitHub stars
1k
Token cost
~1.5k tokens
SKILL.md length
654 words
Files
1
Skills in repo
50
Repo updated
First seen
Licence
MIT

At a glance

Suggests using Microsoft Testing Platform (MTP) hot reload to iterate fixes on failing tests without rebuilding.

  • Works in 6 steps: Verify the project uses Microsoft… → Add the hot reload NuGet package → Enable hot reload → …
  • User says hot reload tests
  • SKILL.md covers When to Use, When Not to Use, Inputs and Workflow, plus 2 more sections
  • Calls dotnet

What it does

Mtp Hot Reload is an agent skill from microsoft/testfx, published by the product's own GitHub organization. Suggests using Microsoft Testing Platform (MTP) hot reload to iterate fixes on failing tests without rebuilding. Use when user says "hot reload tests", "iterate on test fix", "run tests without rebuilding", "speed up test loop", "fix test faster", or needs to set up MTP hot reload to rapidly iterate on test failures. Covers setup (NuGet package, environment variable, launchSettings.json) and the iterative workflow for fixing tests. DO NOT USE FOR: writing test code, diagnosing test failures, running tests…

Its SKILL.md is about 1.5k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.

It sits in DevOps & Cloud, covering Failing and flaky tests, Secrets management and CI/CD. It works with .NET. The repository describes itself as: This repository holds the source code of Microsoft.Testing.Platform (MTP), a lightweight alternative to VSTest, as well as MSTest adapter and framework. The licence is MIT.

When your agent uses it

  • User says hot reload tests
  • Iterate on test fix
  • Run tests without rebuilding
  • Speed up test loop

Example prompts

  • “hot reload tests”
  • “iterate on test fix”
  • “run tests without rebuilding”
  • “/mtp-hot-reload”

Workflow steps

6 steps, taken from the step headings in SKILL.md.

  1. Verify the project uses Microsoft Testing Platform
  2. Add the hot reload NuGet package
  3. Enable hot reload
  4. Run the tests with hot reload
  5. Iterate on the fix
  6. Finalize

What it can do on your machine

Read from SKILL.md and the folder at commit 19d717a. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Shell commands in SKILL.md call:

    • dotnet

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Mtp Hot Reload loads about 1.5k tokens when it runs. Until then it costs about 180 tokens; SKILL.md has 654 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~180
When it runs · the whole SKILL.md, loaded when a task matches
~1.5k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from microsoft/testfx at commit 19d717a, republished under its MIT licence (© microsoft). 654 words, ~1,504 tokens.

Download SKILL.mdSave it as .claude/skills/mtp-hot-reload/SKILL.md (or your agent's skills folder).
name
mtp-hot-reload
description
Suggests using Microsoft Testing Platform (MTP) hot reload to iterate fixes on failing tests without rebuilding. Use when user says "hot reload tests", "iterate on test fix", "run tests without rebuilding", "speed up test loop", "fix test faster", or needs to set up MTP hot reload to rapidly iterate on test failures. Covers setup (NuGet package, environment variable, launchSettings.json) and the iterative workflow for fixing tests. DO NOT USE FOR: writing test code, diagnosing test failures, running tests normally with dotnet test (use run-tests), applying test filters, producing TRX reports, CI/CD pipeline configuration, or Visual Studio Test Explorer hot reload (which is a different feature).
license
MIT

MTP Hot Reload for Iterative Test Fixing

Set up and use Microsoft Testing Platform hot reload to rapidly iterate fixes on failing tests without rebuilding between each change.

When to Use

  • User has one or more failing tests and wants to iterate fixes quickly
  • User wants to avoid rebuild overhead while fixing test code or production code
  • User asks about hot reload for tests or speeding up the test-fix loop
  • User needs to set up MTP hot reload in their project

When Not to Use

  • User needs to write new tests from scratch (use general coding assistance)
  • User needs to diagnose why a test is failing (use diagnostic skills)
  • User wants Visual Studio Test Explorer hot reload (different feature, built into VS)
  • Project uses VSTest -- hot reload requires Microsoft Testing Platform (MTP)
  • User needs CI/CD pipeline configuration

Inputs

InputRequiredDescription
Test project pathNoPath to the test project (.csproj). Defaults to current directory.
Failing test name or filterNoSpecific test(s) to iterate on

Workflow

Step 1: Verify the project uses Microsoft Testing Platform

Hot reload requires MTP. It does not work with VSTest.

Follow the detection procedure in the platform-detection skill to determine the test platform.

If the project uses VSTest, inform the user that MTP hot reload is not available and suggest migrating to MTP first (see migrate-vstest-to-mtp), or using Visual Studio's built-in Test Explorer hot reload feature instead.

Step 2: Add the hot reload NuGet package

Install the Microsoft.Testing.Extensions.HotReload package:

shell
dotnet add <project-path> package Microsoft.Testing.Extensions.HotReload

Note: When using Microsoft.Testing.Platform.MSBuild (included transitively by MSTest, NUnit, and xUnit runners), the extension is auto-registered when you install its NuGet package -- no code changes needed.

Step 3: Enable hot reload

Hot reload is activated by setting the TESTINGPLATFORM_HOTRELOAD_ENABLED environment variable to 1.

Option A -- Set it in the shell before running tests:

shell
# PowerShell
$env:TESTINGPLATFORM_HOTRELOAD_ENABLED = "1"

# bash/zsh
export TESTINGPLATFORM_HOTRELOAD_ENABLED=1

Option B -- Add it to launchSettings.json (recommended for repeatable use):

Create or update Properties/launchSettings.json in the test project:

json
{
  "profiles": {
    "<ProjectName>": {
      "commandName": "Project",
      "environmentVariables": {
        "TESTINGPLATFORM_HOTRELOAD_ENABLED": "1"
      }
    }
  }
}
Step 4: Run the tests with hot reload

Run the test project directly (not through dotnet test) to use hot reload in console mode:

shell
dotnet run --project <project-path>

To filter to specific failing tests, pass the filter after --. The syntax depends on the test framework -- see the filter-syntax skill for full details. Quick examples:

FrameworkFilter syntax
MSTestdotnet run --project <path> -- --filter "FullyQualifiedName~TestMethodName"
NUnitdotnet run --project <path> -- --filter "FullyQualifiedName~TestMethodName"
xUnit v3dotnet run --project <path> -- --filter-method "*TestMethodName"
TUnitdotnet run --project <path> -- --treenode-filter "/*/*/ClassName/TestMethodName"

The test host will start, run the tests, and remain running waiting for code changes.

Show full SKILL.md (241 more words)Show less
Step 5: Iterate on the fix
  1. Edit the source code (test code or production code) in your editor
  2. The test host detects the changes and re-runs the affected tests automatically
  3. Review the updated results in the console
  4. Repeat until all targeted tests pass

Important: Hot reload currently works in console mode only. There is no support for hot reload in Test Explorer for Visual Studio or Visual Studio Code.

Step 6: Finalize

Once all tests pass:

  1. Stop the test host (Ctrl+C)
  2. Run a full dotnet test to confirm all tests pass with a clean build
  3. Optionally remove TESTINGPLATFORM_HOTRELOAD_ENABLED from the environment or keep launchSettings.json for future use

Validation

  • Project uses Microsoft Testing Platform (not VSTest)
  • Microsoft.Testing.Extensions.HotReload package is installed
  • TESTINGPLATFORM_HOTRELOAD_ENABLED environment variable is set to 1
  • Tests run and the host remains active waiting for changes
  • Code changes are picked up without manual restart

Common Pitfalls

PitfallSolution
Using dotnet test instead of dotnet runHot reload requires dotnet run --project <path> to run the test host directly in console mode
Project uses VSTest, not MTPHot reload requires MTP. Migrate to MTP first or use VS Test Explorer hot reload
Forgetting to set the environment variableSet TESTINGPLATFORM_HOTRELOAD_ENABLED=1 before running
Expecting Test Explorer integrationConsole mode only -- no VS/VS Code Test Explorer support
Making unsupported code changes (rude edits)Some changes (adding new types, changing method signatures) require a restart. Stop and re-run

© microsoft, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

Just SKILL.md in .agents/skills/mtp-hot-reload of microsoft/testfx.

Open the folder on GitHubat commit 19d717a

Compare with similar skills

Mtp Hot Reload next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Mtp Hot Reload compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Mtp Hot Reload this skillmicrosoft/testfx1k—~1.5kAutomated safety check: PassMIT
MAUI CI Investigatordotnet/maui23k—~2kAutomated safety check: PassMIT
Azure Pipelines Log Downloaderansible/ansible71k—~825Automated safety check: PassGPL-3.0
CI Failure Triage and RepairChachamaru127/claude-code-harness3.2k1 repos~1.1kAutomated safety check: NotesMIT
CI Watchdoglatitude-dev/latitude-llm4.7k—~1.6kAutomated safety check: PassMIT
Megatron-LM CI Failure TriageNVIDIA/Megatron-LM18k—~1.6kAutomated safety check: PassApache-2.0

Similar skills

  • Official

    Adds dotnet/maui-specific context for investigating failing PR checks and broken nightly builds: pipelines, Helix logs, binlogs and merge-readiness verdicts.

    23k GitHub stars~2k tokensUpdated today
    Testing & QAAuto-check passed
  • Downloads Azure Pipelines CI logs for an Ansible pull request or build so the agent can analyze test failures, after asking you first.

    71k GitHub stars~825 tokensUpdated today
    DevOps & CloudAuto-check passed
  • CI Failure Triage and Repair

    Chachamaru127/claude-code-harness

    Diagnoses failing CI pipelines and tests, deciding first whether the test or the implementation is at fault, and hands hard cases to a dedicated fixer subagent.

    3.2k GitHub starsUsed in 1 repo~1.1k tokens
    DevOps & CloudAuto-check: notes
  • CI Watchdog

    latitude-dev/latitude-llm

    Continuously monitor GitHub PR CI checks and automatically fix failures until all checks pass.

    4.7k GitHub stars~1.6k tokensUpdated today
    DevOps & CloudAuto-check passed
  • Official

    Investigates a failing GitHub Actions run or job for Megatron-LM, finds the root cause plus the PR and test author involved, and files a structured bug issue.

    18k GitHub stars~1.6k tokensUpdated today
    DevOps & CloudAuto-check passed
  • CI Triage

    fair-acc/gnuradio4

    Fetch and classify a failed GitHub Actions job for this repo — distinguish out-of-memory kills, six-hour timeouts, configure errors and genuine test failures, and identify what was in flight.

    115 GitHub stars~548 tokensUpdated today
    DevOps & CloudAuto-check passed

More from microsoft/testfx

All 50 skills in this repo
  • Official

    Guide for organizing MSBuild infrastructure with Directory.Build.props, Directory.Build.targets, Directory.Packages.props, and Directory.Build.rsp.

    1k GitHub starsUsed in 1 repo~2.5k tokens
    Auto-check passed
  • Coverage Analysis

    microsoft/testfx

    Official

    Project-wide code coverage and CRAP (Change Risk Anti-Patterns) score analysis for .NET projects.

    1k GitHub stars~7.3k tokensUpdated today
    Auto-check passed
  • Incremental Build

    microsoft/testfx

    Official

    Guide for optimizing MSBuild incremental builds. An agent skill from microsoft/testfx.

    1k GitHub starsUsed in 3 repos~3.7k tokens
    Auto-check passed
  • Official

    Validate TestFx shipping paths and capable CI execution using packed consumers, package/cache provenance, exact exits and artifacts, and selected-versus-executed test evidence.

    1k GitHub stars~4.7k tokensUpdated today
    Auto-check passed
  • Msbuild Modernization

    microsoft/testfx

    Official

    Guide for modernizing and migrating MSBuild project files to SDK-style format.

    1k GitHub starsUsed in 3 repos~4.3k tokens
    Auto-check passed
  • Official

    Guide for interpreting ResolveProjectReferences time in MSBuild performance summaries.

    1k GitHub starsUsed in 3 repos~743 tokens
    Auto-check passed

Works with

Questions about Mtp Hot Reload

What does Mtp Hot Reload do?

Suggests using Microsoft Testing Platform (MTP) hot reload to iterate fixes on failing tests without rebuilding. Mtp Hot Reload is an agent skill from microsoft/testfx, published by the product's own GitHub organization. Suggests using Microsoft Testing Platform (MTP) hot reload to iterate fixes on failing tests without rebuilding.

When should I use Mtp Hot Reload?

Mtp Hot Reload fits situations like: user says hot reload tests; iterate on test fix; run tests without rebuilding; speed up test loop.

How do I install Mtp Hot Reload in Claude Code?

Run `npx skills add microsoft/testfx --skill mtp-hot-reload -a claude-code`. Or copy the skill folder (.agents/skills/mtp-hot-reload in microsoft/testfx) into .claude/skills/mtp-hot-reload in your project. Claude Code loads it when a task matches its description.

How do I install Mtp Hot Reload in Codex?

Run `npx skills add microsoft/testfx --skill mtp-hot-reload -a codex`. Or copy the skill folder (.agents/skills/mtp-hot-reload in microsoft/testfx) into .agents/skills/mtp-hot-reload in your project. Codex loads it when a task matches its description.

Can I use Mtp Hot Reload in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add microsoft/testfx --skill mtp-hot-reload -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/mtp-hot-reload, .gemini/skills/mtp-hot-reload, .github/skills/mtp-hot-reload and .opencode/skills/mtp-hot-reload in your project.

What does Mtp Hot Reload need to run?

Going by SKILL.md and its folder, Mtp Hot Reload needs the command-line tools its instructions call (dotnet).

Does Mtp Hot Reload access the network?

SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.

Is Mtp Hot Reload safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does Mtp Hot Reload use?

Mtp Hot Reload is published under the MIT licence (declared in SKILL.md). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Mtp Hot Reload use?

About 1.5k tokens (SKILL.md is roughly 6k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Mtp Hot Reload?

Skills that share tags, products or a category with Mtp Hot Reload: MAUI CI Investigator (dotnet/maui, 23k stars), Azure Pipelines Log Downloader (ansible/ansible, 71k stars), CI Failure Triage and Repair (Chachamaru127/claude-code-harness, 3.2k stars) and CI Watchdog (latitude-dev/latitude-llm, 4.7k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Mtp Hot Reload?

microsoft (a GitHub organization, an official publisher) maintains it in microsoft/testfx, which has 1,047 GitHub stars. The repository holds 50 skills in this directory. The repository was last updated on October 9, 2026.

Source: microsoft/testfx on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.