api-documentation-generator ناجح

Generates OpenAPI/Swagger documentation from API route files. Use when working with REST APIs, Express routes, FastAPI endpoints, or when user requests API documentation.

59من ١٠٠
١٥٤
نجوم
١٠٠
تنزيلات
١٧٧
مشاهدات

// تثبيت المهارة

تثبيت المهارة

المهارات هي كود تابع لأطراف ثالثة من مستودعات GitHub العامة. يفحص SkillHub الأنماط الخبيثة المعروفة، لكنه لا يستطيع ضمان السلامة. راجع الكود المصدري قبل التثبيت.

تثبيت عام (على مستوى المستخدم):

npx skillhub install aiskillstore/marketplace/api-documentation-generator

تثبيت في المشروع الحالي:

npx skillhub install aiskillstore/marketplace/api-documentation-generator --project

skill.install.customTargetHelp

npx skillhub install aiskillstore/marketplace/api-documentation-generator --target-dir /path/to/skills

المسار المقترح: ~/.claude/skills/api-documentation-generator/

مراجعة الذكاء الاصطناعي

59
من ١٠٠
جودة التعليمات55
دقة الوصف55
الفائدة65
السلامة التقنية62

Scored 59 as a solid but unexceptional API doc generator. Has a real template file and multi-framework coverage, but steps are thin on specifics. No automation scripts — relies on Claude following instructions. Examples file adds value. Description has reasonable triggers but no negatives.

betamoderatebackend-devsapi-developersapi-documentationopenapi-generationswagger
تمت المراجعة بواسطة claude-code في 29‏/3‏/2026

محتوى SKILL.md

---
name: api-documentation-generator
description: Generates OpenAPI/Swagger documentation from API route files. Use when working with REST APIs, Express routes, FastAPI endpoints, or when user requests API documentation.
allowed-tools: Read, Grep, Glob, Write, Edit
---

# API Documentation Generator

This skill automatically generates OpenAPI 3.0 (Swagger) documentation from API route files in your codebase.

## When to Use This Skill

- User asks to generate API documentation
- Working with REST API endpoints
- Need to create or update OpenAPI/Swagger specs
- Setting up API documentation for Express, FastAPI, Flask, NestJS, or similar frameworks

## Instructions

### 1. Discover API Routes

Search the codebase for API route definitions:

- **Express/Node.js**: Look for `app.get()`, `app.post()`, `router.get()`, etc.
- **FastAPI/Python**: Look for `@app.get()`, `@router.post()`, decorators
- **Flask**: Look for `@app.route()` decorators
- **NestJS**: Look for `@Get()`, `@Post()`, `@Controller()` decorators
- **Rails**: Look for routes in `config/routes.rb`

Use Glob to find route files (e.g., `**/*routes*.{js,ts,py}`, `**/controllers/**/*.{js,ts}`)

### 2. Analyze Route Patterns

For each discovered route, extract:

- **HTTP Method**: GET, POST, PUT, PATCH, DELETE
- **Path**: The endpoint URL (e.g., `/api/users/:id`)
- **Parameters**: Path params, query params, request body
- **Response**: Expected response structure
- **Authentication**: Whether auth is required
- **Description**: Comments or docstrings near the route

### 3. Generate OpenAPI Specification

Create or update an OpenAPI 3.0 specification file (typically `openapi.yaml` or `swagger.json`):

- Start with the template from `templates/openapi-3.0.yaml`
- Map each route to an OpenAPI path object
- Define request/response schemas using JSON Schema
- Include parameter definitions (path, query, body)
- Add authentication schemes if detected (Bearer, API Key, OAuth2)
- Group endpoints by tags (e.g., "Users", "Products", "Auth")

### 4. Validate Completeness

Check that the generated documentation includes:

- All discovered endpoints
- Accurate HTTP methods and paths
- Request/response examples where possible
- Error responses (400, 401, 404, 500, etc.)
- Security requirements

### 5. Output Location

- Save as `openapi.yaml` in the project root, or
- Place in `docs/` or `api/` directory if those exist
- Ask user for preferred location if unclear

## Framework-Specific Notes

### Express/Node.js
- Check for route middleware that might affect auth/validation
- Look for request validators (Joi, express-validator, etc.)
- Extract JSDoc comments for endpoint descriptions

### FastAPI
- FastAPI auto-generates OpenAPI docs, but this skill can enhance them
- Extract Pydantic models for request/response schemas
- Check for `response_model` and `status_code` parameters

### NestJS
- Look for DTOs (Data Transfer Objects) for schemas
- Check for Swagger decorators (`@ApiOperation`, `@ApiResponse`)
- Extract metadata from controller and method decorators

## Best Practices

1. **Use existing schemas**: If the codebase has TypeScript interfaces, Pydantic models, or similar, use them for accurate schemas
2. **Include examples**: Add request/response examples from tests if available
3. **Group logically**: Organize endpoints by resource or feature area using tags
4. **Version appropriately**: Use the API version from the codebase (e.g., "1.0.0")
5. **Add descriptions**: Use code comments/docstrings for endpoint descriptions

## Supporting Files

- `templates/openapi-3.0.yaml`: Base OpenAPI template
- `examples.md`: Framework-specific examples

الترخيص

لم يُعلَن أي ترخيص في مصدر هذه المهارة.

النص الكامل للترخيص متاح في المستودع المصدري.

عرض الترخيص في المستودع المصدريالنسخة المنشورة هناك هي المرجع.