← Back to Skills Marketplace
matthew77

Tavily Crawl

by Liang · GitHub ↗ · v1.0.0
cross-platform ⚠ suspicious
550
Downloads
0
Stars
1
Active Installs
1
Versions
Install in OpenClaw
/install liang-tavily-crawl
Description
Crawl any website and save pages as local markdown files. Ideal for downloading documentation, knowledge bases, or web content for offline access or analysis.
README (SKILL.md)

Tavily Crawl

Crawl websites to extract content from multiple pages. Ideal for documentation, knowledge bases, and site-wide content extraction.

Authentication

Get your API key at https://tavily.com and add to your OpenClaw config:

{
  "skills": {
    "entries": {
      "tavily-crawl": {
        "enabled": true,
        "apiKey": "tvly-YOUR_API_KEY_HERE"
      }
    }
  }
}

Or set in environment variable:

export TAVILY_API_KEY="tvly-YOUR_API_KEY_HERE"

Quick Start

Using the Script

node {baseDir}/scripts/crawl.mjs "https://docs.example.com"
node {baseDir}/scripts/crawl.mjs "https://docs.example.com" --output ./docs
node {baseDir}/scripts/crawl.mjs "https://example.com" --depth 2 --limit 50

Examples

# Basic crawl
node {baseDir}/scripts/crawl.mjs "https://docs.example.com"

# Deeper crawl with limits
node {baseDir}/scripts/crawl.mjs "https://docs.example.com" --depth 2 --limit 50

# Save to files
node {baseDir}/scripts/crawl.mjs "https://docs.example.com" --depth 2 --output ./docs

# Focused crawl with path filters
node {baseDir}/scripts/crawl.mjs "https://example.com" --depth 2 \
  --select "/docs/.*" --exclude "/blog/.*"

# With semantic instructions
node {baseDir}/scripts/crawl.mjs "https://docs.example.com" \
  --instructions "Find API documentation" --chunks 3

Options

Option Description Default
--depth \x3Cn> Crawl depth (1-5) 1
--breadth \x3Cn> Links per page 20
--limit \x3Cn> Total pages cap 50
--output \x3Cdir> Save pages to directory -
--instructions \x3Ctext> Natural language guidance -
--chunks \x3Cn> Chunks per page (1-5, requires instructions) -
--depth-mode \x3Cmode> Extract depth: basic or advanced basic
--select \x3Cpattern> Regex pattern to include -
--exclude \x3Cpattern> Regex pattern to exclude -
--timeout \x3Csec> Max wait time (10-150 seconds) 150
--json Output raw JSON false

Depth vs Performance

Depth Typical Pages Time
1 10-50 Seconds
2 50-500 Minutes
3 500-5000 Many minutes

Start with --depth 1 and increase only if needed.

Crawl for Context vs Data Collection

For agentic use (feeding results into context): Always use --instructions + --chunks. This returns only relevant chunks instead of full pages, preventing context window explosion.

For data collection (saving to files): Omit --chunks to get full page content.

Tips

  • Always use --chunks for agentic workflows - prevents context explosion when feeding results to LLMs
  • Omit --chunks only for data collection - when saving full pages to files
  • Start conservative (--depth 1, --limit 20) and scale up
  • Use path patterns to focus on relevant sections
  • Always set a --limit to prevent runaway crawls
Usage Guidance
This skill is internally coherent, but note that running it sends the target URL and any natural-language instructions to Tavily's API (https://api.tavily.com/crawl) along with your TAVILY_API_KEY. Only use it with sites you are allowed to crawl and avoid sending private/internal URLs or secrets. Ensure the API key has appropriate scope/rotation policy. When saving output, explicitly set --output to a safe directory and set conservative --limit/--depth values to avoid large or unintended crawls. If you need higher assurance, review the included scripts/crawl.mjs yourself and confirm the Tavily domain and API behavior match your expectations before installing.
Capability Analysis
Type: OpenClaw Skill Name: liang-tavily-crawl Version: 1.0.0 The skill's primary function is web crawling and saving content locally, which aligns with its description. However, the `scripts/crawl.mjs` script contains a path traversal vulnerability. The `--output` argument, which specifies the directory for saving files, is used directly in `fs.mkdirSync` and `path.join` without sanitization. This allows an attacker to specify paths like `../../` to write files to arbitrary locations on the host filesystem, posing a significant RCE risk. There is no evidence of intentional malicious behavior such as data exfiltration to unauthorized endpoints or backdoor installation.
Capability Assessment
Purpose & Capability
Name/description match required items: it requires node and a TAVILY_API_KEY, and the script POSTs crawl requests to https://api.tavily.com/crawl. There are no unrelated credentials, binaries, or surprising config paths.
Instruction Scope
SKILL.md and the script are narrowly scoped to crawling: they instruct calling the included Node script which sends the target URL and options to the Tavily API and then prints or writes returned content. The instructions do not request other system files or additional environment variables.
Install Mechanism
No install spec; the skill is instruction-plus-script and relies on the node binary already present. The included script is plain, readable JS — there are no external downloads or archives executed at install time.
Credentials
Only one credential is required (TAVILY_API_KEY), and it directly aligns with the script's Authorization header. No other secrets or unrelated env vars are requested.
Persistence & Privilege
always is false and the skill does not attempt to modify other skills or system-wide settings. It writes files only to a user-specified output directory (when provided).
How to Use
  1. Make sure OpenClaw is installed (local or Docker)
  2. Run the install command in chat: /install liang-tavily-crawl
  3. After installation, invoke the skill by name or use /liang-tavily-crawl
  4. Provide required inputs per the skill's parameter spec and get structured output
Version History
v1.0.0
Initial release of Tavily Crawl skill. - Crawl any website and save pages as local markdown files for offline use or analysis. - Supports options for crawl depth, page limits, output directory, and path filters. - Allows guidance with natural language instructions and semantic chunking. - Flexible configurations for targeted or broad website extraction. - Requires a Tavily API key for authentication.
Metadata
Slug liang-tavily-crawl
Version 1.0.0
License
All-time Installs 1
Active Installs 1
Total Versions 1
Frequently Asked Questions

What is Tavily Crawl?

Crawl any website and save pages as local markdown files. Ideal for downloading documentation, knowledge bases, or web content for offline access or analysis. It is an AI Agent Skill for Claude Code / OpenClaw, with 550 downloads so far.

How do I install Tavily Crawl?

Run "/install liang-tavily-crawl" in the OpenClaw or Claude Code chat to install it in one step — no extra setup required.

Is Tavily Crawl free?

Yes, Tavily Crawl is completely free (open-source). You can download, install and use it at no cost.

Which platforms does Tavily Crawl support?

Tavily Crawl is cross-platform and runs anywhere OpenClaw / Claude Code is available (cross-platform).

Who created Tavily Crawl?

It is built and maintained by Liang (@matthew77); the current version is v1.0.0.

💬 Comments