Crawl4AI Agent Skill

Переносимый скилл для CLI и Python-библиотеки Crawl4AI: страницы на JavaScript, извлечение данных по CSS-схемам и пакетный обход.

  • 50 ★ репозитория
  • Последний коммит
Скилл

Широкий доступ

Почему такой уровень

  • Скилл запускает безголовый браузер, ходит по чужим сайтам и сохраняет сессии с состоянием входа.
  • Сбор данных может нарушать условия сайта или закон о персональных данных.
Все причины и проверки

brettdavies/crawl4ai-skill

Установка

В терминале, через SkillFoxx CLI

npx skillfoxx add skills/crawl4ai-agent-skill

Определит агенты на машине, покажет уровень доступа и зафиксирует версию.

Другие способы установки

Доступ и проверки

Как мы проверяем

Широкий доступИнструмент может менять данные, выполнять команды или работать с секретами.

  • Скилл запускает безголовый браузер, ходит по чужим сайтам и сохраняет сессии с состоянием входа.
  • Сбор данных может нарушать условия сайта или закон о персональных данных.

Это чужой код. Посмотрите файлы в репозитории перед установкой.

Что делает

Скилл учит агента работать с командой `crwl` и библиотекой `crawl4ai`. Страницы рендерятся в безголовом браузере с ожиданием `networkidle`, а данные извлекаются двумя способами. Схема из CSS-селекторов выводится один раз через модель и дальше применяется без новых затрат, а извлечение через модель подходит для разовых задач без схемы. Дополнительно есть фильтры содержимого BM25 и по качеству, пакетный обход со своими лимитами параллельности, сессии для многошаговых сценариев с входом и поиск адресов. Пакет содержит `SKILL.md`, девять справочников, шесть вспомогательных скриптов, шаблоны YAML и четыре проверочных сценария. Проверен на версии Crawl4AI 0.8.9.

Для кого. Разработчикам и аналитикам данных, которые собирают структурированные данные с сайтов на JavaScript и хотят вывести схему один раз, а не тратить модель на каждую страницу.

Подходит, если

  • Каталог товаров рисуется скриптами, и обычный запрос возвращает пустую страницу
  • Схему селекторов выводят один раз и применяют к тысячам однотипных страниц
  • Нужно очистить страницу до чистого Markdown и оставить только релевантные куски
  • Сайт обходят по теме с ограничением числа одновременных заданий
  • Сценарий проходит несколько шагов внутри одной сессии браузера

Не подходит, если

  • Сайт запрещает автоматический сбор в условиях использования или в `robots.txt`
  • Данные содержат персональную информацию, на обработку которой у вас нет оснований
  • Страница отдает нужное обычным HTTP-запросом: безголовый браузер избыточен

Пример запроса к агенту

Открой каталог по этой ссылке, выведи схему CSS для карточек товара и сохрани все товары в JSON.

Ограничения

Скилл вызывает библиотеку Crawl4AI, поэтому в среде агента нужны `pip install crawl4ai`, затем `crawl4ai-setup` и проверка `crawl4ai-doctor`: безголовый браузер скачивается отдельно. Справочник по SDK огромный, а команды и параметры привязаны к версии 0.8.9, на других версиях они могут отличаться. В папке есть руководство по обходу защиты от ботов, применять его стоит только к своим сайтам или там, где сбор разрешен. Сессии хранят состояние входа, поэтому не оставляйте их на общих машинах. Лицензия двойная, MIT или Apache-2.0.

Как отключить. Удалите папку `~/.claude/skills/crawl4ai`. Библиотеку и браузер удалите командой `pip uninstall crawl4ai`, кеш браузера очистите вручную.

Частые вопросы

Как установить скилл в Claude Code?

Склонируйте репозиторий в `~/.claude/skills/crawl4ai`: `git clone https://github.com/brettdavies/crawl4ai-skill.git ~/.claude/skills/crawl4ai`. Затем поставьте сам Crawl4AI.

Что нужно поставить кроме скилла?

Библиотеку Crawl4AI: `pip install crawl4ai`, затем `crawl4ai-setup` и `crawl4ai-doctor`, который проверит, что безголовый браузер доступен.

Чем схема отличается от извлечения через модель?

Схему из CSS-селекторов выводят один раз через модель и потом применяют без затрат. Извлечение через модель платит за каждый запрос и подходит, когда схему выводить не стоит.

С какими агентами работает?

С любыми, кто загружает пакеты формата SKILL.md: Claude Code, Codex, Cursor, OpenCode, Cline. Папку клонируют туда, где хост ищет скиллы.

Для какой версии Crawl4AI он проверен?

Для версии 0.8.9, она записана в файле `VERSION` репозитория.

Обсуждение

Вопросов и отзывов пока нет.

Скиллы
Официальный

