CtrlK
BlogDocsLog inGet started
Tessl Logo

data-scraper-agent

Build a fully automated AI-powered data collection agent for any public source — job boards, prices, news, GitHub, sports, anything. Runs on a schedule, enriches data with a free LLM (Gemini Flash), stores results in Notion/Sheets/Supabase, and learns from user feedback. Runs 100% free on GitHub Actions. Use when the user wants to monitor, collect, or track any public data automatically.

64

Quality

76%

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/data-scraper-agent/SKILL.md
SKILL.md
Quality
Evals
Security

Quality

Content

65%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 highly actionable skill body with complete, executable code for a complex multi-step agent build, but it is over-long for a single file with repeated patterns and no external references, and its batch/storage operations lack explicit validation feedback loops.

Suggestions

Extract the full reference implementations, the free-tier limits table, and the Common Scraping Patterns catalog into separate reference files (e.g. references/patterns.md, references/free-tier-limits.md) and link them one level deep from SKILL.md to improve progressive disclosure.

Add an explicit validation feedback loop around the batch AI pipeline (e.g. on parse failure or low-confidence scores, retry with a smaller batch or fall back to the next model) to lift workflow clarity above the batch-skill cap of 3.

De-duplicate the REST/HTML/RSS scraping guidance that appears in both Step 3 and the Common Scraping Patterns section to tighten conciseness.

DimensionReasoningScore

Conciseness

The ~760-line body is mostly efficient and avoids padding with concepts Claude already knows, but REST/HTML/RSS patterns are repeated (Step 3 and again in 'Common Scraping Patterns') and the model fallback chain appears multiple times, so it could be tightened, fitting the score-3 anchor of mostly efficient with some unnecessary content.

3 / 5

Actionability

Provides fully executable, copy-paste-ready Python/YAML code across all ten steps plus a pattern catalog, with concrete env vars, file paths, and commands covering the common cases, matching the score-5 anchor.

5 / 5

Workflow Clarity

A clear ten-step sequence exists with deduplication and per-source try/except error handling, but the batch AI enrichment and storage-write operations lack an explicit validate→fix→retry feedback loop, and the rubric caps workflow_clarity at 3 for batch/destructive skills missing such feedback loops.

3 / 5

Progressive Disclosure

Content is a single monolithic SKILL.md with no bundle files and no one-level-deep references, and bulk material (full reference implementations, free-tier limits table, pattern catalog) that could live in separate files is inlined, but clear section headers provide usable structure, placing it at the score-3 anchor of some structure with inline content rather than the well-signaled external references of a 4-5.

3 / 5

Total

14

/

20

Passed

Description

88%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 strong description that clearly states concrete capabilities and an explicit 'Use when' trigger with natural keywords. Its only weakness is breadth — 'any public source' and 'anything' slightly dilute distinctiveness and leave a few trigger synonyms missing.

DimensionReasoningScore

Specificity

Lists multiple concrete actions — 'collects' from public sources, 'Runs on a schedule', 'enriches data with a free LLM', 'stores results in Notion/Sheets/Supabase', 'learns from user feedback', 'Runs 100% free on GitHub Actions' — giving comprehensive coverage of capabilities, matching the score-5 anchor for multiple specific concrete actions.

5 / 5

Completeness

Explicitly answers both 'what' (build an automated AI data collection agent that scrapes, enriches, stores, and learns) and 'when' ('Use when the user wants to monitor, collect, or track any public data automatically'), with concrete trigger phrases, matching the score-5 anchor.

5 / 5

Trigger Term Quality

Includes natural trigger phrasing in 'Use when the user wants to monitor, collect, or track any public data automatically' plus concrete source examples ('job boards, prices, news, GitHub, sports'), but is missing some common synonyms and variations, fitting the score-4 anchor of good keyword coverage with a few natural terms missing rather than the comprehensive synonym coverage of a 5.

4 / 5

Distinctiveness Conflict Risk

The scheduled-scrape-enrich-store niche is mostly distinct, but the broad 'any public source' and 'anything' phrasing creates minor overlap risk with general web-scraping or monitoring skills, fitting the score-4 anchor rather than the clear-niche minimal-conflict anchor of a 5.

4 / 5

Total

18

/

20

Passed

Validation

87%

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

Validation14 / 16 Passed

Validation for skill structure

CriteriaDescriptionResult

skill_md_line_count

SKILL.md is long (766 lines); consider splitting into references/ and linking

Warning

metadata_version

'metadata.version' is missing

Warning

Total

14

/

16

Passed

Repository
affaan-m/ECC
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.