Agent Skills
› dotnet/skills
dotnet/skills
GitHub用于在VS Code中创建自定义智能体配置文件(.agent.md),定义AI角色、工具权限及工作流交接,支持从零搭建或配置多步骤协作流程。
Install All Skills
npx skills add dotnet/skills --all -g -y
Skills in Collection (109)
Showing top 50 of 109 by quality score. Use the install list command or open individual skills for the rest.
用于在VS Code中创建自定义智能体配置文件(.agent.md),定义AI角色、工具权限及工作流交接,支持从零搭建或配置多步骤协作流程。
创建新的自定义智能体
生成.agent.md脚手架文件
配置智能体间的工作流交接
npx skills add dotnet/skills --skill create-custom-agent -g -y
为 Agent Skill 生成符合 Vally 规范的 eval.yaml 评估规格文件,处理刺激数据、评分标准和测试夹具,确保评估具备统计效力且避免过拟合。
创建新的 skill 或 agent 的评估规范
编写评估刺激数据
定义评分器和评估标准
设置测试夹具文件
npx skills add dotnet/skills --skill create-skill-test -g -y
用于在 dotnet/skills 仓库中从零创建新的 Agent Skill。支持生成符合规范的 SKILL.md、校验名称、构建目录结构及编写路由描述,确保技能可被正确调度。
需要创建全新的 Agent Skill
生成符合规范的 SKILL.md 文件
npx skills add dotnet/skills --skill create-skill -g -y
诊断并修复技能评估中表现不佳、未激活或超时的技能。通过分析证据分类故障原因(如测试用例、执行框架或可靠性),避免盲目修改技能内容,旨在提升技能质量或决定其存废。
评估结果出现回归或性能不足
技能报告未激活或超时
评估运行无结果
技能成本过高
npx skills add dotnet/skills --skill improve-skill-quality -g -y
作为分发器,根据用户请求(设计、创建、调试等GitHub Agentic Workflows)匹配并加载对应的提示词或技能文件。支持仓库覆盖指令,仅按需读取必要文件,保持响应简洁并在不明确时提问。
用户请求设计 GitHub Agentic Workflow
用户请求创建或更新 GitHub Agentic Workflow
用户请求调试或升级 GitHub Agentic Workflow
npx skills add dotnet/skills --skill agentic-workflows -g -y
用于生成个性化问候语的辅助技能。根据用户姓名和当前时间段,自动构建包含恰当时间问候语及友好结尾的回复内容。
需要生成问候语
请求个性化打招呼
npx skills add dotnet/skills --skill sample-skill -g -y
用于在不创建完整项目的情况下,通过.NET CLI直接运行基于文件的C#应用程序。支持快速测试API、原型开发及小型多文件应用,包含SDK版本检查、文件编写、执行及指令添加流程。
用户需要快速验证C#代码或API特性
用户希望运行单文件或小型多文件C#脚本而不创建项目结构
npx skills add dotnet/skills --skill csharp-scripts -g -y
在 GitHub Actions 中配置 NuGet OIDC 可信发布,以短效令牌替代长期 API 密钥。适用于新建发布流程或从 API Key 迁移,支持 dotnet tool、MCP 服务器及模板包的安全发布设置。
迁移 NuGet API Key 到 OIDC
配置安全的 NuGet 发布流程
移除 NuGet API 密钥
使用 NuGet/login@v1 进行发布
npx skills add dotnet/skills --skill nuget-trusted-publishing -g -y
指导在ASP.NET Core中配置OpenTelemetry,实现分布式追踪、指标和日志。涵盖NuGet包安装、OTLP导出器设置及自定义信号创建,用于提升应用可观测性。
添加分布式追踪到ASP.NET Core应用
配置OpenTelemetry导出器
创建自定义指标或跟踪跨度
排查分布式上下文传播问题
npx skills add dotnet/skills --skill configuring-opentelemetry-dotnet -g -y
指导 ASP.NET Core Web API 端点的创建与修改,涵盖 HTTP 语义、OpenAPI 文档、DTO 定义及错误处理中间件配置。
添加新的 API 端点
配置 OpenAPI/Swagger 元数据
创建 .http 测试文件
设置全局错误处理中间件
npx skills add dotnet/skills --skill dotnet-webapi -g -y
提供ASP.NET Core Minimal API中文件上传的实现指南,涵盖IFormFile绑定、大小限制配置及流式处理,帮助开发者构建安全高效的上传接口。
实现文件上传功能
配置Kestrel或FormOptions限制
处理Multipart/form-data请求
npx skills add dotnet/skills --skill minimal-api-file-upload -g -y
用于创建新的 ASP.NET Core Blazor Web 应用或网站,指导选择渲染模式(如 Static SSR、Interactive Server 等)并生成初始项目结构。
创建新的 Blazor Web 应用
脚手架化新项目
启动新网站
选择 Blazor 渲染模式
npx skills add dotnet/skills --skill create-blazor-project -g -y
指导在 Blazor 中通过 API 获取和提交数据,涵盖不同渲染模式下的 HttpClient 注册、异步生命周期处理及错误状态展示。
Blazor 应用需要从后端 API 获取数据
Blazor 应用需要向 API 提交数据
配置 Blazor 组件的网络请求和加载状态
npx skills add dotnet/skills --skill fetch-and-send-data -g -y
解决 Blazor 预渲染导致的重复数据加载、UI闪烁及状态丢失问题。提供状态持久化方案,支持禁用预渲染、排除路由及检测预渲染状态,确保交互式组件正确工作。
修复 Blazor 预渲染与交互模式切换时的 UI 闪烁
处理 OnInitializedAsync 重复执行导致的数据重复请求
实现跨预渲染和交互阶段的状态持久化
禁用特定页面或组件的预渲染功能
npx skills add dotnet/skills --skill support-prerendering -g -y
指导在 Blazor 中实现 JavaScript 互操作的最佳实践,涵盖模块组织、生命周期时序、性能批处理及资源清理。
Blazor 组件需要调用 JavaScript
修复 Blazor JS 互操作问题
优化 .NET 与 JS 之间的通信性能
npx skills add dotnet/skills --skill use-js-interop -g -y
诊断并优化 Entity Framework Core 查询性能,解决 N+1、索引失效等问题。通过捕获 SQL 日志定位瓶颈,应用最小化修改减少数据库往返和扫描,提升查询速度。
EF Core 查询速度慢
出现 N+1 查询问题
生成的 SQL 语句过多
需要优化 LINQ 查询性能
npx skills add dotnet/skills --skill optimizing-ef-core-queries -g -y
扫描C#/.NET代码以识别约50种性能反模式,覆盖异步、内存、LINQ等领域,提供分级修复建议。适用于代码审查、热路径审计及发布前优化分析。
审查.NET代码性能
审计高分配或低效的热路径代码
发布前系统性扫描性能反模式
npx skills add dotnet/skills --skill analyzing-dotnet-performance -g -y
诊断 .NET Framework CLR 激活问题,通过分析 mscoree.dll 生成的 CLRLoad 日志,解决运行时选择错误、加载失败及 FOD 对话框异常等 shim 层问题。
进程无法加载 CLR
Shim 选择了错误的 CLR 版本
出现意外的 .NET 3.5 FOD 安装对话框
COM 对象因 shim 无法解析运行时而激活失败
npx skills add dotnet/skills --skill clr-activation-debugging -g -y
指导开发者针对生产环境.NET性能问题选择诊断工具、收集数据并了解工具权衡,涵盖不同运行时、OS及部署拓扑。
排查高CPU或内存泄漏等性能问题
选择特定环境的诊断工具
收集容器或K8s工作负载的诊断数据
npx skills add dotnet/skills --skill dotnet-trace-collect -g -y
配置并收集现代 .NET 应用(CoreCLR/NativeAOT)的崩溃转储,支持容器环境。仅负责启用自动转储或捕获运行中进程的转储文件,严禁用于分析、调试或调查根因。
需要为 .NET 进程启用自动崩溃转储
需要从正在运行的 .NET 进程中手动捕获内存转储
npx skills add dotnet/skills --skill dump-collect -g -y
分析.NET测试中Mock的使用情况,追踪执行路径以识别死代码、冗余或可替换的Mock配置。支持Moq等框架,辅助简化测试设置和减少过度模拟。
审计Mock使用情况
查找未使用或不必要的Mock设置
简化测试设置
检查Mock是否必要
npx skills add dotnet/skills --skill exp-mock-usage-analysis -g -y
指导在.NET 8+中优化热点标量循环,优先使用Span<T>和TensorPrimitives,必要时手动实现SIMD指令集加速数值计算。
需要优化高性能数值计算循环
将标量代码重构为向量化实现
评估代码是否具备SIMD优化潜力
npx skills add dotnet/skills --skill exp-simd-vectorization -g -y
分析MSBuild二进制日志(.binlog)以诊断构建失败、级联错误及目标执行顺序。支持通过MCP工具或文本回放工作流进行调试,适用于控制台输出不清晰的构建问题排查。
MSBuild构建失败且控制台信息不明确
需要诊断多项目构建中的级联错误
需要追踪MSBuild目标执行顺序
提供.binlog文件请求分析
npx skills add dotnet/skills --skill binlog-failure-analysis -g -y
指导在MSBuild中配置CopyToOutputDirectory模式,通过对比Never、PreserveNewest、Always和IfDifferent的优缺点,帮助用户避免构建性能损耗并正确处理文件变更场景。
优化.NET项目构建速度
处理配置文件或数据文件在构建间被修改的问题
排查增量构建无效或重复复制问题
npx skills add dotnet/skills --skill copy-to-output-directory -g -y
指导使用 MSBuild Server 提升 .NET CLI 构建性能,通过设置环境变量实现缓存加速。适用于 CLI 增量构建慢或 CI 场景,不适用于 IDE 环境。
CLI 增量构建缓慢
VS 与 CLI 构建速度差异大
CI 频繁顺序构建
npx skills add dotnet/skills --skill msbuild-server -g -y
指导开发者正确分析 MSBuild 构建性能,避免被 ResolveProjectReferences 的误导性耗时数据干扰。引导用户通过 Task 自时间定位真实瓶颈,而非直接优化该目标。
ResolveProjectReferences 在构建性能摘要中耗时最高
开发者试图直接优化 ResolveProjectReferences
npx skills add dotnet/skills --skill resolve-project-references -g -y
将.NET测试项目从xUnit v2/v3迁移至MSTest v4,自动替换特性、断言及并行配置等,保持构建与测试结果一致。
需要将xUnit测试转换为MSTest
询问xUnit到MSTest的代码映射
npx skills add dotnet/skills --skill migrate-xunit-to-mstest -g -y
将 .NET 测试项目从 xUnit.net v2 迁移至 v3,处理包引用更新、配置调整及代码适配,确保编译通过且测试结果一致。
升级 xunit 到 v3
解决 xunit v3 包更新后的编译错误
npx skills add dotnet/skills --skill migrate-xunit-to-xunit-v3 -g -y
提供多种编程语言特定的测试扩展文件路径,供代码测试流水线调用以获取构建、测试命令及常见错误指导。
需要获取特定语言测试指南时
代码测试流水线执行前
npx skills add dotnet/skills --skill code-testing-extensions -g -y
提供跨平台和框架的测试过滤器语法参考,涵盖VSTest、MTP及xUnit v3的过滤表达式与翻译规则,供相关Agent按需调用。
查询不同测试框架的过滤语法
转换VSTest到MTP的过滤表达式
npx skills add dotnet/skills --skill filter-syntax -g -y
通过静态分析识别未测试的源代码文件,生成测试缺口清单。支持 Roslyn 和 tree-sitter 引擎,无需构建即可快速定位需补充测试的文件,辅助测试生成代理工作。
询问哪些文件缺少测试
需要查找未测试的代码源
请求测试缺口列表
在生成测试前确定优先级
npx skills add dotnet/skills --skill find-untested-sources -g -y
检测.NET项目的测试平台(VSTest/MTP)和框架(MSTest/xUnit等),区分SDK/经典项目结构,分析global.json及配置文件以确定正确的测试执行环境。
查询测试平台或框架类型
判断VSTest与MTP模式
分析dotnet test runner配置
识别hidden runner settings
npx skills add dotnet/skills --skill platform-detection -g -y
为 .NET 仓库自动创建符合现有约定的最小测试项目,配置框架引用、中心包管理及 CI 集成,解决无测试或 CI 未发现的问题。
解决方案缺少测试项目
需要添加被 CI 遗漏的测试项目
用户请求设置测试环境
npx skills add dotnet/skills --skill scaffold-dotnet-test-project -g -y
通过伪变异分析识别现有测试的盲区,验证代码修改是否会被测试捕获。用于发现薄弱测试、补充缺失的边缘用例及评估测试有效性,而非生成新测试套件或运行实际变异工具。
询问现有测试是否能捕获特定Bug
寻找测试中的弱项或浅层断言
评估测试覆盖率的实际有效性
请求变异测试分析或查找测试盲点
npx skills add dotnet/skills --skill test-gap-analysis -g -y
针对C#代码,通过引入最小化行为保留的依赖注入接口(如TimeProvider、文件抽象等),消除DateTime、文件系统、随机数等环境依赖,从而编写确定性单元测试。
需要测试依赖当前时间或延迟的代码
需要避免真实文件读写的环境依赖
需要控制随机数或环境变量以进行单元测试
npx skills add dotnet/skills --skill testability-obstacle -g -y
解决.NET项目Native AOT和裁剪兼容性问题,系统修复IL警告,添加注解并启用IsAotCompatible。
Make this project AOT-compatible
Fix trimming warnings
Resolve IL2070 / IL2067 / IL2072 / IL2026 / IL3050 warnings
Add DynamicallyAccessedMembers annotations
Enable IsAotCompatible in my .csproj
npx skills add dotnet/skills --skill dotnet-aot-compat -g -y
确保 GitHub Actions 工作流 YAML 语法正确,防止因引号、注释陷阱导致运行失败。提供编辑、审查及使用 actionlint 验证的方法。
编辑或添加 .github/workflows/ 下的文件
编写包含 ${{ }} 表达式的 YAML 值
排查 workflow 因语法问题无法启动的故障
npx skills add dotnet/skills --skill authoring-github-workflows -g -y
指导在.NET中正确调用C/C++原生库,涵盖DllImport与LibraryImport声明、类型映射、字符串编组及内存管理。用于编写新接口、审查现有代码或调试崩溃等互操作问题。
编写新的P/Invoke或LibraryImport声明
审查或调试现有的原生互操作代码
诊断托管与原生边界处的崩溃或内存泄漏
npx skills add dotnet/skills --skill dotnet-pinvoke -g -y
用于使用C# SDK和.NET模板创建MCP服务器项目。涵盖脚手架生成、工具/提示/资源实现及stdio或HTTP传输配置。适用于从零搭建或扩展MCP服务,不用于调试、测试或发布。
创建新的MCP服务器项目
为现有MCP服务器添加工具或资源
选择并配置stdio或HTTP传输方式
设置ASP.NET Core托管的HTTP MCP端点
npx skills add dotnet/skills --skill mcp-csharp-create -g -y
用于本地运行、调试和交互式测试C# MCP服务器。涵盖IDE配置、MCP Inspector协议测试、GitHub Copilot集成及日志设置。适用于诊断工具注册问题,不用于创建新项目或生产部署。
本地运行C# MCP服务器
配置VS Code或Visual Studio进行调试
使用MCP Inspector测试工具
验证Copilot Agent模式中的工具
诊断工具未发现或协议错误
npx skills add dotnet/skills --skill mcp-csharp-debug -g -y
用于C# MCP服务器的自动化测试,涵盖工具方法的单元测试及基于MCP协议的全流程集成测试。支持xUnit/NUnit框架、依赖模拟、内存客户端/服务器交互及HTTP传输测试,适用于CI管道构建与质量评估。
需要为C# MCP服务器编写单元测试或集成测试
配置MCP服务器的CI测试流水线
验证MCP工具的方法逻辑或完整协议交互
npx skills add dotnet/skills --skill mcp-csharp-test -g -y
指导在.NET 8+应用中选型AI/ML技术,涵盖ML.NET、MEAI、Agent Framework等,用于分类、LLM集成、RAG及本地推理。
为.NET项目选择AI或机器学习技术方案
需要集成大语言模型、向量搜索或自定义模型推理
npx skills add dotnet/skills --skill technology-selection -g -y
指导将 .NET 8 前的 Blazor Server 应用迁移至 .NET 8+ Blazor Web App,包括更新项目文件、重构入口组件及适配新渲染模式。
将 Blazor Server 应用升级为 Blazor Web App
从旧版 AddServerSideBlazor 迁移到 AddRazorComponents
npx skills add dotnet/skills --skill convert-blazor-server-to-webapp -g -y
用于创建或审查Blazor组件(.razor),涵盖参数传递、生命周期管理、异步模式及资源释放。指导正确使用RenderFragment、EventCallback及CSS隔离,避免JS互操作和状态协调等场景。
需要编写新的Blazor组件代码
审查现有Blazor组件架构与规范
npx skills add dotnet/skills --skill author-component -g -y
指导在 Blazor 中构建表单、验证数据及处理用户输入。涵盖 EditForm 配置、不同交互模式下的绑定策略、内置组件使用及提交处理,支持 SSR 与交互式场景。
需要在 Blazor 项目中创建表单或数据录入界面
实现表单数据验证和提交逻辑
处理 Blazor 中的用户输入绑定
npx skills add dotnet/skills --skill collect-user-input -g -y
为 Blazor Web App 配置身份验证和授权,支持不同渲染模式。涵盖服务注册、路由保护、页面属性及组件内状态访问,解决认证状态异常问题。
需要添加 [Authorize] 或 AuthorizeView
处理登录/注销 Identity 页面
解决交互式组件中 HttpContext.User 为空或认证状态异常
npx skills add dotnet/skills --skill configure-auth -g -y
指导在 Blazor 中通过 CascadingValue、DI 或作用域服务实现组件间状态共享,解决跨渲染模式边界及非父子组件的数据通信与更新问题。
需要在无直接父子关系的组件间共享状态
需要跨越渲染模式边界传递级联值
需要全局主题或用户偏好设置
npx skills add dotnet/skills --skill coordinate-components -g -y
用于规划复杂的 Blazor UI 功能,通过将页面分解为多个独立、可组合的子组件来设计架构。适用于多区域仪表盘或复杂布局,旨在避免单体组件,优化数据流与组件职责分离。
规划复杂的 Blazor 页面结构
将大型 UI 功能分解为多个组件
设计包含侧边栏和内容面板的多区域布局
npx skills add dotnet/skills --skill plan-ui-change -g -y
为ASP.NET Core项目生成或脚手架代码,包括Razor Pages、Blazor组件、MVC控制器和Minimal API。支持EF Core数据驱动CRUD及现有UI模式匹配,无需CLI工具。
添加ASP.NET Core项目的CRUD页面、视图或组件
使用Entity Framework Core生成API控制器或Minimal API端点
生成基于DbContext的Razor Pages、MVC视图或Blazor组件
npx skills add dotnet/skills --skill create-datadriven-aspnetcore -g -y
用于解析Android Tombstone崩溃日志中的.NET原生堆栈,提取BuildId并从微软符号服务器下载调试符号,利用llvm-symbolizer将原生地址还原为函数名及源码行号,辅助排查MAUI/Xamarin应用崩溃。
分析Android tombstone文件以定位.NET运行时崩溃原因
将原生堆栈帧符号化为包含文件名和行号的详细信息
排查libmonosgen-2.0.so或libcoreclr.so相关的SIGSEGV/SIGABRT错误
npx skills add dotnet/skills --skill android-tombstone-symbolication -g -y


