CtrlK
BlogDocsLog inGet started
Tessl Logo

tiny-web-crawler

Crawl from one or more starting web pages, fetch readable content, search within pages, follow relevant links, and stop when the requested information is found or a bounded limit is reached.

66

Quality

78%

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/agent/tiny-web-crawler/SKILL.md
SKILL.md
Quality
Evals
Security

Quality

Content

86%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.

A well-structured, token-efficient body with concrete commands, explicit limits, and a clearly sequenced bounded-crawl workflow. The only notable gaps are the absence of a fetch-page.mjs example invocation and of error-recovery guidance for failed fetches.

DimensionReasoningScore

Conciseness

The body is lean and imperative throughout — every line is skill-specific operational guidance (script flags, default limits, link-selection heuristics, evidence rules) rather than concepts Claude already knows. It matches the score-5 anchor ('lean and efficient; every token earns its place'); the Leon runtime-shim note and flag documentation are non-obvious environment knowledge, not padding.

5 / 5

Actionability

A copy-paste-ready command ("node scripts/crawl-web.mjs --url ... --query ... --max-pages 8 --max-depth 2") plus concrete flags (--include-text, --offset, --max-text-chars) and named output fields make the guidance mostly fully executable. It falls short of the score-5 anchor only because no example invocation of scripts/fetch-page.mjs is shown, leaving that half of the toolkit to be inferred from flag descriptions.

4 / 5

Workflow Clarity

The 9-step workflow is clearly sequenced with stop conditions ("Stop as soon as the target information is found") and a failure-reporting step ("If the limit is reached, report what was checked and what remains unresolved"), and the read-only crawl carries no destructive-operation cap. It is a 4 rather than 5 because there are no error-recovery checkpoints (e.g. what to do when a fetch fails or returns unusable content).

4 / 5

Progressive Disclosure

Both referenced bundle files (scripts/fetch-page.mjs, scripts/crawl-web.mjs) exist as real one-level-deep references, clearly signaled in a dedicated Scripts section, with the implementation detail pushed into the scripts and SKILL.md kept as a concise overview. Sections are well organized and nothing that belongs in a separate file is inlined, matching the score-5 anchor.

5 / 5

Total

18

/

20

Passed

Description

71%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.

A specific, concrete, third-person description that clearly states what the skill does, but it omits any 'Use when...' trigger clause, which caps its completeness and weakens discoverability. Adding explicit trigger guidance and natural synonyms (website, scrape, browse) would raise it to top-tier quality.

Suggestions

Append an explicit trigger clause, e.g. "Use when asked to find specific information across one or more web pages, crawl or spider a website from a starting URL, or scrape and extract content from web pages."

Include natural user synonyms such as "website", "scrape", and "browse" alongside "crawl" and "web pages" to broaden trigger-term coverage.

Clarify the boundary versus a plain single-page fetch (e.g. mention following links across pages) to reduce overlap risk with simpler fetch skills.

DimensionReasoningScore

Specificity

The description lists multiple concrete actions — "Crawl from one or more starting web pages", "fetch readable content", "search within pages", "follow relevant links", and bounded stopping behavior — giving comprehensive coverage of the skill's capabilities with no vague filler. It matches the score-5 anchor ('multiple specific concrete actions; comprehensive coverage') and exceeds score 4 because there are no meaningful gaps in what the skill does.

5 / 5

Completeness

The 'what' is clear and concrete, but there is no 'Use when...' clause or equivalent explicit trigger guidance — "stop when the requested information is found" describes behavior, not when to invoke the skill. Per the judging guidelines, a missing 'Use when...' clause caps completeness at 3; it is not lower because the 'what' half is fully specified.

3 / 5

Trigger Term Quality

Natural terms like "crawl", "web pages", "fetch", "search within pages", and "follow relevant links" are present and would be said by users needing this skill. It falls short of the score-5 anchor because common variations users would actually say — "website", "scrape/scraping", "spider", "browse pages" — are missing.

4 / 5

Distinctiveness Conflict Risk

"Crawl from one or more starting web pages... follow relevant links" carves out a clear crawling niche distinct from single-page fetch or general search skills. It is not a 5 because it could mildly overlap with a generic web-fetch/scrape skill and lacks explicit trigger phrasing that would sharpen the boundary.

4 / 5

Total

16

/

20

Passed

Validation

100%

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

Validation — 16 / 16 Passed

Validation for skill structure

No warnings or errors.

Repository
leon-ai/leon
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.