实战

用 Claude Code 生成 API 文档:OpenAPI/Swagger 自动化完全指南

用 Claude Code 自动生成 API 文档完整教程:从代码直接生成 OpenAPI 3.0 规范、Swagger UI 配置、Markdown 文档、SDK 代码示例,以及集成到 CI/CD 流水线保持文档同步更新的工作流。

2026/3/153分钟 阅读ClaudeEagle

写 API 文档是开发中最容易被忽视但又最重要的工作。Claude Code 可以从代码直接生成完整的 OpenAPI 规范、Swagger 文档、使用示例,大幅降低文档维护成本。

方式一:从代码生成 OpenAPI YAML

bash
# 在项目目录启动 Claude Code
cd your-api-project
claude

输入:

Read all the API route files in src/routes/ and generate a complete OpenAPI 3.0 specification in YAML format. Include for each endpoint: - HTTP method and path - Summary and description - Request body schema with field descriptions - Response schemas for 200, 400, 401, 404, 500 - Authentication requirements (Bearer token) - Request/response examples Save to docs/openapi.yaml

方式二:从注释生成文档

先让 Claude 给代码加注释,再生成文档:

Step 1: Add JSDoc/docstring comments to all API handlers in src/handlers/ Format for each handler: - @route HTTP_METHOD /path - @summary One-line description - @param {type} name - description - @returns {type} - description - @throws {401} - Unauthorized - @throws {404} - Resource not found Step 2: After commenting, generate OpenAPI YAML from these comments.

典型生成结果

yaml
openapi: 3.0.3
info:
  title: My API
  version: 1.0.0
  description: Auto-generated by Claude Code

paths:
  /users/{id}:
    get:
      summary: Get user by ID
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
      responses:
        '200':
          description: User found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/User'
        '404':
          description: User not found
      security:
        - bearerAuth: []

生成 Markdown 文档

Generate a developer-friendly Markdown API reference from src/routes/. Format: # API Reference ## Authentication ## Endpoints (grouped by resource) ### GET /users **Description**: ... **Request**: (table of params) **Response**: (JSON example) **Example**: curl command Save to docs/API.md

为每个端点生成多语言示例

For each endpoint in docs/openapi.yaml, generate code examples in: 1. curl 2. Python (requests) 3. JavaScript (fetch) 4. TypeScript (axios) Add these examples to the openapi.yaml under each endpoint's x-code-samples field.

自动检测文档和代码是否同步

Compare the current API implementation (src/routes/) with docs/openapi.yaml. List: 1. New endpoints not in docs 2. Removed endpoints still in docs 3. Changed request/response schemas 4. Missing error responses Generate a diff report.

集成到 CI/CD(GitHub Actions)

yaml
# .github/workflows/docs.yml
name: Update API Docs
on:
  push:
    paths: ['src/routes/**', 'src/handlers/**']

jobs:
  update-docs:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
      - run: npm install -g @anthropic-ai/claude-code
      - run: |
          claude -p "Update docs/openapi.yaml to reflect changes in src/routes/. Preserve existing descriptions, only update schemas and paths."
        env:
          ANTHROPIC_API_KEY: ${{ secrets.ANTHROPIC_API_KEY }}
      - name: Commit updated docs
        run: |
          git config user.name 'Docs Bot'
          git config user.email 'docs@ci'
          git add docs/
          git diff --staged --quiet || git commit -m 'docs: auto-update API reference'
          git push

配置 Swagger UI

python
# FastAPI 自动渲染(内置支持)
from fastapi import FastAPI
app = FastAPI(
    title="My API",
    description="Auto-generated docs",
    version="1.0.0"
)
# 访问 /docs 即可看到 Swagger UI
# 访问 /redoc 看到 ReDoc 风格
bash
# 独立 Swagger UI(静态部署)
npx swagger-ui-serve docs/openapi.yaml

三个最佳实践

