find-docsпоиск актуальной документации
Загружает актуальную документацию и API-справочники для любой библиотеки через Context7 CLI. Замена угадыванию по устаревшим обучающим данным.
Установка
npx -y skills add upstash/context7 --skill find-docs --agent claude-codeDocumentation Lookup — актуальная документация через Context7
Получайте актуальную документацию и примеры кода для любой библиотеки с помощью Context7 CLI. Ваши тренировочные данные могут не отражать последние изменения API или обновления версий — всегда проверяйте по текущей документации.
Обновление CLI
npm install -g ctx7@latest
# Или без установки:
npx ctx7@latest <команда>
Рабочий процесс
Двухшаговый процесс: сначала получить ID библиотеки, затем запросить документацию по нему.
# Шаг 1: Получить ID библиотеки
ctx7 library <name> <query>
# Шаг 2: Запросить документацию
ctx7 docs <libraryId> <query>
ОБЯЗАТЕЛЬНО вызывайте ctx7 library первым для получения валидного library ID — если только пользователь явно не предоставил ID в формате /org/project или /org/project/version.
Не запускайте команды более 3 раз на один вопрос. Если после 3 попыток не удалось найти нужное — используйте лучший из полученных результатов.
Шаг 1: Получить ID библиотеки
ctx7 library react "How to clean up useEffect with async operations"
ctx7 library nextjs "How to set up app router with middleware"
ctx7 library prisma "How to define one-to-many relations with cascade delete"
Всегда передавайте аргумент query — он обязателен и напрямую влияет на ранжирование результатов. Используйте намерение пользователя для формирования запроса.
Поля результата
- Library ID — идентификатор Context7 (формат:
/org/project) - Name — название библиотеки или пакета
- Description — краткое описание
- Code Snippets — количество доступных примеров кода
- Source Reputation — авторитетность источника (High, Medium, Low или Unknown)
- Benchmark Score — показатель качества (100 — максимум)
- Versions — список версий, если доступны. Формат:
/org/project/version
Процесс выбора
- Проанализируйте запрос, чтобы понять, какую библиотеку ищет пользователь
- Выберите наиболее релевантный результат по: сходству имени, релевантности описания, охвату документации (приоритет — больше Code Snippets), репутации источника, Benchmark Score
- При нескольких хороших совпадениях — отметьте это, но продолжите с наиболее релевантным
- При отсутствии хороших совпадений — явно сообщите об этом и предложите уточнить запрос
Версионно-специфичные ID
# Общий (последний проиндексированный)
ctx7 docs /vercel/next.js "How to set up app router"
# Для конкретной версии
ctx7 docs /vercel/next.js/v14.3.0-canary.87 "How to set up app router"
Шаг 2: Запросить документацию
ctx7 docs /facebook/react "How to clean up useEffect with async operations"
ctx7 docs /vercel/next.js "How to add authentication middleware to app router"
ctx7 docs /prisma/prisma "How to define one-to-many relations with cascade delete"
Как составлять хорошие запросы
| Качество | Пример |
|---|---|
| Хорошо | "How to set up authentication with JWT in Express.js" |
| Хорошо | "React useEffect cleanup function with async operations" |
| Плохо | "auth" |
| Плохо | "hooks" |
По возможности используйте полный вопрос пользователя в качестве запроса — расплывчатые однословные запросы дают общие результаты.
Вывод содержит два типа контента: code snippets (с заголовком и тегом языка) и info snippets (прозаические объяснения с контекстом breadcrumb).
Аутентификация
Работает без аутентификации. Для более высоких лимитов запросов:
# Вариант A: переменная окружения
export CONTEXT7_API_KEY=your_key
# Вариант B: OAuth-логин
ctx7 login
Обработка ошибок
При ошибке квоты («Monthly quota reached» или «quota exceeded»):
- Сообщите пользователю, что квота Context7 исчерпана
- Предложите аутентификацию для повышения лимитов:
ctx7 login - Если аутентификация невозможна — отвечайте из тренировочных знаний, явно указав, что они могут быть устаревшими
Не переходите молча на тренировочные данные — всегда сообщайте пользователю, почему Context7 не был использован.
Типичные ошибки
- Library ID требует префикс
/— используйте/facebook/react, а неfacebook/react - Всегда сначала запускайте
ctx7 library—ctx7 docs react "hooks"завершится ошибкой без валидного ID - Используйте описательные запросы, а не отдельные слова
- Не включайте конфиденциальные данные (API-ключи, пароли) в запросы
