mcpField
O
openapi-to-application-code

openapi-to-application-code

github.com/github开发40.5k9.5k 次安装1 天前更新
代码仓库

关于 openapi-to-application-code

根据 OpenAPI 规范生成完整应用代码的开发技能,适用于需要从 API 定义创建项目的开发者。它涵盖规范分析、分层架构、代码与测试生成,以及文档和配置文件。

主要功能

  1. 01分析端点、数据模型与安全方案
  2. 02生成项目结构、控制器和服务层
  3. 03生成模型、数据访问层和配置
  4. 04添加测试、文档及示例请求

适用场景

  1. 01从 OpenAPI 规范创建应用骨架
  2. 02为已有 API 定义生成控制器和模型
  3. 03补齐测试、运行说明与示例请求

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/github/awesome-copilot --skill openapi-to-application-code

安装后在 Claude Code 中输入/openapi-to-application-code确认已加载。

详细介绍

根据 OpenAPI 规范生成应用

你的目标是使用当前框架的约定和最佳实践,根据 OpenAPI 规范生成一个完整、可运行的应用。

输入要求

  1. OpenAPI 规范:提供以下任一内容:

    • OpenAPI 规范的 URL(例如 https://api.example.com/openapi.json)
    • OpenAPI 规范的本地文件路径
    • 直接粘贴完整的 OpenAPI 规范内容
  2. 项目详情(如果规范中未包含):

    • 项目名称和描述
    • 目标框架和版本
    • 包/命名空间命名约定
    • 身份验证方法(如果 OpenAPI 中未指定)

生成流程

第 1 步:分析 OpenAPI 规范
  • 验证 OpenAPI 规范的完整性和正确性
  • 识别所有端点、HTTP 方法、请求/响应 schema
  • 提取身份验证要求和安全方案
  • 记录数据模型关系和约束
  • 标记任何歧义或不完整的定义
第 2 步:设计应用架构
  • 规划适合该框架的目录结构
  • 按资源或领域识别 controller/handler 分组
  • 为业务逻辑设计服务层组织
  • 规划数据模型和实体关系
  • 设计配置和初始化策略
第 3 步:生成应用代码
  • 创建项目结构以及构建/包配置文件
  • 根据 OpenAPI schema 生成 models/DTO
  • 生成带路由映射的 controllers/handlers
  • 生成带业务逻辑的服务层
  • 如适用,生成 repository/数据访问层
  • 添加错误处理、验证和日志记录
  • 生成配置和启动代码
第 4 步:添加支持文件
  • 为服务和 controllers 生成适当的单元测试
  • 创建包含设置和运行说明的 README
  • 添加 .gitignore 和环境配置模板
  • 生成 API 文档文件
  • 创建示例请求/集成测试

输出结构

生成的应用将包含:

project-name/
├── README.md                      # Setup and usage instructions
├── [build-config]                 # Framework-specific build files (pom.xml, build.gradle, package.json, etc.)
├── src/
│   ├── main/
│   │   ├── [language]/
│   │   │   ├── controllers/       # HTTP endpoint handlers
│   │   │   ├── services/          # Business logic
│   │   │   ├── models/            # Data models and DTOs
│   │   │   ├── repositories/      # Data access (if applicable)
│   │   │   └── config/            # Application configuration
│   │   └── resources/             # Configuration files
│   └── test/
│       ├── [language]/
│       │   ├── controllers/       # Controller tests
│       │   └── services/          # Service tests
│       └── resources/             # Test configuration
├── .gitignore
├── .env.example                   # Environment variables template
└── docker-compose.yml             # Optional: Docker setup (if applicable)

应用的最佳实践

  • 框架约定:遵循框架特定的命名、结构和模式
  • 关注点分离:通过 controllers、服务和 repositories 实现清晰分层
  • 错误处理:全面的错误处理并提供有意义的响应
  • 验证:全程进行输入验证和 schema 验证
  • 日志记录:用于调试和监控的结构化日志记录
  • 测试:为服务和 controllers 编写单元测试
  • 文档:内联代码文档和设置说明
  • 安全:根据 OpenAPI 规范实现身份验证/授权
  • 可扩展性:设计模式支持增长和维护

后续步骤

生成后:

  1. 检查生成的代码结构,并按需进行自定义
  2. 根据框架要求安装依赖项
  3. 配置环境变量和数据库连接
  4. 运行测试以验证生成的代码
  5. 启动开发服务器
  6. 使用提供的示例测试端点

如有需要应询问的问题

  • 应用是否应包含数据库/ORM 设置,还是仅使用内存/模拟数据?
  • 你是否需要用于容器化的 Docker 配置?
  • 身份验证应使用 JWT、OAuth2、API keys,还是 basic auth?
  • 你需要集成测试,还是仅需要单元测试?
  • 是否有特定的数据库技术偏好?
  • API 是否应包含分页、过滤和排序示例?

评论

支持 Markdown