CtrlK
BlogDocsLog inGet started
Tessl Logo

ai-web-scraping-scrapegraph

AI-powered web scraping - extract data using natural language prompts

47

Quality

59%

Does it follow best practices?

Run evals on this skill

Adds up to 20 points to the overall score

View guide
SecuritybySnyk

Low

Low-risk findings worth noting

Fix and improve this skill with Tessl

tessl review fix ./skills/research-tools/capabilities/ai-web-scraping-scrapegraph/SKILL.md
SKILL.md
Quality
Evals
Security

Quality

Content

50%Weight 40%Scale 1-5

Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.

The body is a well-organized API catalog with concrete curl examples for nearly every endpoint, but it is held back by two malformed example payloads, an unexplained async request/poll workflow, inlined reference material that belongs in a separate file, and repeated boilerplate across parameter descriptions. It is serviceable but needs tightening and correctness fixes.

Suggestions

Fix the SmartScraper and SmartCrawler curl examples to wrap parameters in a "body":{...} object like the SearchScraper example, so they are copy-paste executable.

Document the async workflow explicitly: where the request_id/task_id comes from in the start response, how often to poll the status endpoints, and what status values mean.

Deduplicate the mock/stealth parameter descriptions and the Capability/Usage intro repetition, and move the per-endpoint parameter reference into a separate reference file linked from SKILL.md.

DimensionReasoningScore

Conciseness

The parameter documentation is mostly necessary API-specific detail, but the '## Capabilities' bullets are repeated verbatim as Usage section intros, the mock-mode and stealth descriptions are restated nearly identically per endpoint, and the generic '## Use Cases' section pads tokens without adding guidance, matching 'Mostly efficient but includes some unnecessary explanation or could be tightened'. Not a 4 because the redundant repetition is more than minor.

3 / 5

Actionability

Most endpoints have concrete curl commands, but the flagship SmartScraper and SmartCrawler examples contain malformed JSON (the "website_url"/"url" and "user_prompt"/"prompt" fields sit outside the payload with no "body":{...} wrapper), so they are not copy-paste executable, and SmartCrawler's parameters are listed without types or descriptions. This matches 'Some concrete guidance but incomplete... missing key details'; not a 4 because two of the primary examples are broken.

3 / 5

Workflow Clarity

The document is organized per-endpoint but the core async workflow (start a request, capture the request_id from the response, poll the paired 'Get ... Status' endpoint until complete) is never stated — there is no guidance on where the id comes from, polling cadence, or status values, matching 'Steps listed but validation gaps; sequence present but checkpoints missing or implicit'. Not a 2 because each endpoint's usage is individually well-defined.

3 / 5

Progressive Disclosure

The single SKILL.md inlines the full parameter reference for 10+ endpoints with no bundle files to offload it, though sections (Setup, Capabilities, Usage, Discover More) keep it navigable and the 'Discover More' section points to live API discovery — matching 'Some structure but could be better organized; content that should be separate is inline'. Not a 2 because section headers and navigation are present.

3 / 5

Total

12

/

20

Passed

Description

50%Weight 40%Scale 1-5

Based on the skill's description, can an agent find and select it at the right time? Clear, specific descriptions lead to better discovery.

The description is accurate and concrete about the core capability but minimal: it answers 'what' in one clause and entirely omits 'when', trigger synonyms, and the skill's broader capability set. It reads as an under-specified version of a good description rather than a vague one.

Suggestions

Add an explicit trigger clause, e.g. 'Use when the user asks to scrape a website, extract data from web pages, crawl a site, or convert pages to Markdown.'

Mention the other concrete capabilities (AI web search, site crawling, sitemap extraction, HTML/Markdown conversion) so the description covers what the skill actually does.

Include natural keyword variations users would say ('scrape', 'crawl', 'web data extraction') to improve trigger matching and distinctiveness.

DimensionReasoningScore

Specificity

"extract data using natural language prompts" names the domain and one concrete action, but the description omits the skill's other capabilities (crawling, search, sitemap extraction, markdown conversion), matching the anchor 'Names domain and 1-2 concrete actions, but not comprehensive'. It is not a 4 because it does not list several specific actions, and not a 2 because the action given is concrete rather than generic.

3 / 5

Completeness

The description clearly answers 'what' ("AI-powered web scraping - extract data using natural language prompts") but contains no 'Use when...' clause or any trigger guidance, which per the judging guidelines caps completeness at 3 ('Has a clear what but when is missing'). It is not a 2 because the 'what' is clear, not vague.

3 / 5

Trigger Term Quality

"web scraping" and "extract data" are natural phrases users would say, but common variations like "scrape", "crawl", "spider", "data extraction", or site/URL-related terms are missing, matching 'Some relevant keywords but missing common variations or synonyms'. Not a 4 because keyword coverage is thin rather than good-with-a-few-gaps.

3 / 5

Distinctiveness Conflict Risk

"AI-powered web scraping" carves out a recognizable niche but could still overlap with other scraping or data-extraction skills since no distinct trigger phrases (e.g., ScrapeGraph-specific terms) differentiate it, matching 'Somewhat specific but could still overlap with similar skills'. Not a 4 because the overlap with generic web-scraping skills is more than minor.

3 / 5

Total

12

/

20

Passed

Validation

93%

Checks the skill against the spec for correct structure and formatting. All validation checks must pass before discovery and implementation can be scored.

Validation — 15 / 16 Passed

Validation for skill structure

CriteriaDescriptionResult

frontmatter_unknown_keys

Unknown frontmatter key(s) found; consider removing or moving to metadata

Warning

Total

15

/

16

Passed

Repository
gooseworks-ai/goose-skills
Reviewed

Table of Contents

Is this your skill?

If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.