[FEATURE] .NET 9 or 10 SDK support in Claude Code for web runtime environment
Preflight Checklist
- [x] I have searched existing requests and this feature hasn't been requested yet
- [x] This is a single feature request (not multiple features)
Problem Statement
Description:
The Claude Code for web runtime environment currently doesn't have the .NET 9 SDK installed, making it impossible to build .NET 9 projects.
Current behavior:
Running dotnet --version in Claude Code for web returns "command not found"
.NET 9 projects cannot be built in the Claude Code for web environment
Expected behavior:
.NET 9 SDK should be available in the runtime environment
Users should be able to build and work with .NET 9 projects directly in Claude Code for web
Context:
.NET 9 was released in November 2024 (over a year ago)
.NET 8 was previously available in the Claude Code for web environment
Many projects have already migrated to .NET 9
Request: Could you please:
Install .NET 9 SDK in the Claude Code for web runtime environment
Provide documentation about which SDK versions are available in the web environment
Share a roadmap for future SDK version updates
Workaround: Currently, users need to either downgrade their projects to .NET 8 or build locally/in CI/CD pipelines.
Thank you!
Proposed Solution
install .Net latest on agents for web claude
Alternative Solutions
_No response_
Priority
Critical - Blocking my work
Feature Category
CLI commands and flags
Use Case Example
_No response_
Additional Context
_No response_
Showing cached comments. Read the full discussion on GitHub ↗
12 Comments
Can't believe this is not supported. You should look at how Github Copilot does this.
https://docs.github.com/en/copilot/how-tos/use-copilot-agents/coding-agent/customize-the-agent-environment#preinstalling-tools-or-dependencies-in-copilots-environment
not supported yet.
Just tried running Claude Code for Web and got bit by this issue. There are actually more than one issue to get .net 10 running;
1) The environment's egress proxy blocks access to builds.dotnet.microsoft.com, which is required to download the .NET SDK installer. This can be solved by adding builds.dotnet.microsoft.com to the custom host allow list. I use this script to install dotnet based on my global.json version.
2) Not possible to use "sudo" to symlink dotnet or modify PATH
3) NuGet is not accessible through the proxy
Full Claude Code validation output follows;
Executive Summary
The
npm run setupscript fails in the Claude Code sandbox environment due to two distinct issues:---
Issue #1: dotnet Not Found in PATH
Root Cause
The
ensure-dotnet.shscript successfully installs the .NET SDK 10.0.100 to/root/.dotnet/, but the PATH modification doesn't propagate to subsequent npm commands because:spawnSync()- environment changes don't propagate to parentsudois unavailable in the sandbox, so the symlink at/usr/local/bin/dotnetcannot be created.bashrcmodification only affects new interactive shells, not the current processEvidence
Solution
Workaround available: Export PATH before running setup:
---
Issue #2: .NET Proxy Authentication Failure (BLOCKER)
Root Cause
The sandbox environment routes all external traffic through an authenticated proxy. The proxy uses JWT-based authentication with credentials embedded in the URL:
Critical Bug: .NET SDK on Linux does not properly send
Proxy-Authorizationheaders when credentials are in the environment variable URL format. This is a known .NET runtime bug (#114066).Evidence
Note: The error shows the proxy HOST only (
21.0.0.65:15004) without credentials, confirming dotnet strips/ignores them.What Works vs What Fails
| Tool | Proxy Auth | Status |
|------|-----------|--------|
| curl | ✅ Works | Successfully authenticates |
| npm | ✅ Works | Installs packages fine |
| dotnet restore | ❌ Fails | 401 Unauthorized |
| dotnet tool restore | ❌ Fails | 401 Unauthorized |
Attempted Workarounds (All Failed)
---
Recommended Solutions
For Anthropic/Claude Code Platform Team
Option A: Platform-level proxy integration for .NET
Configure the sandbox to support .NET proxy authentication. Options:
Option B: Pre-install .NET packages
Pre-restore common .NET dependencies in the sandbox image, allowing offline builds for typical projects.
Option C: Add dotnet to PATH globally
Ensure
/root/.dotnetis in the system PATH for the sandbox environment if dotnet is installed.---
Technical Details
Proxy Configuration in Sandbox
.NET Version
---
Conclusion
The
npm run setupscript cannot fully succeed in the current sandbox environment due to a fundamental incompatibility between .NET's HTTP client implementation on Linux and the sandbox's JWT-authenticated proxy. This requires a platform-level fix from Anthropic to enable .NET development workflows in Claude Code web sessions.Waiting for this fix. Needed for teleport
I need this!
This is much needed. Please put it on priority list.
I think I've managed to overcome this by asking claude to write a proxy to handle the auth issue with nuget, and use that for dotnet commands. Basically this is option A in the solutions above, but generated by claude in the project workspace.
It's written a simple python proxy and a bash script to replace dotnet commands. It's managing to restore, build and run .NET 10 project. I've got output of logs after starting a web app, and all looks good to me.
@logiclabs how does this work exactly?
I've put this solution as a skill here: https://github.com/logiclabs/dotnet-nuget-proxy-skill. It is nearly all Claude generated and I've not had time to review the code yet. It needs a bit more testing, as I was having problems with other network calls, but if you just tell Claude to look at that repo to learn how to handle the nuget auth problem, it will add a similar solution to your own repo. I've tested this on a fresh repo with a simple .NET 10 Hello World app from scratch with Spectre Console as an external nuget package.
<img width="1251" height="580" alt="Image" src="https://github.com/user-attachments/assets/11e8d135-893c-4599-82f5-815e7c91655f" />
This proxy bridge solution isn't really new though, as I just found it was described by somebody else as a workaround https://github.com/anthropics/claude-code/issues/11897#issuecomment-3621337027
The installation instructions are wrong on the README for Claude Code Web, as it doesn't support the slash commands. To install, you can just unzip the Release zip file to your repos skill folder (
.claude/skills/) and it will start using the proxy when the agent finds nuget packages don't restore.Will see if this can be turned into a custom Nuget credential provider, rather than using bash scripts to replace dotnet.
I've now rebuilt the solution as a claude plugin with a .NET/C# proxy to fix the dotnet SDK install and workaround the nuget auth.
Installation details and full explanation of what's being done here: https://github.com/logiclabs/dotnet-nuget-proxy-skill
Please star the repo if it works for you to help this get picked up by the plugins marketplace directory.
After the plugin is installed, and the session hook added to your repo, a .NET build works fairly seamlessly as below:
<img width="1410" height="1692" alt="Image" src="https://github.com/user-attachments/assets/703a3b13-37ce-449d-ad6c-c0ad25f66c0e" />
<img width="1288" height="1162" alt="Image" src="https://github.com/user-attachments/assets/ba216e79-cb07-4c13-a938-1435a50f2863" />
Please include this! We need the most recent .NET SDK's otherwise we are not able to use the Claude web runtime at all. +1