Пять скиллов для API XCrawl: скрапинг одной страницы, карта URL сайта, обход сайта целиком и поиск, с примерами cURL и Node

СкиллШирокий доступ449Звезды репозитория
Официальный

Краулер с открытым кодом превращает сайты в чистый Markdown для ИИ-агентов: ставится из PyPI, запускается в Docker и подключается к Claude Code по MCP

MCP-серверРасширенный доступ87,3 тыс.Звезды репозитория

Набор из трех скиллов и четырех утилит: агент ищет в сети, читает страницы, берет субтитры видео и обрабатывает медиа

СкиллРасширенный доступ228Звезды репозитория
Официальный

Каталог скиллов Firecrawl для Claude Code, Cursor и Codex: поиск, скрейпинг и обход сайтов, работа с формами и интеграция API

ПлагинРасширенный доступ155Звезды репозитория

Пять скиллов, по которым агент встраивает поиск, скрапинг и действия на страницах Firecrawl в код вашего приложения

СкиллРасширенный доступ201,3 тыс.Звезды репозитория
Официальный

Официальные скиллы Brave: учат агента вызывать Search API для веба, новостей, картинок, видео, мест и выжимок страниц для LLM

СкиллРасширенный доступ196Звезды репозитория

Сравнение с похожими

Карточки с тем же главным запросом: чем они отличаются.

ИнструментОфициальныйАвторизацияЗвезды репозиторияГлавное отличие
Crawl4AI Agent Skill (эта карточка)нет50
Crawl4AIдаAPI-ключ87 271сама библиотека и ее запуск; это скилл с рецептами и скриптами поверх нее
Firecrawl CLIнет684облачный сервис Firecrawl со скиллами; здесь локальная библиотека Crawl4AI

Коротко о README

README перечисляет возможности, установку клонированием, требования к Crawl4AI, быстрый старт для CLI и SDK и состав пакета. Дальше идут ссылки на руководства, рецепты и проверочные сценарии.

Бейдж для README

Исходный SKILL.md

---
name: crawl4ai
description: Use when scraping JavaScript-heavy pages or SPAs, crawling multiple URLs concurrently, extracting structured data with reusable CSS/JSON schemas, or building automated web data pipelines. Wraps the Crawl4AI library (`crwl` CLI and Python SDK) with schema-generation patterns for LLM-free extraction. Triggers on crawl4ai, crwl, scrape JS-heavy site, scrape SPA, headless browser scrape, schema-based extraction, batch crawl, sitemap crawl, web data pipeline. SKIP when a static HTML page can be read with `defuddle` / `fetch-web` — those are faster cold-start and don't need a browser.
argument-hint: "[url]"
---

# Crawl4AI

**Verified against `crawl4ai`** [`VERSION`](VERSION). PEP 723 pins in `scripts/*.py` and `tests/*.py` floor at that
version.

## Overview

Crawl4AI wraps a headless browser (Playwright) plus a markdown-aware content pipeline. Use it when defuddle/curl can't
reach the content — JavaScript-rendered pages, login-gated content, infinite scroll, multi-URL concurrency, repeatable
schema-based extraction.

This skill exposes both interfaces of the underlying library:

- **CLI** (`crwl`) — quick, scriptable commands: [CLI Guide](references/cli-guide.md)
- **Python SDK** — full programmatic control: [SDK Guide](references/sdk-guide.md)

## Invoked with a URL argument

When the user runs `/crawl4ai <url>` with a single URL and no further qualifier, treat it as the JS-heavy fetch case and
default to:

```bash
crwl <url> -c "wait_until=networkidle,page_timeout=60000" -o markdown
```

`wait_until=networkidle` waits for the network to be quiet for ~500ms post-load — the right default when the user hasn't
named a specific element on a JS-rendered page. (Avoid `wait_for=css:body`: `<body>` exists at t=0 on every HTML
response, so it's satisfied before JS renders content.) Then return the markdown to the agent context. Adjust to
`wait_for=css:<selector>` if the user named a specific element. Skip the default and route to the relevant section below
for any task that names extraction, batch / multi-URL, login / session, screenshot / PDF, or URL discovery — those each
have their own pipeline. If the URL is clearly static (a docs page, a blog post), route the user to `/fetch-web` instead
per the "When NOT to use" section below.

## When NOT to use this skill

- **Static HTML pages** (most documentation sites, blog posts, news articles, tweets) — use `/fetch-web` or `defuddle`
  directly. Static extraction is ~0ms cold start; crawl4ai pays a ~2s browser startup tax.
- **Local file conversion** (`.pdf`, `.docx`, `.pptx`, `.epub`) — use `/markdown-convert`.
- **One-URL agent-context reads** (the agent just needs to read this page) — use `/fetch-web` and let it route to

Сообщить о проблеме