AgentSkillsCN

fetch-library-docs

通过内容类型过滤,以节省60%-90%的Token用量,快速获取外部库与框架的官方文档(如React、Next.js、Prisma、FastAPI、Express、Tailwind、MongoDB等)。在使用库API实现功能、调试库特有的错误、排查配置问题、安装或搭建框架、集成第三方包、在不同库版本间进行升级,或查找正确的API模式与最佳实践时,可选用此技能。该技能会在编码过程中自动触发——在编写库代码之前先获取文档,以掌握正确的API模式,而非在盲目猜测后才去查阅。

SKILL.md
--- frontmatter
name: fetch-library-docs
description: Fetches official documentation for external libraries and frameworks (React, Next.js, Prisma, FastAPI, Express, Tailwind, MongoDB, etc.) with 60-90% token savings via content-type filtering. Use this skill when implementing features using library APIs, debugging library-specific errors, troubleshooting configuration issues, installing or setting up frameworks, integrating third-party packages, upgrading between library versions, or looking up correct API patterns and best practices. Triggers automatically during coding work - fetch docs before writing library code to get correct patterns, not after guessing wrong.

Library Documentation Skill

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


WHEN TO INVOKE (Auto-Detection)

INVOKE AUTOMATICALLY when:

ContextDetection SignalContent Type
ImplementingAbout to write code using library APIexamples,api-ref
DebuggingError contains library name (e.g., PrismaClientError)troubleshooting
InstallingAdding new package, npm install, setup tasksetup
IntegratingConnecting libraries ("use X with Y")examples,setup
UpgradingVersion migration, breaking changesmigration
UncertainFirst use of library feature, unsure of patternexamples

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

code
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

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

3. Select Content Type

TaskContent Type
Implementing codeexamples,api-ref
Debugging errortroubleshooting,examples
Installing/setupsetup
Integrating libsexamples,setup
Upgrading versionmigration
Understanding whyconcepts
Best practicespatterns

EXECUTION

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

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

bash
# 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

LibraryID
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)

ErrorAction
[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