testability-obstacle
85 / 100 · Low risk
Fine to try.
MUST USE for C#/.NET deterministic tests that require the smallest production seam for DateTime/Task.Delay/File/Environment/Guid/Random, static API preservation, nested/parallel overrides, or no real I/O. USE ONLY when the target workspace contains C# source plus a .csproj or .sln. DO NOT USE for audits, bulk migration, code that already has an injectable seam, or an explicit migration to a user-named existing abstraction (migrate-static-to-wrapper). Use instead of general test generation when …
What this skill can do
Downloads and installs other software
Install
Paste this into your terminal. It downloads exactly the version we scanned, not whatever is newest.
if [ -e ~/.agents/skills/'testability-obstacle' ] || [ -L ~/.agents/skills/'testability-obstacle' ]; then echo 'A skill folder named testability-obstacle already exists — not replacing it' >&2; false; else d=$(mktemp -d) && git clone --quiet --filter=blob:none --no-checkout 'https://github.com/dotnet/skills' "$d" && git -C "$d" checkout --quiet '96c3d68dad2855e3ab5178aa1a262789d86a1466' -- 'plugins/dotnet-test/skills/testability-obstacle' && mkdir -p ~/.agents/skills && cp -R "$d"/'plugins/dotnet-test/skills/testability-obstacle' ~/.agents/skills/'testability-obstacle' && rm -rf "$d"; fi
Codex reads ~/.agents/skills directly. For Claude Code, Cursor, Copilot, Gemini CLI, Antigravity or OpenCode, also link it. For Claude Code: ln -s ~/.agents/skills/'testability-obstacle' ~/.claude/skills/'testability-obstacle' (other agents: ~/.cursor/skills, ~/.copilot/skills, ~/.gemini/skills, ~/.gemini/config/skills, ~/.config/opencode/skills). Or install through the finder skill, which does both.
Badge for your README
[](https://zalavijaysinh.github.io/skilltrust/repos/dotnet/skills/)
Score history
| Date | Version | Score |
|---|---|---|
| 2026-11-08 | 96c3d68 | 85 |
| 2026-11-07 | 96c3d68 | 85 |