1. 基本信息
| 项目 | 内容 | 数据来源 |
|---|---|---|
| 名称 | dotnet-template-engine(所属仓库自述名称为 “.NET Agent Skills”,与正式名称不一致,故单列记录) | GitHub API / 仓库 README |
| 作者/维护者 | Microsoft(dotnet/skills 官方仓库,.NET 团队维护;第三方目录 AgenticSkills 标注发布方为 .NET Foundation) |
GitHub API / 第三方目录 |
| 来源链接 | https://github.com/dotnet/skills/tree/main/plugins/dotnet-template-engine | — |
| 许可证 | MIT License | GitHub API |
| GitHub Stars / Forks | 所属仓库 4893★ / 361 forks(注:该数字属整个技能合集,不代表本插件个体热度,仅供了解所属仓库规模) | GitHub API |
| 最新版本 | 插件自带 version.json / plugin.json,当前版本号 0.1.0;插件目录近期仍有功能性提交(2026-07-20) |
仓库文件 / commit 历史 |
| 安装方式 | Claude Code / Codex CLI 插件市场一条命令安装(见第 10 章) | 仓库 README |
2. 功能介绍与亮点
dotnet-template-engine 是微软 .NET 团队官方出品的插件,属于 dotnet/skills 技能合集,围绕 dotnet new 模板系统打包 6 个细粒度技能,并附带一个独立的编排 agent:
- 模板发现与比较:
template-discovery把自然语言描述(如“我要一个带鉴权的 Web API”)映射到具体模板短名及预填参数;template-comparison在候选模板之间做详细的逐项对比 - 项目创建:
template-instantiation用校验过的参数创建项目,自动检测工作区是否启用了 Central Package Management(CPM)并把模板生成的内联包版本迁移到Directory.Packages.props、支持多项目解决方案(API+测试+类库)一次性组装、并能查询 NuGet 上的最新包版本 - 参数决策:
template-smart-defaults处理跨参数的隐含默认值(例如选了 native AOT 就该配对较新的目标框架;开启鉴权就不能同时关闭 HTTPS) - 自定义模板:
template-authoring指导编写自定义模板,template-validation校验template.json是否存在错误、诊断“装了但搜不到”的问题、检查 shortName 与 dotnet CLI 命令冲突 - 配套一个
template-engine编排 agent,先判断请求是否属于模板域,再路由到对应的具体技能
亮点:.NET 团队公开了一套跨模型交叉评测机制(Vally 框架,5 个模型家族 × 判定者与执行者不同源),把“装了该技能”与“未装的基线”逐一对比打分。本插件中 template-instantiation 是评测结果最扎实的技能——在 5 个模型家族中有 4 个(GPT、Sonnet、Haiku、MAI Flash)明确验证为“稳定的多数胜出”,且损失/平局都集中在唯一未通过的模型上,通过的判定干净利落;其余 5 个技能被官方自评为“边际/混合效果,需加强”。这种连自家技能效果不理想都公开承认的评测透明度,在同类项目里少见,本身就是产品成熟度的信号。微软 .NET 官方博客与 Visual Studio 官方博客均发文介绍 dotnet/skills 项目并将 Claude Code 列为受支持平台之一。
3. 适用场景
固定分类:工程效率与代码质量(围绕“创建/校验代码工程”本身,符合技术栈脚手架工具的判定;用 --neighbors "模板 脚手架 项目创建 dotnet new" 核对同仓库姊妹插件 dotnet-aspnetcore/dotnet-test/dotnet-maui/dotnet-msbuild 均归此类,判定一致)
- 需要新建 .NET 项目或多项目解决方案(如 Web API + 测试项目 + 类库),又希望生成结果自动匹配团队既有工程规范(Central Package Management、目标框架版本)的开发者
- 记不清具体模板名称、想用自然语言描述需求让 agent 找到并比较合适模板的用户
- 需要为团队编写、校验自定义
dotnet new模板包的平台/基建工程师 - 遇到“模板包装了但
dotnet new搜不到”“模板参数配置报错”等疑难问题需要诊断的开发者
4. 跨 Agent 兼容性
- Claude Code:原生支持——插件目录自带
.claude-plugin清单,/plugin marketplace add dotnet/skills后/plugin install dotnet-template-engine@dotnet-agent-skills一条命令安装;官方 .NET 博客明确将 Claude Code 列为受支持平台 - Codex:原生支持——插件目录自带
.codex-plugin/plugin.json清单,仓库 README 专辟 “Codex CLI” 章节给出对应安装命令,且技能遵循 agentskills.io 开放标准 - OpenClaw:未验证——官方材料未提及,但技能遵循开放的 SKILL.md 目录结构,理论上可手动复制接入
- Hermes Agent:未验证——同上,官方材料未提及
(仅基于已抓取材料判断,未为兼容性单独发起搜索)
5. 推荐理由
新建 .NET 项目看似是 dotnet new 一条命令的事,但真实团队协作场景里还要操心目标框架是否与仓库其他项目一致、包版本要不要收编进 Central Package Management、模板默认值会不会跟已选的其他参数打架——这些细节手工操作很容易漏。这套技能由 .NET 团队官方出品,把“找模板→比较→创建(含 CPM 自动迁移与多项目组装)→参数默认值决策→自定义模板编写与校验”整条链路打包,且配一个编排 agent 先判断请求是否属于模板域再分发给具体技能,避免 agent 用错工具。更难得的是,其核心创建技能经过官方跨模型交叉评测,明确验证在多个模型家族上稳定优于不装技能的基线表现——不是“官方说好用”,而是有可复核的对比数据撑着。对经常要为团队拉起新项目、又希望产出一致遵守既有工程规范的 .NET 开发者,这比手写命令再手动调整省心不少。
6. 评分
| 维度 | 分数 | 说明 |
|---|---|---|
| 受欢迎程度 | 7 | 微软 .NET 团队官方出品;所属仓库整体 stars 不计入个体评分,但官方 .NET 博客与 Visual Studio 官方博客均专文介绍 dotnet/skills 项目并点名 Claude Code 为受支持平台,第三方技能目录 AgenticSkills 单独收录本插件并标注 “A-rank” 质量等级、多平台支持 |
| 可用性 | 8 | Claude Code / Codex 均一条命令安装;6 个 SKILL.md 均写清“适用/不适用场景”并互相路由;核心创建技能经官方跨模型评测验证为多数模型家族上的稳定胜出;但同一评测显示其余 5 个技能效果边际、官方自评仍需加强,插件整体尚在打磨中 |
| 安全性 | 9 | 见下方安全检查清单 |
| 综合评分 | 8.67 | 三项均值 |
安全检查清单:
| 检查项 | 结果 |
|---|---|
| ① Shell 命令执行 | 有——引导执行 dotnet new/dotnet build/dotnet sln add/dotnet new install 等本地 CLI 命令创建、校验与管理项目模板,范围限于本地 .NET 项目脚手架操作,用途明确可解释 |
| ② 运行时联网外发 | 部分技能会查询 NuGet.org 公开只读接口获取包的最新稳定版本号,不涉及向第三方发送项目代码或凭据 |
| ③ API key/凭据 | 不需要——纯本地模板操作,不要求配置任何密钥 |
| ④ 可疑指令 | 未见——审阅 template-instantiation 全文及其余技能描述,未发现越权指令或 prompt injection 迹象 |
| ⑤ 作者/组织信誉 | 微软官方 .NET 团队(dotnet 官方组织账号) |
| ⑥ License | MIT,清晰明确 |
| ⑦ 维护时间 | 插件目录近期仍有功能性提交(2026-07-20,据跨模型评测结果强化技能表述),维护活跃 |
7. 跟同类 Skills 相比的优势
| 项目 | 定位 | 差异点 |
|---|---|---|
| dotnet-template-engine(本推荐) | 微软官方:模板发现、比较、创建(含 CPM 自动迁移与多项目组装)、参数默认值决策、自定义模板编写与校验一体化 | 覆盖模板全生命周期且核心技能经官方跨模型量化评测验证效果,而非仅凭描述自证 |
| dotnet-msbuild(同仓库姊妹插件) | 微软官方:MSBuild 构建失败诊断、性能瓶颈定位、项目文件反模式审查 | 聚焦“项目已存在、构建出了问题”这一阶段,不涉及新建项目或模板管理,与本技能覆盖的阶段互补 |
| dotnet-aspnetcore(同仓库姊妹插件) | 微软官方:ASP.NET Core 中间件、端点、实时通信等 Web 开发模式 | 聚焦项目创建之后的具体业务代码编写模式,不涉及项目脚手架本身 |
dotnet new CLI 原生命令(非 agent 技能) |
.NET SDK 内置的模板实例化命令 | 需要开发者自己记住模板短名和参数含义,不会主动检测工作区的 CPM/框架一致性、不会在参数互相冲突时给出提示,属于本技能背后调用的底层命令而非等价替代 |
差异化总结:以上均围绕 .NET 项目工程化,dotnet-template-engine 的特点是把模板“找—比—建—定默认值—编—验”整条链路打包为一体化技能集,且创建环节会主动感知工作区既有规范(CPM、目标框架)而不是机械套用模板默认值;dotnet-msbuild、dotnet-aspnetcore 分别聚焦构建诊断与 Web 开发模式,服务的是项目创建之后的阶段;原生 dotnet new 命令则是本技能包装的底层能力,本身不具备智能路由与规范感知。
8. 用户评价
.NET 官方博客与 Visual Studio 官方博客均发文介绍 dotnet/skills 项目整体设计,将 Claude Code、Codex CLI、VS Code 等列为受支持平台;第三方 AI 技能目录站 AgenticSkills 为本插件单独建立了收录页面,标注发布方为 .NET Foundation、给出 “A-rank” 质量评级并列出多平台支持情况。目前该插件本身尚无第三方开发者的具名使用评价。
9. 其他补充
dotnet/skills 仓库还包含另外 14 个插件,覆盖 .NET 测试、版本升级迁移、ASP.NET Core Web 开发、Blazor、MAUI、MSBuild 构建诊断、AI/ML 集成、EF Core 数据访问等场景,可按需单独安装,不必整包引入。仓库首页附带一个持续更新的效果评测看板(dotnet.github.io/skills),按插件分别追踪“装了该技能 vs 未装”的任务质量对比数据。
10. 安装使用方式
- Claude Code:
/plugin marketplace add dotnet/skills,再执行/plugin install dotnet-template-engine@dotnet-agent-skills,安装后重启会话以加载新插件 - Codex CLI:
codex plugin marketplace add dotnet/skills,进入插件面板浏览dotnet-agent-skills标签页安装 - 单个技能安装:可只复制
plugins/dotnet-template-engine/skills/<skill-name>下某一具体技能目录(如仅要template-instantiation)而不装整个插件 - 手动方式:clone 仓库后把
plugins/dotnet-template-engine子目录复制到自己项目的技能目录
11. 注意事项
- 插件内 6 个技能里,官方跨模型评测显示仅
template-instantiation有稳定验证的多数胜出,其余 5 个(template-discovery、template-comparison、template-smart-defaults、template-authoring、template-validation)官方自评为“边际/混合效果”,实际体验可能因所用模型而有差异 - 与 OpenClaw、Hermes Agent 的兼容性未经官方材料验证,实际效果建议自行测试
- 插件目前无独立语义化版本号体系,长期跟踪更新时建议以 commit 历史为准
- 涉及 NuGet 最新版本查询的功能需要本机能访问 NuGet.org,离线环境下该部分能力会受限