在API文档的生成过程中,开发人员常常面临一个棘手的选择:手动编写既耗时又容易出错,而Swagger注解则可能遗漏或格式不统一。Qoder提供了五种自动化生成路径,涵盖从单文件快速输出到全链路协同构建的完整应用场景。下面逐一解析,帮助您找到最适合项目需求的方案。

使用 Skill 快速生成 OpenAPI 3.0 文档
对于存量项目,特别是控制器已经编写完成但文档仍为空白的场景,这种方法的性价比非常突出。核心思路是:无需修改任何代码,直接依赖预定义的Skill自动解析路由和注解。
具体操作分为几步:首先,确保项目根目录下存在标准的WebAPI控制器路径,例如 controllers/ 或 src/main/ja va/com/example/controller/。接着,在Qoder编辑器中打开任意一个控制器文件,比如UserController.ja va或user.controller.ts。然后,在侧边聊天面板输入指令:为这个API生成文档。
确认模型调用的是 api-doc-generator Skill后,等待其完成解析。这里有一个关键细节:系统会自动解析@PostMapping、@RequestBody、@ApiResponse这类元信息,但如果控制器未标注HTTP方法或参数类型,生成的文档将缺失请求体结构。因此,请提前补充基础注解。最终生成的结果包含openapi.json文件和配套的Markdown文档,自动保存到项目 ./docs/api/ 目录。
通过 Quest Mode 全流程构建 Swagger 文档
当团队需要同步更新代码与文档时,Quest Mode提供了更贴心的解决方案。Agent会主动校验注解完整性、补全缺失字段,并输出可直接部署的静态资源,非常适合协作开发场景。
第一步:点击顶部导航栏的 Quest 视图,新建一个任务,命名为 Generate Swagger Docs。第二步:在任务输入框中描述需求:基于当前项目生成完整 Swagger 文档,支持本地预览,并输出 YAML 和 HTML 两种格式。
第三步:等待Agent自动识别技术栈——Spring Boot、.NET Core、Express.js等均可覆盖。但需要注意:如果项目使用了非标准路由注册方式,例如动态注册Bean,Agent可能无法捕获所有端点。此时需在描述中追加说明:“请扫描所有 @Bean 注册的 RequestMappingHandlerMapping 实例”。
第四步:Agent会依次执行扫描路由定义、提取@Api、@ApiOperation等注解、推断请求体与响应体结构、生成openapi.yaml,最后构建Swagger UI页面。第五步:在右侧面板的Preview Tab中点击 Open in Browser,即可查看实时渲染效果。
用 CLI 批量生成并注入配置
如果项目已接入CI/CD流水线,CLI方式是最佳选择。它可以通过命令行一次性处理多个模块,支持自定义输出路径和模板变量注入。这里提供三种常见用法:
方法一:基础批量生成。执行命令:qoder-cli doc:generate --src ./src/controllers --output ./docs/swagger --format yaml。
方法二:注入环境配置。在项目根目录创建.qoder/config.yaml,写入base-url: https://api.example.com/v1,然后运行qoder-cli doc:generate --inject-config .qoder/config.yaml。
方法三:跳过特定包路径。添加--exclude "test.*"参数,可忽略测试控制器,避免生成冗余接口条目。
用 Rule 文件定制文档风格
当团队有严格的文档规范时,例如必须包含“业务影响等级”字段,或禁用某些HTTP状态码描述,Rule文件可以强制统一输出格式。操作很简单:在项目.qoder/rules/目录下新建一个api-style.rule.yaml文件,写入字段级规则,比如response.status-codes: [200, 400, 401, 403, 404, 500],表示仅允许这六种状态码出现在文档中。然后启用规则:qoder-cli doc:generate --rule .qoder/rules/api-style.rule.yaml。
需要特别注意的是,Rule文件中定义的required-fields,如果代码中缺少对应的注解,CLI会报错中断,而非静默忽略。因此必须确保所有控制器类上存在@Api(tags = ["用户"])类型的声明。
同步 Repo Wiki 更新变更日志
最后一种方式将文档生成与代码演进紧密绑定。每次Git提交后,系统会自动触发差异分析,仅更新变动接口的描述和示例,非常智能。第一步:在Qoder IDE中右键项目根目录,选择Enable Repo Wiki Sync。首次运行时,Qoder会扫描全部历史提交,建立接口签名快照库。
后续每次git push后,系统会自动比对新旧commit的AST差异,识别出新增、删除或参数变更的端点。变更日志以Markdown表格形式追加到./docs/CHANGELOG.md中,包含“接口路径|变更类型|影响范围|示例请求片段”五列信息。如果某次提交仅修改了内部Service层逻辑,而未触碰Controller,Repo Wiki不会生成任何日志条目——它只跟踪暴露给外部的契约层变动。
总结来说,这五种路径覆盖了从单文件快速输出到全链路协同构建的完整应用场景。您可以根据项目所处阶段、团队协作方式以及文档规范要求,灵活选择最合适的方案。
