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角色、配置可用工具及设置智能体间交接流程,支持从零构建或脚手架生成专用开发助手。
需要创建新的自定义AI智能体
生成带有正确元数据的.agent.md文件
配置多步骤工作流中的智能体交接
为特定角色限制可用工具集
npx skills add dotnet/skills --skill create-custom-agent -g -y
为 Agent Skill 生成符合 Vally 规范的 eval.yaml 评估规格文件,处理刺激数据、评分标准及测试夹具,防止过拟合。
创建新的 skill 评估规范
编写评估刺激数据
定义评分器和评判标准
设置测试夹具文件
npx skills add dotnet/skills --skill create-skill-test -g -y
用于在 dotnet/skills 仓库中从零创建新的 Agent Skill,生成符合规范的 SKILL.md 文件、目录结构及 Frontmatter,并提供路由描述编写与校验指导。
创建新的 Agent Skill
生成 SKILL.md 文件
设置 Skill 目录结构
编写 Skill 路由描述
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 Workflows
用户请求调试或升级工作流
npx skills add dotnet/skills --skill agentic-workflows -g -y
用于生成个性化问候语的技能,根据时间判断并包含用户姓名及友好结语。
需要生成问候语
npx skills add dotnet/skills --skill sample-skill -g -y
用于在无项目结构下直接运行单文件 C# 应用,支持通过指令引入 NuGet 包和 MSBuild 属性,适用于快速原型验证、API 测试及小型工具开发。
需要快速运行 C# 代码片段
进行 C# API 或语言特性实验
构建无需完整项目结构的简单实用程序
npx skills add dotnet/skills --skill csharp-scripts -g -y
在 GitHub Actions 中配置 NuGet OIDC 可信发布,替代长期 API 密钥。用于迁移、新建发布流程或移除 API Key,支持 .NET 包、工具及模板的无密钥安全发布。
迁移到 NuGet OIDC 发布
移除 NuGet API 密钥
设置安全的 NuGet 发布工作流
使用 NuGet/login 进行发布
npx skills add dotnet/skills --skill nuget-trusted-publishing -g -y
指导在 ASP.NET Core .NET 应用中配置 OpenTelemetry SDK,实现分布式追踪、指标和日志。涵盖 NuGet 包安装、OTLP 导出器设置、自定义信号创建及跨服务链路排查。
为 ASP.NET Core 应用添加分布式追踪
配置 OpenTelemetry OTLP 导出器
创建自定义业务指标或追踪跨度
排查分布式链路上下文传播问题
npx skills add dotnet/skills --skill configuring-opentelemetry-dotnet -g -y
用于创建和修改 ASP.NET Core Web API 端点,确保正确的 HTTP 语义、OpenAPI 元数据和错误处理。适用于添加控制器或最小 API、配置 Swagger 及全局错误中间件。
添加新的 Web API 端点
配置 OpenAPI/Swagger 文档
设置全局错误处理中间件
定义请求/响应 DTO
npx skills add dotnet/skills --skill dotnet-webapi -g -y
指导在ASP.NET Core Minimal API中实现文件上传,涵盖IFormFile绑定、大小限制配置及流式处理等关键实践。
需要在Minimal API中添加文件上传接口
处理IFormFile参数绑定问题
配置请求体或文件大小限制
npx skills add dotnet/skills --skill minimal-api-file-upload -g -y
用于创建新的 Blazor Web 应用项目,通过收集需求并选择渲染模式(如 Static SSR、Interactive Server/WASM/Auto)来生成合适的项目脚手架。
创建新的 Blazor Web 应用
为 Web 项目生成初始结构
npx skills add dotnet/skills --skill create-blazor-project -g -y
指导 Blazor 应用通过 API 获取和发送数据,涵盖 HttpClient 注册、异步生命周期处理及不同渲染模式下的数据访问策略。
Blazor 组件需要调用外部 API 或后端服务
需要在 Blazor 中处理数据加载、错误状态或流式渲染
npx skills add dotnet/skills --skill fetch-and-send-data -g -y
解决 Blazor 预渲染与交互模式切换时的数据重复加载、UI 闪烁及状态丢失问题。提供 PersistentState 等方案以持久化组件状态,优化 prerender-to-interactive 过渡体验。
修复 Blazor 预渲染导致的数据重复加载
解决 UI 在预渲染到交互模式切换时的闪烁
处理预渲染期间的空引用异常
跨预渲染阶段持久化组件状态
npx skills add dotnet/skills --skill support-prerendering -g -y
提供Blazor中JS互操作的最佳实践,涵盖组件内联模块、生命周期时机控制及性能优化。指导安全调用JS与.NET方法,处理资源释放及避免跨边界冗余通信。
需要在Blazor组件中调用JavaScript函数
需要实现JavaScript到.NET的回调机制
解决Blazor JS互操作的时序或性能问题
npx skills add dotnet/skills --skill use-js-interop -g -y
诊断并优化 Entity Framework Core 查询性能,通过减少 SQL 生成量、降低数据库往返次数及消除 N+1 等问题提升响应速度。
EF Core 查询执行缓慢
出现 N+1 查询问题
生成的 SQL 语句数量异常多
深度分页或批量更新性能差
npx skills add dotnet/skills --skill optimizing-ef-core-queries -g -y
扫描 .NET/C# 代码中的性能反模式,覆盖异步、内存、LINQ 等场景,提供分级优化建议。用于代码审查、热点路径审计及发布前系统扫描。
审查 C#/.NET 代码以寻找性能优化机会
审计热点路径中的分配密集或低效模式
发布前对代码库进行系统性反模式扫描
npx skills add dotnet/skills --skill analyzing-dotnet-performance -g -y
用于诊断 .NET Framework CLR 激活问题,分析 mscoree.dll 生成的 CLRLoad 日志。适用于运行时选择错误、加载失败、FOD 对话框异常或 COM 对象激活失败等场景,帮助排查 shim 层的决策逻辑。
进程无法加载 CLR
shim 选择了错误的 CLR 版本
出现意外的 .NET 3.5 FOD 安装对话框
COM 对象激活失败
npx skills add dotnet/skills --skill clr-activation-debugging -g -y
指导开发者根据环境选择诊断工具,收集.NET性能数据。适用于排查生产环境CPU、内存等问题,不涉及代码分析或基准测试。
排查生产环境性能问题
选择诊断工具
收集性能数据
npx skills add dotnet/skills --skill dotnet-trace-collect -g -y
为现代.NET应用配置并收集崩溃转储,支持CoreCLR和NativeAOT,覆盖多平台及容器环境。仅负责启用自动转储或从运行中进程捕获数据,明确排除转储分析、调试、性能剖析及.NET Framework支持。
需要为.NET应用启用自动崩溃转储
需要从正在运行的.NET进程中立即捕获内存转储
在Docker或Kubernetes环境中配置.NET崩溃转储收集
npx skills add dotnet/skills --skill dump-collect -g -y
分析.NET测试中Mock的使用情况,通过追踪执行路径识别死代码、冗余或可替换的Mock配置,辅助简化测试并减少过度模拟。
审计Mock使用情况
查找未使用或不必要的Mock设置
检查Mock是否必要
减少Mock重复或过度模拟
npx skills add dotnet/skills --skill exp-mock-usage-analysis -g -y
提供.NET 8+中热点标量循环的SIMD向量化优化指南,指导使用Span、TensorPrimitives或底层Intrinsics提升性能。
需要优化C#/.NET中的数值计算循环
寻找高性能数组处理方案
评估代码是否适合SIMD加速
npx skills add dotnet/skills --skill exp-simd-vectorization -g -y
分析 MSBuild 二进制日志以诊断构建失败,支持通过 MCP 服务器或文本回放排查错误、追踪目标执行及多项目级联问题。
MSBuild 构建报错且控制台输出不清晰
需要排查多项目构建中的级联失败
需要追踪 MSBuild 目标执行顺序
npx skills add dotnet/skills --skill binlog-failure-analysis -g -y
指导在 MSBuild 中选择 CopyToOutputDirectory 模式(Never/PreserveNewest/Always/IfDifferent),以优化构建性能并正确处理输出文件变更,避免不必要的每构建复制开销。
询问 MSBuild 文件复制策略
优化 .NET 构建速度
处理构建间文件被修改的问题
配置 Content 或 None 项的复制行为
npx skills add dotnet/skills --skill copy-to-output-directory -g -y
指导在CLI中使用MSBuild Server提升.NET增量构建性能,通过设置环境变量实现缓存。适用于CLI构建慢于IDE或CI频繁构建场景,不适用于IDE环境。
开发者报告命令行增量构建缓慢
CLI构建速度明显慢于IDE构建
CI代理运行大量顺序构建
npx skills add dotnet/skills --skill msbuild-server -g -y
指导开发者正确分析MSBuild构建性能,避免被ResolveProjectReferences的误导性耗时数据干扰。通过引导使用Task自时间定位真实瓶颈,提升构建优化效率。
ResolveProjectReferences在Target Performance Summary中耗时最高
开发者试图直接优化ResolveProjectReferences
npx skills add dotnet/skills --skill resolve-project-references -g -y
将.NET测试项目从xUnit迁移至MSTest v4,自动替换包、特性及断言,保持测试结果一致。
需要将xUnit测试转换为MSTest
询问xUnit到MSTest的代码映射
npx skills add dotnet/skills --skill migrate-xunit-to-mstest -g -y
将.NET测试项目从xUnit.net v2迁移至v3,更新包引用、配置及代码以兼容新版本。
升级xunit到xunit.v3
解决xunit v3编译错误
npx skills add dotnet/skills --skill migrate-xunit-to-xunit-v3 -g -y
为代码测试流水线提供各语言特定的扩展指导文件路径,辅助Agent获取构建、测试命令及框架适配指南。
需要获取特定编程语言的测试执行命令
查询多语言项目的测试框架适配与Mocking规范
npx skills add dotnet/skills --skill code-testing-extensions -g -y
提供跨平台测试过滤语法参考,涵盖VSTest及MTP(MSTest/NUnit/xUnit v3/TUnit)的筛选表达式与翻译规则。作为底层数据被其他Agent调用,支持测试执行时的精准过滤。
需要配置dotnet test过滤条件
进行VSTest到MTP迁移
查询特定框架的测试属性
npx skills add dotnet/skills --skill filter-syntax -g -y
通过静态分析快速识别未测试的源代码文件,无需构建或运行测试。支持C#(Roslyn)及多语言(tree-sitter),生成测试配对映射,辅助确定测试优先级和缺口。
询问哪些文件没有测试
寻找测试缺口列表
确定下一个要测试的文件
验证新测试是否覆盖源文件
npx skills add dotnet/skills --skill find-untested-sources -g -y
检测.NET项目的测试平台(VSTest/MTP)和框架(MSTest/xUnit等),支持SDK风格及经典项目系统。
询问测试平台或框架
判断VSTest还是MTP
分析dotnet test运行器设置
npx skills add dotnet/skills --skill platform-detection -g -y
为.NET解决方案创建符合现有构建约定的最小测试项目,自动关联生产代码并注册到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、文件系统抽象)使依赖环境的行为可测,并编写确定性测试。
需要测试依赖当前时间、随机数或文件系统的C#代码
现有代码无法在不修改全局状态的情况下进行单元测试
npx skills add dotnet/skills --skill testability-obstacle -g -y
解决 .NET 8+ 项目 Native AOT 和裁剪兼容性,通过修复 IL 警告、添加注解等方式消除构建错误。
Make this project AOT-compatible
Fix trimming warnings
Resolve IL2070 / IL2067 / IL2072 / IL2026 / IL3050 warnings
npx skills add dotnet/skills --skill dotnet-aot-compat -g -y
确保 GitHub Actions 工作流 YAML 的语法正确性,解决表达式引用、引号及 actionlint 验证问题,防止因格式错误导致流水线无法启动。
编辑或审查 .github/workflows/ 下的文件
编写包含 ${{ }} 表达式的字段
排查 'workflow file issue' 导致的运行失败
npx skills add dotnet/skills --skill authoring-github-workflows -g -y
指导 .NET 调用 C/C++ 原生库,涵盖 DllImport 与 LibraryImport 声明、类型映射、字符串编组及内存管理。用于编写新接口、审查签名、调试崩溃或内存泄漏等原生互操作问题。
编写新的 P/Invoke 或 LibraryImport 声明
审查或调试现有的原生互操作代码
将 C/C++ 库封装为 .NET 使用
诊断托管与原生边界处的崩溃或内存泄漏
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、LLM集成、RAG及Agent工作流。基于决策树匹配任务类型与合适技术栈,支持结构化数据、文本处理及本地推理等场景。
需要为.NET项目选择AI或机器学习技术方案
实施分类、回归、LLM集成、RAG或Agent功能
npx skills add dotnet/skills --skill technology-selection -g -y
指导将 .NET 8 前的 Blazor Server 应用迁移至 Blazor Web App,涉及项目配置、入口组件及认证状态重构。
Blazor Server 应用升级至 .NET 8+
从 AddServerSideBlazor 迁移到 AddRazorComponents
npx skills add dotnet/skills --skill convert-blazor-server-to-webapp -g -y
指导创建或审查Blazor组件,涵盖参数传递、事件回调、生命周期管理、异步处理及资源释放等核心规范。
创建新的Blazor组件
审查Blazor组件代码架构
npx skills add dotnet/skills --skill author-component -g -y
指导在Blazor中构建表单、验证数据及处理用户输入,涵盖EditForm配置、内置组件绑定、提交处理及SSR与交互模式适配。
需要创建或优化Blazor表单界面
实现数据录入、搜索过滤或文件上传功能
配置表单数据验证逻辑
npx skills add dotnet/skills --skill collect-user-input -g -y
为 Blazor Web App 配置身份认证与授权,涵盖服务注册、路由保护、角色策略及渲染模式适配。
需要添加页面或组件的访问控制
配置登录/登出及用户状态管理
解决认证状态在交互式组件中丢失的问题
npx skills add dotnet/skills --skill configure-auth -g -y
指导 Blazor 组件间共享状态,涵盖同渲染模式下的 CascadingValue、跨模式的 CascadingValueSource 及 Scoped 服务,解决非父子组件数据同步问题。
Blazor 组件间需要共享状态
需要在不同渲染模式间传递数据
实现全局主题或用户偏好设置
npx skills add dotnet/skills --skill coordinate-components -g -y
指导将复杂Blazor UI功能分解为可组合组件,通过映射视觉区域、分类组件及设计数据流,避免单体页面。
构建包含多个部分的复杂Blazor页面
规划多部分仪表板或布局的组件分解
识别父组件与子组件关系及数据流
npx skills add dotnet/skills --skill plan-ui-change -g -y
用于在ASP.NET Core项目中生成CRUD代码、Razor Pages、Blazor组件、MVC控制器及Minimal API端点。支持EF Core集成,无需CLI工具,自动适配现有CSS和编码规范。
需要生成ASP.NET Core CRUD页面或API端点
创建基于Entity Framework的数据库驱动UI组件
为现有模型生成Razor Pages或Blazor组件
npx skills add dotnet/skills --skill create-datadriven-aspnetcore -g -y
用于将Android .NET应用崩溃的tombstone原生堆栈符号化,通过解析BuildId从微软服务器下载调试符号并还原源码行号,辅助排查MAUI/Mono崩溃。
分析Android tombstone崩溃日志
还原.NET MAUI或Mono应用的原生堆栈帧
定位SIGABRT/SIGSEGV等原生信号对应的源码位置
npx skills add dotnet/skills --skill android-tombstone-symbolication -g -y


