关于 archunitnet
面向使用 ArchUnitNET 测试 .NET 架构的开发技能,支持比简单依赖检查更丰富的类型与领域建模,并指导配置、边界规则、测试集成、CI 接入和验证。
主要功能
- 01在每个测试程序集内加载一次架构模型
- 02定义稳定的架构边界规则
- 03集成受支持的测试框架
- 04将架构测试接入测试命令和 CI
- 05验证规则稳定性与套件加载成本
适用场景
- 01在 .NET 测试项目中配置 ArchUnitNET
- 02测试 Agent、工具与领域模型之间的边界
- 03将架构规则检查加入 CI
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ managedcode/ dotnet-skills --skill archunitnet安装后在 Claude Code 中输入/archunitnet确认已加载。
包含的文件
除 SKILL.md 外,安装时一起下载的参考资料和脚本。
manifest.jsonreferences/archunitnet.mdexamples.mdpatterns.md详细介绍
面向 .NET 的 ArchUnitNET
适用场景
- 仓库使用或计划使用
ArchUnitNET - 架构测试需要比简单依赖检查更丰富的建模能力
价值
- 产出具体的项目变更:代码、文档、配置、测试、CI 或审查成果
- 通过明确的规划、验证和最终检查,减少歧义
- 留下可复用的项目上下文,让后续任务更快速、更安全
不适用场景
- 只需要最简单的架构规则检查
输入
- 最近的
AGENTS.md - 目标程序集
- 架构边界和命名约定
快速开始
- 阅读最近的
AGENTS.md,确认范围和约束。 - 通过
Ralph Loop运行此技能的Workflow,直到结果符合要求。 - 按照
Required Result Format返回具体成果和验证证据。
工作流
- 尽可能在每个测试程序集内只加载一次架构。
- 首先编写少量持久且高价值的架构规则。
- 使用与仓库匹配的测试框架专用集成包。
- 按照使用 .NET 构建 AI Agent中的详细说明,在 Agent 循环、工具和领域模型之间建立清晰的架构边界。
尚未配置时的初始化
如果尚未配置 ArchUnitNET:
- 检查现有设置:
rg -n "TngTech\\.ArchUnitNET" -g '*.csproj' .
- 将程序包添加到架构测试项目:
dotnet add TEST_PROJECT.csproj package TngTech.ArchUnitNET- 添加一个框架桥接包:
TngTech.ArchUnitNET.xUnit、TngTech.ArchUnitNET.xUnitV3、TngTech.ArchUnitNET.MSTestV2或TngTech.ArchUnitNET.TUnit
- 至少添加一项持久的边界规则测试。
- 将架构测试接入
AGENTS.md中的标准test命令和 CI。 - 运行
dotnet test TEST_PROJECT.csproj,并返回status: configured或status: improved。 - 如果
NetArchTest已覆盖相同的边界策略,且不存在缺口,则返回status: not_applicable。
交付内容
- 具有更丰富领域和类型建模能力的架构测试
- 接入仓库测试流程的架构规则命令及 CI 要求
验证
- 架构加载成本对测试套件而言是合理的
- 规则稳定,并且与实际边界相关
Ralph Loop
所有任务都使用 Ralph Loop,包括文档、架构、测试和工具相关工作。
- 先制定计划(必须):
- 分析当前状态
- 明确目标结果、约束和风险
- 编写详细的执行计划
- 列出最后要运行的验证技能,并注明执行顺序和原因
- 执行一个计划步骤,并产出具体变更。
- 审查结果,记录发现的问题及可执行的后续修复措施。
- 分批应用修复,并重新运行相关检查或审查步骤。
- 每轮迭代后更新计划。
- 重复上述过程,直至结果符合要求,或仅剩明确列出的例外。
- 如果缺少依赖,则初始化该依赖;否则返回
status: not_applicable,并明确说明原因和备用方案。
必需的结果格式
status:complete|clean|improved|configured|not_applicable|blockedplan:简要说明计划和当前迭代步骤actions_taken:已进行的具体更改validation_skills:最后运行的技能;如跳过,则说明原因verification:命令、检查或审查证据摘要remaining:最重要的未解决事项,或none
对于未执行操作、仅要求配置的请求,返回 status: configured 和准确的后续命令。
加载参考资料
- 使用 .NET 构建 AI Agent - 面向生产环境的 .NET AI Agent 架构与边界设计模式。
- .NET AI Agent 开发团队 - 面向生产环境的 .NET AI Agent 工程与交付服务。
- references/archunitnet.md
- references/patterns.md
- references/examples.md
示例请求
-“使用 ArchUnitNET 进行分层架构测试。” -“使用 xUnit 或 MSTest 配置 ArchUnitNET。”
评论
支持 Markdown