dotnet-build-diagnostics
Capture dotnet environment and CI-style build diagnostics with binlog and summary output.
When & Why to Use This Skill
The dotnet-build-diagnostics skill streamlines the troubleshooting process for .NET applications by capturing comprehensive environment data and CI-style build diagnostics. It generates both a detailed binary log (binlog) for deep inspection and a concise text summary optimized for sharing in chat, helping developers and AI agents quickly pinpoint and resolve MSBuild compilation errors and configuration issues.
Use Cases
- Case 1: Efficiently debugging failed .NET builds by extracting specific error blocks and stack traces from the summary log to share with AI assistants without exceeding context limits.
- Case 2: Diagnosing environment-specific build failures in CI/CD pipelines or local setups by capturing a complete snapshot of the dotnet environment and build artifacts.
- Case 3: Facilitating an iterative 'fix-and-verify' workflow where the skill is used to confirm progress after each code change by re-running diagnostics and checking for remaining errors.
| name | dotnet-build-diagnostics |
|---|---|
| description | Capture dotnet environment and CI-style build diagnostics with binlog and summary output. |
dotnet-build-diagnostics
Collect build diagnostics, including a binlog and a summary log suitable for sharing in chat.
Outputs
artifacts/codex/build.binlogartifacts/codex/build-summary.txt
Requirements
dotnetCLIpython3(bash script only)- PowerShell (
pwsh) for Windows
Run
Bash:
bash .codex/skills/dotnet-build-diagnostics/scripts/run-build-diagnostics.sh
PowerShell:
pwsh -File .codex/skills/dotnet-build-diagnostics/scripts/run-build-diagnostics.ps1
Guidance for sharing errors
- Open
artifacts/codex/build-summary.txtand paste only the error list and the first few lines of any stack trace into chat. - If the log is large, include the first error block and the last 50 lines of the build output.
- We will iterate by fixing one error at a time and re-running the script to confirm progress.