Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx skills add Phaedra-Solutions/cursor-rules --skill upgrade-dotnetgit clone --depth 1 https://github.com/Phaedra-Solutions/cursor-rulesWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/phaedra-solutions/cursor-rules/upgrade-dotnet)<a href="https://agentmods.dev/skills/phaedra-solutions/cursor-rules/upgrade-dotnet"><img src="https://agentmods.dev/badge/skills/phaedra-solutions/cursor-rules/upgrade-dotnet/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/skills/phaedra-solutions/cursor-rules/upgrade-dotnet"><img src="https://agentmods.dev/badge/skills/phaedra-solutions/cursor-rules/upgrade-dotnet.svg" alt="Reviewed on agentmods" width="80" height="20"></a>What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00141 | $0.01302 |
| Opus 5.5 | $0.00056 | $0.00521 |
| Sonnet 5.5 | $0.00028 | $0.00260 |
| Haiku 4.5 | $0.00014 | $0.00130 |
Grade A, and why
upgrade-dotnet scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 3d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 63 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Upgrade .NET
When to use
- The project targets net8.0 or net9.0 (support ends 10 Nov 2026) or an older .NET (Core) version (see
legacy/dotnet-8-9). - The user asks to move to .NET 10 LTS.
For a servicing update (8.0.31 → 8.0.32), update the SDK, runtime and images and run Verify. For .NET Framework 4.x, use migrate-dotnet-framework instead.
Before you start
- Read every project's
TargetFramework(s),global.json,Directory.Build.props,Directory.Packages.props(or per-projectPackageReferences), Dockerfiles, CI SDK setup, and hosting (App Service, Functions, Kubernetes). - List packages with their .NET 10 support: platform packages (
Microsoft.AspNetCore.*,Microsoft.EntityFrameworkCore.*,Microsoft.Extensions.*), EF providers (Npgsql, Pomelo), test frameworks, analyzers, and anything with native or source-generator components. - Install the .NET 10 SDK locally (with approval) and check
dotnet --list-sdks. - Ask the user:
- the target (default net10.0; don't target .NET 11 previews or the STS release unless asked);
- whether to upgrade all projects together or libraries first (multi-target
net8.0;net10.0during the transition); - whether package installs are approved (
core/supply-chain).
- Tooling note: the .NET Upgrade Assistant is deprecated; GitHub Copilot upgrade replaces it (needs a GitHub Copilot subscription and sends code to Copilot models). Use it only if the user agrees; the steps below work without it.
- Working tree clean; new branch (
chore/net10); build and tests pass (record failures).
Steps
- Baseline:
dotnet build -warnaserror,dotnet test,dotnet list package --vulnerable --include-transitive; save OpenAPI output and startup logs for web apps. - SDK: update
global.jsonto a .NET 10 SDK band (for example"version": "10.0.100", "rollForward": "latestFeature"). - Retarget: set
<TargetFramework>net10.0</TargetFramework>(inDirectory.Build.propsif centralized); libraries consumed by others may multi-target. RemoveLangVersionpins below C# 14 unless needed. - Packages: update platform packages to 10.x together, then third-party packages to versions that support net10.0; read release notes for majors. Keep central package management consistent.
- Breaking changes: go through the 9.0 list (when coming from 8) and the 10.0 list for ASP.NET Core, EF Core, System.Text.Json, networking, cryptography, SDK/MSBuild and containers; fix obsolete-API warnings (
SYSLIB*,ASPDEPR*). - EF Core: build, then
dotnet ef migrations has-pending-model-changes; generate a migration only for intended model changes and review it. - Runtime surfaces: container base images (
mcr.microsoft.com/dotnet/aspnet:10.0/runtime:10.0), CIsetup-dotnetversion, hosting stack settings, anddotnet-tools.jsontools. - Show the diff and results; wait for approval. Commit only when asked (
git-commitskill). Then switch tobackend/aspnet-core/languages/csharpfor follow-ups.
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 3d ago First seen · 63 lines · 141 tokens per session scan A 8b62f3204693
upgrade-dotnet is a skill published in the GitHub repository Phaedra-Solutions/cursor-rules (4 stars, last pushed 2d ago), licensed MIT. It adds 141 tokens to every session and 1,302 once invoked, about $0.0006 per session on Opus 5.5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-11-01.
Other skills, from other repositories
grok-cli
Delegate bounded tasks to Grok Build from a supervising agent such as Codex. Use when the user asks Grok to investigate, review, implement, or provide another perspective, or when a distinct coding agent would materially help. Includes a background ACP client for progress, follow-up prompts, permissions, and…
documentation
Use when the user asks to install or maintain a documentation index, keep CLAUDE.md or AGENTS.md inventories synchronized with files, add document metadata, classify documentation, or apply documentation-only setup to a repository.
talk-like-scarletkc
A writing guide that makes text sound like the developer scarletkc, including posts, comments, technical opinions, project documents, and translations.
product-writing
Write, edit, or review UI copy, CLI messages, help text, code comments, and technical documentation covering product behavior, errors, status, setup, compatibility, or technical results.
marketing-copy
Write outbound promotional copy for a product or project: launch and update posts for community platforms and social media, store page descriptions and short blurbs, landing page headlines and calls to action, press-style announcements, and the naming of a product for another language or market. Covers what may be…
scoped-change
Judgment rules for locating the correct boundary of a requested change: staying inert outside it while completing every required site inside it. Use when scope is ambiguous, a diff touches neighboring surfaces, required dependent edits are unclear, or a proposed compatibility layer, migration, fallback, flag…