Awesome-agent-skills api-doc-generator
Generate API documentation from source code, supporting REST APIs, GraphQL, and various documentation formats.
install
source · Clone the upstream repo
git clone https://github.com/JackyST0/awesome-agent-skills
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/JackyST0/awesome-agent-skills "$T" && mkdir -p ~/.claude/skills && cp -r "$T/examples/api-doc-generator" ~/.claude/skills/jackyst0-awesome-agent-skills-api-doc-generator && rm -rf "$T"
manifest:
examples/api-doc-generator/SKILL.mdsource content
API Doc Generator
根据代码生成 API 文档,支持 REST API、GraphQL 及多种文档格式。
Generate API documentation from source code, supporting REST APIs, GraphQL, and various documentation formats.
When to Use
当用户请求以下操作时使用此 skill:
- 生成 API 文档 / Generate API documentation
- 创建接口文档 / Create interface documentation
- 编写 API 说明 / Write API descriptions
- 生成 OpenAPI/Swagger 规范 / Generate OpenAPI/Swagger specs
Instructions
分析步骤 / Analysis Steps
- 识别 API 类型 - REST、GraphQL、RPC 等
- 提取端点信息 - URL、方法、参数
- 分析数据结构 - 请求/响应格式
- 识别认证方式 - API Key、OAuth、JWT 等
- 生成文档 - 按照标准格式输出
文档内容 / Documentation Content
每个 API 端点应包含:
- 端点路径 - URL 和 HTTP 方法
- 描述 - 功能说明
- 参数 - 路径参数、查询参数、请求体
- 响应 - 成功和错误响应示例
- 认证 - 认证要求
输出格式 / Output Formats
支持以下文档格式:
- Markdown(默认)- 使用
模板templates/api-doc.md - OpenAPI 3.0 YAML
- API Blueprint
Use
templates/api-doc.md for Markdown output format.
标准模板 / Standard Template
## API 文档 / API Documentation ### 端点概览 / Endpoint Overview | 方法 | 路径 | 描述 | |------|------|------| | GET | /api/resource | 获取资源列表 | ### 详细说明 / Details #### [方法] /path **描述**: ... **请求参数**: | 参数 | 类型 | 必需 | 描述 | |------|------|------|------| **请求示例**: ```json {}
响应示例:
{}
## Examples ### 输入 / Input ```python from fastapi import FastAPI, HTTPException from pydantic import BaseModel app = FastAPI() class User(BaseModel): id: int name: str email: str @app.get("/users/{user_id}") async def get_user(user_id: int) -> User: """Get a user by ID.""" if user_id <= 0: raise HTTPException(status_code=404, detail="User not found") return User(id=user_id, name="John", email="john@example.com") @app.post("/users") async def create_user(user: User) -> User: """Create a new user.""" return user
输出 / Output
API 文档
端点概览
| 方法 | 路径 | 描述 |
|---|---|---|
| GET | /users/{user_id} | 根据 ID 获取用户信息 |
| POST | /users | 创建新用户 |
GET /users/{user_id}
描述: 根据用户 ID 获取用户信息
路径参数:
| 参数 | 类型 | 必需 | 描述 |
|---|---|---|---|
| user_id | integer | ✅ | 用户唯一标识符 |
响应 200 - 成功:
{ "id": 1, "name": "John", "email": "john@example.com" }
响应 404 - 未找到:
{ "detail": "User not found" }
POST /users
描述: 创建新用户
请求体:
| 字段 | 类型 | 必需 | 描述 |
|---|---|---|---|
| id | integer | ✅ | 用户 ID |
| name | string | ✅ | 用户姓名 |
| string | ✅ | 用户邮箱 |
请求示例:
{ "id": 1, "name": "John", "email": "john@example.com" }
响应 200 - 成功:
{ "id": 1, "name": "John", "email": "john@example.com" }