crawl4ai

Extract structured data and full-text content from URLs, videos, and documents.

2|Updated Apr 10, 2026
One-click install
npx skills add https://github.com/t0lab/harness-kit --skill crawl4ai-t0lab
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: crawl4ai
Source: https://github.com/t0lab/harness-kit/tree/main/packages/harness-kit/skills/crawl4ai
Command: npx skills add https://github.com/t0lab/harness-kit --skill crawl4ai-t0lab

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

This Skill fetches and extracts content from known URLs, documents, and videos to produce clean text or structured data suitable for downstream analysis and LLM processing.

Core Features & Use Cases

  • Single-page extraction: scrape a URL and return clean markdown or structured JSON fields such as product name, price, and availability.
  • Deep site crawling: crawl documentation or site sections with configurable max_depth, max_pages, domain filtering, and include/exclude patterns.
  • Multimedia and file support: extract YouTube transcripts and metadata, and convert PDFs, Word, Excel, and PPT files into markdown.
  • LLM-powered extraction: perform semantic extraction into typed JSON schemas or entity lists when data is scattered across a page.
  • Context and scale management: stream results, render JS, handle anti-bot escalation automatically, and write large outputs to disk via output_path to avoid context overflow.
  • Self-hosting option: run as a Docker service for production use and connect via MCP SSE for high-volume or privacy-sensitive workloads.

Quick Start

Use the crawl4ai skill to extract product name, price, and availability as JSON from https://example.com/product.

Frequently Asked Questions about crawl4ai

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I extract structured data from web pages with JavaScript rendering?

To extract structured data from JS-rendered pages, scrape the URL and use LLM-based semantic extraction to map scattered content directly into typed JSON schemas or entity lists.

What is the best way to crawl an entire site with configurable depth and page limits?

Site crawling with configurable depth and page limits involves setting max_depth, max_pages, domain filtering, and include/exclude patterns to systematically extract full-text content from targeted site sections.

Can I extract YouTube transcripts and PDF content into markdown format?

Yes, YouTube transcripts and metadata can be extracted directly, while PDFs and Office files like Word, Excel, and PPT are parsed and converted into clean markdown for downstream analysis.

How do I handle large web scraping results without causing context overflow?

To prevent context overflow during large web scraping extractions, configure an output_path to write large results directly to disk instead of streaming them entirely into memory.

Do I need a self-hosted Docker environment for high-volume or privacy-sensitive web scraping?

For high-volume or privacy-sensitive web scraping, you can run the extraction engine as a self-hosted Docker service and connect via MCP SSE to maintain control over data and workloads.

How does LLM extraction work for scattered web page content?

LLM extraction works by applying semantic analysis to scattered web page content, transforming unstructured text into structured JSON fields based on a predefined schema or entity list.