API Documenting

Turns route code into API reference docs with parameter tables, curl examples, OpenAPI specs

Tested · Works

Test report

Verdict
Tested · Works
Score
8.4/10
Tested
Jul 21, 2026
Environment
Claude Code 2.x (agent harness)
Upstream re-checked
Aug 10, 2026 · 6dfcafa

Cloned the repo, installed into a throwaway HOME (never touched the real ~/.claude), and confirmed all 8 files the SKILL.md body references exist — PATTERNS.md, STANDARDS.md, EXAMPLES.md, templates/{endpoint,index,openapi}, scripts/{detect_routes.py,validate_openapi.sh} — spot-fetched three at HTTP 200. Ran scripts/detect_routes.py against a 3-route Express file I wrote; it correctly returned GET /orders, POST /orders and DELETE /orders/:orderId with file+line numbers, so the helper is real and not decorative. Task: document that same orders.js. Baseline (46 lines, 968 B) was prose bullets with no types, no auth section, no curl, no index; skill run (212 lines, 3992 B) followed templates/index.md then templates/endpoint.md per route and added a base-URL/auth header, an endpoint summary table, a common-response-code table, three parameter tables with Location/Type/Required columns (0 in baseline), three runnable curl request/response examples (0 in baseline), the 401 case the baseline omitted, and a Notes line I only wrote because the template forced the section — that 403 is checked after existence, so a valid id owned by another user returns 403 not 404. Trigger phrasings judged: SHOULD fire — "Generate an API reference for the routes in src/api/", "Write an OpenAPI 3.0 spec for my FastAPI app", "Document all the endpoints in this Express router" (loaded all three); SHOULD NOT — "Design a REST API for a booking system, what endpoints should I have?" (API design, not documenting existing code) and "Write a README for this CLI tool" (docs but no endpoints); both correctly declined, 5/5. No security smells: no curl|sh, no base64, no network calls, no secret access; validate_openapi.sh only shells out to swagger-cli/npx/spectral if already present. Docs docked one point because the skill sits inside a course lesson project with no standalone README of its own — the surrounding README is teaching material about progressive disclosure, not usage docs.

Scored on four weighted criteria — install, triggering, output vs. baseline, docs. How scoring works

  • Installs cleanly 5/5
  • Triggers reliably 5/5
  • Output vs. baseline 7/10
  • Docs & honesty 4/5

What API Documenting does

Reads source files for route definitions (Express, FastAPI, Flask, Spring, Gin) and generates API reference documentation using fixed templates for the endpoint pages and the index page, plus an optional OpenAPI 3.0 spec. Includes a Python route-detection script and a shell validator for generated specs. Triggers when the user asks to document APIs, generate endpoint documentation, produce an API reference, or write an OpenAPI/Swagger spec.

How to install API Documenting

git clone --depth 1 https://github.com/huangjia2019/claude-code-engineering.git /tmp/api-documenting-src
mkdir -p ~/.claude/skills
cp -R /tmp/api-documenting-src/04-Skills/projects/02-progressive-skill/.claude/skills/api-documenting ~/.claude/skills/api-documenting
# No dependencies for the documentation workflow itself.
# Optional helper: python3 ~/.claude/skills/api-documenting/scripts/detect_routes.py <source_dir>  -> JSON list of routes (stdlib only, no pip installs)
# Optional helper: bash ~/.claude/skills/api-documenting/scripts/validate_openapi.sh <spec.yaml>  -> needs swagger-cli / npx / spectral, else falls back to a YAML syntax check
# The repo is a Claude Code course; this skill lives in lesson project 04-Skills/projects/02-progressive-skill. No plugin marketplace entry.

Skills live in ~/.claude/skills/ (global) or .claude/skills/ (per-project). Restart Claude Code after installing.

Commands — how to trigger API Documenting

  • /api-documenting Turns route code into API reference docs with parameter tables, curl examples, OpenAPI specs

It also activates on plain-language prompts like these:

  • Generate API reference docs for this service
  • Create an OpenAPI spec for these endpoints
  • Document this API's request and response formats

Frequently asked questions

Is the API Documenting skill free?
Yes. The skill itself is free from huangjia2019/claude-code-engineering. SkillProof publishes the install command and an independent test verdict at no cost.
Does API Documenting work with Claude Code?
We tested it with Claude Code 2.x (agent harness) on Jul 21, 2026. Verdict: Tested · Works. Cloned the repo, installed into a throwaway HOME (never touched the real ~/.claude), and confirmed all 8 files the SKILL.md body references exist — PATTERNS.md, STANDARDS.md, EXAMPLES.md, templates/{endpoint,index,openapi}, scripts/{detect_routes.py,validate_openapi.sh} — spot-fetched three at HTTP 200. Ran scripts/detect_routes.py against a 3-route Express file I wrote; it correctly returned GET /orders, POST /orders and DELETE /orders/:orderId with file+line numbers, so the helper is real and not decorative. Task: document that same orders.js. Baseline (46 lines, 968 B) was prose bullets with no types, no auth section, no curl, no index; skill run (212 lines, 3992 B) followed templates/index.md then templates/endpoint.md per route and added a base-URL/auth header, an endpoint summary table, a common-response-code table, three parameter tables with Location/Type/Required columns (0 in baseline), three runnable curl request/response examples (0 in baseline), the 401 case the baseline omitted, and a Notes line I only wrote because the template forced the section — that 403 is checked after existence, so a valid id owned by another user returns 403 not 404. Trigger phrasings judged: SHOULD fire — "Generate an API reference for the routes in src/api/", "Write an OpenAPI 3.0 spec for my FastAPI app", "Document all the endpoints in this Express router" (loaded all three); SHOULD NOT — "Design a REST API for a booking system, what endpoints should I have?" (API design, not documenting existing code) and "Write a README for this CLI tool" (docs but no endpoints); both correctly declined, 5/5. No security smells: no curl|sh, no base64, no network calls, no secret access; validate_openapi.sh only shells out to swagger-cli/npx/spectral if already present. Docs docked one point because the skill sits inside a course lesson project with no standalone README of its own — the surrounding README is teaching material about progressive disclosure, not usage docs.
What is the API Documenting SkillProof Score?
8.4/10 — installs cleanly 5/5, triggers reliably 5/5, output vs. baseline 7/10, docs & honesty 4/5.
How do I install API Documenting?
Copy the install command from this page, run it in your terminal, and restart Claude Code. Skills live in ~/.claude/skills/ (global) or .claude/skills/ inside a project.
Can I use API Documenting with Cursor, Copilot, Gemini CLI, Codex or other AI tools?
The SKILL.md format is native to Claude (Claude Code, Desktop, claude.ai). The instructions inside adapt to other assistants: Cursor rules, GitHub Copilot instructions, Windsurf rules, Custom GPTs, AGENTS.md for OpenAI Codex, and GEMINI.md for Google Gemini CLI — our conversion guides cover each, and the free converter on the tools page does the wrapping for you.