Help us improve
Share bugs, ideas, or general feedback.
From dt-brigid
Guides cross-platform .NET development by preferring framework APIs over shell commands and isolating OS-specific code in a single helper class. Load when writing code that must run on both macOS and Windows.
npx claudepluginhub dreamteam-hq/brigid --plugin dt-brigidHow this skill is triggered — by the user, by Claude, or both
Slash command
/dt-brigid:dotnet-cross-platformThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
Use `System.Diagnostics.Process` and `System.Net.NetworkInformation` before reaching for `ps`, `lsof`, `wmic`, or `netstat`. Only shell out when no .NET API exists.
Provides behavioral guidelines to reduce common LLM coding mistakes, focusing on simplicity, surgical changes, assumption surfacing, and verifiable success criteria.
Searches, retrieves, and installs Agent Skills from prompts.chat registry using MCP tools like search_skills and get_skill. Activates for finding skills, browsing catalogs, or extending Claude.
Guides systematic root-cause debugging when tests fail, builds break, or unexpected errors occur. Provides a structured triage checklist to preserve evidence, localize, and fix issues instead of guessing.
Share bugs, ideas, or general feedback.
Use System.Diagnostics.Process and System.Net.NetworkInformation before reaching for ps, lsof, wmic, or netstat. Only shell out when no .NET API exists.
| Need | .NET API | Don't use |
|---|---|---|
| List processes | Process.GetProcesses() | ps aux |
| Process name | Process.ProcessName | ps -o comm= |
| Start time | Process.StartTime | ps -o lstart= |
| CPU time | Process.TotalProcessorTime | — |
| Memory | Process.WorkingSet64 | — |
| Thread count | Process.Threads.Count | — |
| Port in use | IPGlobalProperties.GetActiveTcpListeners() | lsof -i |
When you must shell out, put ALL platform calls in a single static class PlatformHelper with:
RuntimeInformation.IsOSPlatform() checkRunShell() helper for process executionThis keeps platform-specific code to one place instead of scattered throughout.
ps -o args= (macOS) / wmic (Windows)ps -o ppid= (macOS) / wmic (Windows)lsof -i (macOS) / netstat -ano (Windows)Process.StartTime, TotalProcessorTime, and WorkingSet64 may throw on macOS due to sandboxing or permissions. Always wrap in try/catch and show "N/A" on failure.