msbuild-antipatterns
97 / 100 · Low risk
Fine to try. Some of what it can do is expected: a security skill usually runs scanners and checks websites.
DO NOT INVOKE when the primary request explicitly asks to convert, migrate, modernize, or rewrite a legacy/old-style project to SDK style; use msbuild-modernization. Migration prompts often mention ToolsVersion, explicit Compile/Reference entries, packages.config, or Microsoft.CSharp.targets, but merely reviewing or auditing a file that contains those patterns remains in scope here. USE FOR broad review, audit, lint, or maintainability/correctness checks of project/build files, including custom…
What this skill can do
Runs commands on your computer
Install
Paste this into your terminal. It downloads exactly the version we scanned, not whatever is newest.
if [ -e ~/.agents/skills/'msbuild-antipatterns' ] || [ -L ~/.agents/skills/'msbuild-antipatterns' ]; then echo 'A skill folder named msbuild-antipatterns 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-msbuild/skills/msbuild-antipatterns' && mkdir -p ~/.agents/skills && cp -R "$d"/'plugins/dotnet-msbuild/skills/msbuild-antipatterns' ~/.agents/skills/'msbuild-antipatterns' && 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/'msbuild-antipatterns' ~/.claude/skills/'msbuild-antipatterns' (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 | 97 |
| 2026-11-07 | 96c3d68 | 97 |