开发与工程 javamavenbackend-architectureclean-architecturecode-placementspring-bootcode-review

SkillHub 后端模块结构规范

为 SkillHub 后端 Java 多模块 Maven 项目提供模块划分与依赖方向的编码规范。

FollowSkills 评估 · FSRS-2.0
不推荐
52/ 100 五分制 2.6 / 5
1 2 3 4 5 6
1信任安全15 / 25 · 3.0/5

技能本身是代码放置规则,不涉及权限或敏感数据处理,但要求 agent 在放置代码前遵守依赖方向,可能涉及对现有代码的修改。证据显示技能明确指出现有依赖方向偏差且建议新代码避免,体现了数据流透明性。扣分原因:缺少明确的用户确认机制,且技能可能被用于修改关键代码,但未提供回滚或隔离措施。

2可靠稳定7 / 20 · 1.8/5

技能自洽,提供了明确的放置规则和模块表,但未提供自检或测试。扣分原因:未提供任何测试或验证方法,边缘情况和错误处理未提及,如规则冲突时的处理。

3适用触发12 / 15 · 4.0/5

技能适用场景清晰,针对 Java 后端代码放置。扣分原因:未提供非适用范围的边界声明,触发条件仅基于关键词,可能被误触发。环境适配良好,全面支持中文,且不依赖海外服务。

4规范维护10 / 15 · 3.3/5

技能结构清晰,包含触发条件、规则、模块表,且提供已知偏差说明。扣分原因:缺少参数稳定性、版本更新历史和维护责任的明确说明,依赖文档分散在 README 中。

5有效结果5 / 15 · 1.7/5

技能目标明确,即帮助 agent 正确放置代码。扣分原因:技能输出为规则遵守,无法直接验证其完成度,且静态评估无法确认实际效果。

6证据核验3 / 10 · 1.5/5

证据类型有限,技能本身未提供测试或可验证的执行记录。扣分原因:静态审查无法执行验证,仓库中其他文件如测试脚本与技能核心不直接相关,且无第三方执行证据。

证据充分度: 评估于 2026年8月7日 审查版本 6e133c006e49
上游仓库在本次评估后已有新提交;当前评分仍对应所示审查版本,可能尚未覆盖最新改动。
使用前请注意
  • 技能基于静态审查,未经实际执行验证,适用性需谨慎。
  • 技能描述的现有依赖偏差可能变化,实际代码结构需以最新代码为准。
  • 触发条件基于关键词,可能被误触发, agent 应结合上下文判断。
查看完整评分方法 →

这个 Skill 能做什么,适合哪些场景?

该技能定义了一套规则,帮助 AI 代理在 SkillHub 后端(Spring Boot 3.2.3,Java 21)中添加或修改代码时,将代码放入正确的 Maven 模块和 Java 包。它明确了依赖方向(如 app 依赖 domain,infra 实现 domain 接口)以及各模块的职责(领域、基础设施、应用等)。该技能同时指出了当前领域层对存储模块的依赖偏离,并提供了避免进一步偏离的指导。它还包含构建测试的最佳实践和用户身份类型的约定。

读取代码结构并识别模块边界。它将代码类型映射到正确的模块和 Java 包(例如实体、仓库接口、领域服务→domain;控制器、应用服务、查询仓库→app;JPA实现→infra)。该技能强制依赖方向(app→domain,infra→domain等),并提醒领域层不能新增对基础设施模块的依赖。它规定了使用 Make 目标(而非直接使用 Maven)运行后端测试,并强调所有用户身份字段均为字符串类型。

  1. 为 SkillHub 后端新增一个 Entity 或 Value Object 时,遵循正确包路径(com.iflytek.skillhub.domain.{submodule}/)
  2. 新增 REST API 控制器或应用服务时,确保放置于 skillhub-app 模块和 com.iflytek.skillhub.controller/ 包下
  3. 在基础设施层实现 JPA 仓库接口时,确认模块为 skillhub-infra 且包位于 com.iflytek.skillhub.infra.repository/
  4. 开发后端功能后,运行 make test-backend-app 或 make test-backend 以避免直接执行 Maven 命令导致的陈旧构建问题
  5. 审查现有后端代码时,检查模块依赖是否违反设计文档中的依赖方向

这个 Skill 有哪些优点和局限?

优点
  • 为代码放置提供了清晰、可操作的规则,减少架构漂移
  • 识别了现有领域层对存储依赖的偏离,并给出避免进一步偏离的指导
  • 包含了高效的测试构建指令,避免常见的 Maven 陈旧产物问题
  • 为实体、仓库、控制器等各类代码类型提供了明确的包路径映射
局限
  • 仅针对 SkillHub 后端,对其他项目需定制模块和包结构
  • 未提供自动化检查,仅依赖代理遵循规则
  • 未提及对技能的测试或验证
  • 领域依赖偏离是已知的技术债,新代码无法自动修正

如何安装这个 Skill?

此技能已作为 SkillHub 仓库的一部分提供,路径为 .agents/skills/backend-module-structure/SKILL.md。若需在 Claude Code 中使用,将技能目录复制到您项目的 .claude/skills/ 目录。

如何使用这个 Skill?

触发场景包括:添加或修改 Java 后端代码、创建新服务、控制器、仓库或实体,跨文件重构,或审查代码放置。根据技能的表格将代码放入正确的模块和包。遵循依赖方向规则,避免在领域层添加新的跨模块依赖。运行测试时使用 make test-backend-app(针对 app 模块)或 make test-backend(针对所有后端模块),而不要直接执行 ./mvnw -pl skillhub-app clean test。

常见问题

此技能是否适用于其他 Spring Boot 项目?
不建议。它专门针对 SkillHub 的模块和包结构。其他项目需要定制模块和包的映射。
如何运行后端测试?
使用 make test-backend-app(针对 app 模块及其依赖)或 make test-backend(所有后端模块)。不要直接运行 ./mvnw -pl skillhub-app clean test,因为可能使用本地 Maven 仓库的陈旧产物。
领域层依赖存储模块是否被允许?
这是已知的偏离。新代码应避免在领域层添加新的跨模块依赖。

同仓库的其他 Skills

均来自 iflytek/skillhub

相关 Skills