fetch-library-docs

Fetches library and framework documentation with code examples, API references, and best practices. Supports JavaScript, Python, Go, Rust, and other libraries. Use when users ask about library documen

fetch
library
docs

SKILL.md

GitHub

Library Documentation Skill

Fetches official library documentation with 60-90% token savings.


WHEN TO INVOKE (Auto-Detection)

INVOKE AUTOMATICALLY when:

Context Detection Signal Content Type
Implementing About to write code using library API examples,api-ref
Debugging Error contains library name (e.g., PrismaClientError) troubleshooting
Installing Adding new package, npm install, setup task setup
Integrating Connecting libraries ("use X with Y") examples,setup
Upgrading Version migration, breaking changes migration
Uncertain First use of library feature, unsure of pattern examples

DO NOT INVOKE when:

  • Already have sufficient knowledge from training
  • User pasted docs or has them open
  • Task is about local/private code (use codebase search)
  • Comparing libraries (use web search)

DECISION LOGIC

1. Identify Library

Priority: User mention → Error message → File imports → package.json → Ask user

Examples:

  • PrismaClientKnownRequestError → library = "prisma"
  • import { useState } from 'react' → library = "react"
  • from fastapi import FastAPI → library = "fastapi"

2. Identify Topic

Priority: User specifies → Error message → Feature being implemented → "getting started"

3. Select Content Type

Task Content Type
Implementing code examples,api-ref
Debugging error troubleshooting,examples
Installing/setup setup
Integrating libs examples,setup
Upgrading version migration
Understanding why concepts
Best practices patterns

EXECUTION

IMPORTANT: Always use the Python entry point (fetch-docs.py) for cross-platform compatibility.

Use python3 on Linux/macOS/WSL, python on Windows:

# With known library ID (faster - saves 1 API call)
python3 scripts/fetch-docs.py --library-id <id> --topic "<topic>" --content-type <types>

# With library name (auto-resolves)
python3 scripts/fetch-docs.py --library <name> --topic "<topic>" --content-type <types>

Windows note: Use python instead of python3 (e.g., python scripts/fetch-docs.py ...)

Quick Library IDs

Library ID
React /reactjs/react.dev
Next.js /vercel/next.js
Prisma /prisma/docs
Tailwind /tailwindlabs/tailwindcss.com
FastAPI /tiangolo/fastapi

See references/library-ids.md for complete list.


ERROR HANDLING (Quick Reference)

Error Action
[LIBRARY_NOT_FOUND] Try spelling variations
[LIBRARY_MISMATCH] Use --library-id directly
[EMPTY_RESULTS] Broaden topic or use --content-type all
[RATE_LIMIT_ERROR] Check API key setup

Call Budget: Context7 allows 3 calls/question. Use --library-id to save 1 call.

See references/context7-tools.md for full error handling.


REFERENCES