1. 让 Claude 保留已有描述:更新文档时告诉 Claude preserve existing descriptions,避免把手工写好的描述覆盖掉。

2. 先生成再人工润色:Claude 生成的文档结构正确但描述可能偏技术,人工补充业务背景和使用场景。

3. 和代码一起 Code Review:把文档变更和代码变更放同一个 PR,确保两者同步。


来源:Anthropic 官方文档 + OpenAPI 规范

相关文章推荐

实战Claude Code 自动生成 OpenAPI 文档:从代码到 Swagger UI 一键完成Claude Code 自动生成 OpenAPI(Swagger)文档完整教程:从现有代码逆向生成 OpenAPI 3.1 规范、为 FastAPI/Express/Gin 添加完整的 schema 注释、让 Claude 补全缺失的请求/响应 schema 定义、生成带真实示例值的 Swagger 文档、将 OpenAPI Spec 转为各语言客户端 SDK(openapi-generator)、保持文档与代码同步的 CI/CD 方案,以及从 Postman Collection 迁移到 OpenAPI 的方法。2026/3/20实战用 Claude Code 自动生成技术文档:README、API 文档、架构说明一键搞定Claude Code 自动生成技术文档完整指南:从代码库生成 README、基于源码生成 OpenAPI 文档、Mermaid 架构图、CHANGELOG、贡献指南,以及 Hooks 自动更新文档工作流。2026/3/16实战Claude Code Skills 实战:15 个可直接使用的 SKILL.md 模板(Git/审查/测试/文档/部署/调试)15 个精心设计的开箱即用 SKILL.md 模板:Git 工作流类(Smart Commit/PR Creator/Branch Cleanup);代码审查类(Security Review 含 OWASP 清单/Performance Review N+1 检测);测试类(Test Generator/Coverage Check);文档类(API Doc Generator OpenAPI 格式/Changelog Generator);部署运维类(Pre-deploy Checklist);调试类(Error Analyzer);效率工具类(Code Explainer/Refactor Advisor/Dependency Auditor/Daily Standup Helper)。2026/5/10实战Claude Code 成本优化完整指南:Token 节省策略、模型选择和 Prompt Cache 配置Claude Code 成本优化完整指南:Token 消耗来源分析(对话历史/大文件读取/工具输出/MCP 服务器/长 CLAUDE.md);8 个优化策略(/compact 主动压缩/精确 @ 引用/控制 MCP 数量/模型选择 Haiku vs Sonnet vs Opus 价格对比/努力等级按需调整/Prompt Cache 1 小时 TTL/CLAUDE.md 精简/usage 监控);不同场景的成本估算(个人/小团队/企业);以及订阅 vs API 的临界点分析。2026/5/8实战Claude Code 企业规模化最佳实践:AI 网关、成本控制和可观测性完全指南Claude Code 企业级部署完整指南:原生局限(订阅模式无实时仪表盘/API 密钥散落风险);AI 网关层解决方案(7 个最佳实践:凭证三级层级/预算速率限制/完整请求可观测性/请求元数据标签/多提供商故障转移/输入输出护栏/灵活提供商切换);Portkey 2 分钟配置示例;Enterprise 专属功能(managed-settings/allowManagedDomainsOnly/OpenTelemetry);以及团队 CLAUDE.md 安全策略模板。2026/5/7实战Claude Code 45 个进阶技巧:8.1k Star 的 GitHub 精华整理ykdojo GitHub 仓库(8100+ Stars)45 个 Claude Code 实战技巧精华整理:自定义状态栏显示 Token 消耗;Git CLI 配合自动创建 PR;Gemini CLI 作为助手处理被限制的搜索;/compact 带焦点提示词保留关键信息;Fork 会话和半克隆技术;容器安全运行高风险任务;CLAUDE.md vs Skills vs Slash Commands vs Plugins 的区别;/loop 定期轮询;以及 dx 插件安装。2026/5/6