Overview
.NET Remote Testing runs repository tests inside Docker through one deterministic runner. It resolves the environment, stages an isolated source copy, restores and builds inside the container, collects structured test results, and cleans up transient resources.
An existing testenvironments.json remains authoritative. Without one, the runner derives compatible environments from the repository's target frameworks and current .NET release metadata, using a Microsoft SDK image for one .NET major or a Codebelt multi-SDK runner for multi-targeted repositories.
Concepts
- Configuration before convention: explicit version-1
testenvironments.jsonDocker entries win over derived environments. - Evidence-based selection: target frameworks choose a matching SDK or multi-SDK image when the repository leaves the environment unspecified.
- Isolated, reproducible execution: source staging keeps container
binandobjoutput out of the worktree, while image digests record the environment that ran. - Failure classification: restore, compilation, test-host, test, result-processing, and cleanup failures remain distinct.
Installation
npx skills add https://github.com/codebeltnet/agentic --skill dotnet-remote-testing
Usage guidance
Invoke this skill when the tests should run remotely, in Docker, or against a specific .NET SDK environment. A normal invocation runs immediately; the runner asks for a selection only when repository and configuration evidence leave more than one valid candidate.
Docker is the only supported transport. The skill does not generate Dockerfiles, modify test code, or fall back to host execution. Zero-configuration discovery needs network access on its first run, while cached release metadata supports later offline use.