From dt-brigid
Covers patterns and gotchas for .NET script files with shebang headers, including package references, the --help interception limitation, and interactive console guards. Load when authoring or modifying scripts in the scripts/ directory.
npx claudepluginhub dreamteam-hq/brigid --plugin dt-brigidThis skill uses the workspace's default tool permissions.
Patterns and gotchas for `.cs` files with `#!/usr/bin/env dotnet` shebang, used in `scripts/`.
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.
Searches prompts.chat for AI prompt templates by keyword or category, retrieves by ID with variable handling, and improves prompts via AI. Use for discovering or enhancing prompts.
Checks Next.js compilation errors using a running Turbopack dev server after code edits. Fixes actionable issues before reporting complete. Replaces `next build`.
Patterns and gotchas for .cs files with #!/usr/bin/env dotnet shebang, used in scripts/.
#:package Spectre.Console@0.54.0
#:package Spectre.Console.Cli@0.53.1
These go at the top of the file, after the shebang. They're restored automatically on first run.
dotnet scripts/foo.cs --help shows dotnet run help, not the script's help. This is a known .NET SDK limitation. Subcommand help works fine: dotnet scripts/foo.cs kill --help.
There is no workaround from script code. Document this limitation when relevant.
Console.KeyAvailable throws InvalidOperationException when stdin is redirected (CI, piped commands, tool execution). Any interactive TUI must:
Console.IsInputRedirectedif(Console.IsInputRedirected)
{
AnsiConsole.MarkupLine("[red]Requires an interactive terminal.[/]");
return;
}
In .NET script files, define classes after the top-level statements. All types are in the global namespace. CommandApp<T> from Spectre.Console.Cli works fine with this pattern.
After writing or modifying a script, run it immediately to catch compile errors. Don't declare done until it executes successfully.