aspnet-core
Build, debug, modernize, or review ASP.NET Core applications with correct hosting,…
Scaffolds new agent skills for the dotnet/skills repository. Use when creating a new skill, generating SKILL.md files, writing a skill description that the runtime will actually route to, or setting up skill directory structures. Handles frontmatter generation, section
$ npx -y skills add managedcode/dotnet-skills --skill create-skill --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
/create-skillContext preview
The summary Claude sees to decide when to auto-load this skill.
Scaffolds new agent skills for the dotnet/skills repository. Use when creating a new skill, generating SKILL.md files, writing a skill description that the runtime will actually route to, or setting up skill directory structures. Handles frontmatter generation, section
name: create-skill description: Scaffolds new agent skills for the dotnet/skills repository. Use when creating a new skill, generating SKILL.md files, writing a skill description that the runtime will actually route to, or setting up skill directory structures. Handles frontmatter generation, section templates, and validation guidance. Do not use for fixing a skill that already fails its evaluation (use improve-skill-quality) or for writing eval.yaml (use create-skill-test).
This skill helps you scaffold new agent skills that conform to the Agent Skills specification and the dotnet/skills repository conventions.
| Input | Required | Description | |-------|----------|-------------| | Skill name | Yes | Lowercase, alphanumeric, hyphens only (e.g., `code-review`, `ci-triage`) | | Description | Yes | What the skill does and when agents should use it (1-1024 chars) | | Purpose | Yes | One paragraph describing the outcome | | Workflow steps | Recommended | Numbered steps the agent should follow |
Ensure the name:
The `description` is the **only** text the runtime sees when deciding whether to load the skill. A perfect body behind a weak description never runs.
--- name: <skill-name> description: <what it does>. USE FOR: <symptoms, error codes, artifact names, quoted user requests>. DO NOT USE FOR: <nearby-but-wrong intents, with the skill that owns them>. ---
`MSTEST0014`), artifact names (`.testsettings`, `binlog`), and requests phrased as a developer would type them.
abstraction already exist?" separates two skills; "testing" does not. Add the matching exclusion to **both** siblings.
tests" and a sibling owns "review", say so explicitly.
exclusion like "already on v3" can lock out the post-upgrade fixes that are the skill's purpose.
budgeted. A helper skill users should never invoke directly can set `disable-model-invocation: true` to free menu space while staying invocable by name.
Every skill is scored head-to-head against the same model with **no skill loaded**. Content the model already produces unaided is worth zero; content that makes it slower or more hedged is worth less than zero. See [improve-skill-quality/references/writing-for-baseline-delta.md](../improve-skill-quality/references/writing-for-baseline-delta.md) for the full evidence.
| Do | Instead of | |----|------------| | Encode the decision the model would otherwise get wrong | Restating API signatures it already reproduces | | "When A, do B, never C, verify D" tables | Lists of plausible alternatives | | A concrete output contract (exact command, verdict line, findings table) | "Consider…", "you may want to…" | | Scale output structure to input size | A 12-section dashboard for an 8-test suite | | Stop-conditions that prevent over-applying | Acting before measuring, rewriting working code | | Instructing the agent to discover repo paths | Marking discoverable paths as required inputs | | Reporting restore/build/test failures truthfully | Claiming success after a failed command | | Verifying load-bearing API claims by compiling or probing | Trusting a source read | | Gating rare or expensive paths behind `references/` | One large SKILL.md carrying every path |
Do not over-correct: a skilled answer shorter and less actionable than the baseline's still loses.
plugins/<plugin>/skills/<skill-name>/ └── SKILL.md
Create the file with the frontmatter drafted in Step 2.
Include these recommended sections:
1. **Purpose**: One paragraph describing the outcome 2. **When to Use**: Bullet list of appropriate scenarios 3. **When Not to Use**: Boundaries and exclusions 4. **Inputs**: Table of required and optional inputs 5. **Workflow**: Numbered steps with checkpoints 6. **Validation**: How to confirm the skill worked correctly 7. **Common Pitfalls**: Known traps and how to avoid them
plugins/<plugin>/skills/<skill-name>/ ├── SKILL.md ├── scripts/ # Executable code agents can run ├── references/ # Additional documentation loaded on demand └── assets/ # Templates, images, data files
Reference bundled files with paths relative to the directory that contains `SKILL.md`, such as `references/details.md` or `scripts/validate.ps1`. Do not tell the agent to search for the skill's installation directory. If a missing bundled file reduces the result quality, allow one listing of the known bundled-file directory and require the agent to report the reduced coverage.
Add entr
Stop explaining .NET to your AI. Start building. We've all been there: asking Claude to use Entity Framework, only to get EF6 patterns in a .NET 8 project. Explaining to Copilot that Blazor Server and Blazor WebAssembly aren't the same thing.
Repo: managedcode/dotnet-skills
Build, debug, modernize, or review ASP.NET Core applications with correct hosting,…
Build, upgrade, and operate Aspire 13.5.x C# or TypeScript application hosts with the current…
Build, review, or migrate Azure Functions in .NET with correct execution model, isolated…
Build and review Blazor applications across server, WebAssembly, web app, and hybrid…
Maintain or migrate EF6-based applications with realistic guidance on what to keep, what to…
Design, tune, or review EF Core data access with proper modeling, migrations, query…