- Home
- Skills
- Code Quality & Review
- .NET Framework Exit Map: Blockers, Order & web.config Port
Works with the AI Agents you already use
.NET Framework Exit Map: Blockers, Order & web.config Port
An agent told to "upgrade this" starts on the web project, hits a library still on net472 and thrashes.
$12.99
.NET Framework Exit Map: Blockers, Order & web.config Port
Example session with this skill installed
Management wants this .NET Framework 4.7.2 solution on modern .NET. Before anyone changes code, map the blockers, tell me which project to move first, and port web.config to appsettings.json.
- Read your context and instructions
- Compiled the net framework exit
LegacyShop: 4 projects, 22 source and config files scanned, 31 blocker hits (3 rewrite, 23 port, 5 retarget-with-care). 4 waves, no reference cycles. Nothing was changed.
| Wave | Project | Type | Tier | Hits | Tier comes from |
|---|---|---|---|---|---|
| 1 | Shop.Core | Class library | retarget | 0 | no blocker hits |
| 2 | Shop.Data | EF designer model (EDMX) | port | 3 | EDMX001 x1 |
| 3 | Shop.Services | WCF host | port | 6 | SER001 x2, WCF001 x2, WCF003 x1, WCF004 x1 |
| 4 | Shop.Web | WebForms, MVC 5 | rewrite | 22 | WF001 x1, WF002 x2 |
Hits to open first: Shop.Web/Reports/Legacy.aspx:1 (WebForms page), Shop.Web/Controllers/OrdersController.cs:16 (HttpContext.Current), Shop.Services/OrderSnapshot.cs:14 (BinaryFormatter), Shop.Data/ShopModel.edmx:1.
Packages, map dated 2026-11-13: 2 have a modern version (EntityFramework, Newtonsoft.Json), 5 are replaced, 2 are check (elmah, Example.Shop.PdfExport).
web.config port: 9 appSettings keys: 5 copied, 2 redacted, 2 framework switches not copied. Both connection strings became the placeholder. 4 names to move to a secret store: ConnectionStrings:ShopDb, ConnectionStrings:ShopEntities, AppSettings:Payment:GatewayToken, AppSettings:ApiSecret. 21 sections mapped, 1 unmapped (system.web/xhtmlConformance). Web.Release.config is a candidate for appsettings.Production.json.
Next: start with Shop.Core. Before work is sized, the team owns five decisions: the WebForms replacement, incremental migration or single cut-over, CoreWCF or gRPC or HTTP APIs, the BinaryFormatter replacement, EF6 or EF Core. Not checked: nothing was compiled, and the redaction is heuristic, so review the skeleton before you commit it.
Connects securely to your tools. The creator never sees your data.
About this skill
Someone says "move it to modern .NET" and nobody can say how many System.Web references, WCF hosts, EDMX models or BinaryFormatter calls sit in the solution, or which project moves first. An agent told to "upgrade this" starts on the web project, hits a library still on net472 and thrashes. web.config is its own trap: hundreds of lines with no single home in appsettings.json.
What your agent does
- Inventories every project from the .sln and project files (legacy and SDK-style, C# and VB): type, target framework, package format.
- Lists blockers with file and line from 43 rules covering WebForms, System.Web, WCF hosting, EDMX, BinaryFormatter and COM references. Comments and string literals are stripped from .cs and .vb, so commented-out code isn't counted.
- Gives each project a tier: retarget, retarget-with-care, port or rewrite. A project it couldn't read gets
unknown, never a clean result. - Orders the migration in waves from the project reference graph, leaf libraries first. Reference cycles are reported and kept out of the waves.
- Checks NuGet packages against a bundled, dated map of 121 ids: has a modern version, replace with a named successor, or check.
- Ports web.config or app.config to an appsettings.json skeleton, with a table row per section saying where it goes in modern .NET.
Built-in guard rails
- Both scripts are read-only on your solution, with no network code. Nothing is built, restored or converted.
- Connection string values are always replaced by a placeholder, and secret-looking keys are listed by name only. The redaction is heuristic, so you still review the skeleton.
- Tiers and counts only, no hours or days.
- A package outside the map is
check, with no compatibility claimed.
What's inside
SKILL.md: nine-step workflow, command table, hard rules, limits.- 2 standard-library Python scripts and 4 JSON data files you can extend: 43 blocker rules, 121 package entries, 66 config section mappings, 28 project type GUIDs.
- 6 reference files: blocker catalog, replacement routes, config section mapping, migration ordering, package map, report guide.
- 31 fixture files: a four-project sample solution.
- 154 unit tests in 4 test files.
The scan is text based and compiles nothing. It runs before Microsoft's upgrade tooling and doesn't replace it.
Find more skills like this on the Claude Skills Marketplace, the Codex Skills Marketplace and the Gemini Skills Marketplace, or browse Claude Skills for Code Quality & Review.
Text scan, nothing is compiled: types match by name and reflection is missed. F# sources and most inline code in pages and views aren't scanned. Package status comes from a bundled, dated map. Secret redaction is heuristic. It converts no code and gives no hour estimates.
How to use
- 1
Connect your agent to the Agensi MCP
Copy the prompt and paste it into Claude, ChatGPT, Cursor or any agent that supports MCP. It sets up the connection for you. Manual setup
- 2
Sign in to Agensi
Your agent shows a sign-in link. Sign in and click Allow.
- 3
Ask for what you need
Your agent loads this skill and uses it on your task. It always asks before buying a skill.
Reviews
No reviews yet
Be one of the first to try it. Every listed skill goes through the trust checks below.
Security scanned
Checked by our 8-point scan before listing
Fresh listing
Recently published to Agensi
Money-back guarantee
Doesn't do what its page promises? You get your money back.
Trust & safety
Security scan
Security scan passed today
Windows only
- Software
Python 3 (3 point 8 or later)The solution source tree on disk
The weborapp config file- Optional
- An output folder outside the solutionYour own copy of the rulesormapsThe target operating system