Skip to content

feat: add guidelines and coding standards for Kratos Layout Agent#163

Open
shenqidebaozi wants to merge 1 commit intomainfrom
feat/add-agents.md
Open

feat: add guidelines and coding standards for Kratos Layout Agent#163
shenqidebaozi wants to merge 1 commit intomainfrom
feat/add-agents.md

Conversation

@shenqidebaozi
Copy link
Copy Markdown
Member

No description provided.

@dosubot dosubot bot added the size:S This PR changes 10-29 lines, ignoring generated files. label Mar 30, 2026
@shenqidebaozi shenqidebaozi requested a review from Copilot March 31, 2026 02:25
Copy link
Copy Markdown

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

本 PR 新增 Kratos Layout Agent 的工作指南文档,用于约束 AI Agent/开发助手在 Kratos 项目中的代码生成与修改方式,确保分层架构与项目目录布局一致、变更可控。

Changes:

  • 新增 AGENTS.md,定义 AI Agent 在 Kratos 项目中的核心原则与最小变更要求
  • 描述 Kratos 推荐项目布局与各层职责边界(api/cmd/configs/internal/third_party 等)
  • 补充生成代码与配置生成相关的约束(如 make apimake config

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

- 代码风格一致:必须遵守 Go 语言规范,保持代码风格一致,避免引入不必要的依赖或复杂性。

## 项目布局
必需遵守 Kratos 官方推荐的项目布局,顶层目录包含:
Copy link

Copilot AI Mar 31, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

第 14 行的“必需遵守”用词不当,中文文档里通常应写作“必须遵守”。建议统一使用“必须”,避免歧义。

Suggested change
必需遵守 Kratos 官方推荐的项目布局,顶层目录包含:
必须遵守 Kratos 官方推荐的项目布局,顶层目录包含:

Copilot uses AI. Check for mistakes.
- `cmd/`:程序入口,用于生命周期管理,依赖注入初始化,加载配置等,保持简洁,不允许包含业务逻辑。
- `configs/`:配置文件,不允许包含敏感信息,保持结构清晰。
- `internal/`:业务代码(私有),所有业务逻辑、数据访问、服务实现等都放在这里,禁止直接暴露给外部。
- `biz/`:核心业务层,遵守 ** Zero dependencies ** 原则,包含 usecase、domain model(DO) 和 repo 接口定义,不依赖 service 和 data,不使用 proto 结构。
Copy link

Copilot AI Mar 31, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

第 19 行的加粗写法为“** Zero dependencies **”,两侧多余空格会导致 Markdown 渲染不一致。建议改为“Zero dependencies”。

Suggested change
- `biz/`:核心业务层,遵守 ** Zero dependencies ** 原则,包含 usecase、domain model(DO) 和 repo 接口定义,不依赖 service 和 data,不使用 proto 结构。
- `biz/`:核心业务层,遵守 **Zero dependencies** 原则,包含 usecase、domain model(DO) 和 repo 接口定义,不依赖 service 和 data,不使用 proto 结构。

Copilot uses AI. Check for mistakes.
Comment on lines +25 to +27
必须保持该目录结构,不允许随意新增或删除顶层目录,以保证项目的规范性和可维护性。

No newline at end of file
Copy link

Copilot AI Mar 31, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

第 27 行单独出现的“›”看起来是误入的字符,会污染文档内容并可能影响渲染/复制。建议删除该行。

Suggested change
必须保持该目录结构,不允许随意新增或删除顶层目录,以保证项目的规范性和可维护性。
必须保持该目录结构,不允许随意新增或删除顶层目录,以保证项目的规范性和可维护性。

Copilot uses AI. Check for mistakes.
# Kratos Layout Agent 指南

## 目的
本文档用于定义 AI Agent 或开发助手在 Kratos 项目中的工作规范。 确保所有代码符合 Kratos 项目结构,保持清晰的分层架构,提高代码可维护性与一致性。适用于:代码生成、功能开发、重构、API 设计与修改、配置变更、测试与文档
Copy link

Copilot AI Mar 31, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

第 4 行“工作规范。 确保”中句号后存在多余空格,影响排版一致性。建议去掉该空格并按需补充句末标点/分号分隔(例如在最后补“。”或用列表列出“适用于”项)。

Suggested change
本文档用于定义 AI Agent 或开发助手在 Kratos 项目中的工作规范确保所有代码符合 Kratos 项目结构,保持清晰的分层架构,提高代码可维护性与一致性。适用于:代码生成、功能开发、重构、API 设计与修改、配置变更、测试与文档
本文档用于定义 AI Agent 或开发助手在 Kratos 项目中的工作规范确保所有代码符合 Kratos 项目结构,保持清晰的分层架构,提高代码可维护性与一致性。适用于:代码生成、功能开发、重构、API 设计与修改、配置变更、测试与文档

Copilot uses AI. Check for mistakes.
Comment on lines +20 to +23
- `data/`: 数据访问层,包含数据库访问、外部 API 调用等实现,实现 biz 层 repo 接口定义,禁止包含业务逻辑。
- `service/`:接口实现层,包含 gRPC、HTTP 等接口实现,负责请求编排、参数校验、DTO 到 DO 转换。调用 biz 层实现业务逻辑,不允许包含复杂业务逻辑。
- `server/`: HTTP/gRPC 服务器实现,包含路由、服务、中间件注册等,保持简洁,不允许包含业务逻辑。
- `conf/`: 使用 proto 定义的配置结构体,保持与 `configs/` 目录下的配置文件一致,使用 `make config` 命令生成更新。
Copy link

Copilot AI Mar 31, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

第 20、22、23 行的目录说明分隔符使用了半角“:”(例如“data/:”),而第 15-18、24 行使用的是全角“:”。建议统一一种标点(中文文档通常用“:”)以保持格式一致。

Suggested change
- `data/`: 数据访问层,包含数据库访问、外部 API 调用等实现,实现 biz 层 repo 接口定义,禁止包含业务逻辑。
- `service/`:接口实现层,包含 gRPC、HTTP 等接口实现,负责请求编排、参数校验、DTO 到 DO 转换。调用 biz 层实现业务逻辑,不允许包含复杂业务逻辑。
- `server/`: HTTP/gRPC 服务器实现,包含路由、服务、中间件注册等,保持简洁,不允许包含业务逻辑。
- `conf/`: 使用 proto 定义的配置结构体,保持与 `configs/` 目录下的配置文件一致,使用 `make config` 命令生成更新。
- `data/`数据访问层,包含数据库访问、外部 API 调用等实现,实现 biz 层 repo 接口定义,禁止包含业务逻辑。
- `service/`:接口实现层,包含 gRPC、HTTP 等接口实现,负责请求编排、参数校验、DTO 到 DO 转换。调用 biz 层实现业务逻辑,不允许包含复杂业务逻辑。
- `server/`HTTP/gRPC 服务器实现,包含路由、服务、中间件注册等,保持简洁,不允许包含业务逻辑。
- `conf/`使用 proto 定义的配置结构体,保持与 `configs/` 目录下的配置文件一致,使用 `make config` 命令生成更新。

Copilot uses AI. Check for mistakes.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

size:S This PR changes 10-29 lines, ignoring generated files.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants