SKILL.md
readonly只读
name
openapi-to-application-code
description
根据 OpenAPI 规范生成一个完整、可直接上线的应用程序
从 OpenAPI 规范生成应用程序
你的目标是根据 OpenAPI 规范,使用当前框架的约定和最佳实践,生成一个完整、可运行的应用程序。
输入要求
-
OpenAPI 规范:提供以下任一形式:
- OpenAPI 规范的 URL(例如
https://api.example.com/openapi.json) - OpenAPI 规范的本地文件路径
- 直接粘贴完整的 OpenAPI 规范内容
- OpenAPI 规范的 URL(例如
-
项目详情(如果规范中未包含):
- 项目名称和描述
- 目标框架及版本
- 包/命名空间命名约定
- 认证方式(如果 OpenAPI 中未指定)
生成过程
步骤 1:分析 OpenAPI 规范
- 验证 OpenAPI 规范的完整性和正确性
- 识别所有端点、HTTP 方法、请求/响应模式
- 提取认证要求和安全方案
- 注意数据模型之间的关系和约束
- 标记任何歧义或不完整的定义
步骤 2:设计应用程序架构
- 规划适合框架的目录结构
- 按资源或领域对控制器/处理器进行分组
- 设计服务层组织以处理业务逻辑
- 规划数据模型和实体关系
- 设计配置和初始化策略
步骤 3:生成应用程序代码
- 创建项目结构,包含构建/包配置文件
- 从 OpenAPI 模式生成模型/DTO
- 生成带有路由映射的控制器/处理器
- 生成带有业务逻辑的服务层
- 生成仓库/数据访问层(如适用)
- 添加错误处理、验证和日志记录
- 生成配置和启动代码
步骤 4:添加支持文件
- 为服务和控制器生成适当的单元测试
- 创建包含设置和运行说明的 README
- 添加 .gitignore 和环境配置模板
- 生成 API 文档文件
- 创建示例请求/集成测试
输出结构
生成的应用程序将包含:
project-name/
├── README.md # 设置和使用说明
├── [build-config] # 框架特定的构建文件(pom.xml、build.gradle、package.json 等)
├── src/
│ ├── main/
│ │ ├── [language]/
│ │ │ ├── controllers/ # HTTP 端点处理器
│ │ │ ├── services/ # 业务逻辑
│ │ │ ├── models/ # 数据模型和 DTO
│ │ │ ├── repositories/ # 数据访问(如适用)
│ │ │ └── config/ # 应用程序配置
│ │ └── resources/ # 配置文件
│ └── test/
│ ├── [language]/
│ │ ├── controllers/ # 控制器测试
│ │ └── services/ # 服务测试
│ └── resources/ # 测试配置
├── .gitignore
├── .env.example # 环境变量模板
└── docker-compose.yml # 可选:Docker 设置(如适用)
应用的最佳实践
- 框架约定:遵循框架特定的命名、结构和模式
- 关注点分离:清晰的控制器、服务和仓库分层
- 错误处理:全面的错误处理,返回有意义的响应
- 验证:全程输入验证和模式验证
- 日志记录:结构化日志,便于调试和监控
- 测试:服务和控制器的单元测试
- 文档:内联代码文档和设置说明
- 安全性:根据 OpenAPI 规范实现认证/授权
- 可扩展性:设计模式支持增长和维护
后续步骤
生成后:
- 审查生成的代码结构,并根据需要进行自定义
- 根据框架要求安装依赖
- 配置环境变量和数据库连接
- 运行测试以验证生成的代码
- 启动开发服务器
- 使用提供的示例测试端点
需要时可询问的问题
- 应用程序是否应包含数据库/ORM 设置,还是仅使用内存/模拟数据?
- 是否需要 Docker 配置以实现容器化?
- 认证方式应为 JWT、OAuth2、API 密钥还是基本认证?
- 需要集成测试还是仅单元测试?
- 是否有特定的数据库技术偏好?
- API 是否应包含分页、过滤和排序示例?






