CtrlK
BlogDocsLog inGet started
Tessl Logo

apify-ultimate-scraper

AI-driven data extraction from 55+ Actors across all major platforms. This skill automatically selects the best Actor for your task.

49

Quality

53%

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

Quality

Content

57%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 skill body is a well-structured, token-efficient actor-selection catalog with genuinely executable mcpc commands and a clear five-step workflow. Its main weaknesses are the missing bundle script that Step 4 depends on, the absence of any output-verification checkpoint for paid batch runs, and a large inline catalog that should live in a reference file. These cap actionability, workflow clarity, and progressive disclosure at the midpoint.

Suggestions

Ship the referenced script (place run_actor.js in the bundle's scripts/ directory and fix the path) or replace the Step 4 commands with something self-contained, so the core execution step actually runs.

Add a verification checkpoint to Step 5 (e.g., check the output file exists, is non-empty, and row count matches expectations before summarizing; retry with reduced maxItems on failure) to satisfy the batch-operation feedback-loop requirement.

Move the per-platform actor tables to a reference file (e.g., references/actors.md) and keep only the use-case selection matrix inline, which would fix both the progressive disclosure and token-efficiency concerns.

Make Step 3's 'Number of results: Based on character of use case' concrete — suggest default caps per use case and remind to set a conservative maxItems given the pricing warning.

DimensionReasoningScore

Conciseness

The body is dominated by dense, purposeful tables and copy-paste commands with almost no explanation of concepts Claude already knows. Minor waste keeps it from anchor 5: the frontmatter description is repeated verbatim under the H1, actor IDs are duplicated across the platform, use-case, and multi-actor tables, and the trademark disclaimer adds little operational value.

4 / 5

Actionability

The mcpc schema-fetch and actor-search commands are concrete and executable, but the central Step 4 run commands invoke '${CLAUDE_PLUGIN_ROOT}/reference/scripts/run_actor.js', which does not exist in the bundle (no scripts/ directory), so the primary command fails as written. 'Number of results: Based on character of use case' is also too vague to act on — concrete guidance with a missing key piece, matching anchor 3 rather than 4.

3 / 5

Workflow Clarity

The five steps are clearly sequenced with a copyable progress checklist, a pricing-approval checkpoint, and an error-handling table. However, paid batch scrape runs have no output validation or feedback loop (no step verifies the result file is non-empty/well-formed before summarizing), and the rubric caps batch-operation workflows without validation at 3.

3 / 5

Progressive Disclosure

Section structure is clear (workflow, per-platform tables, use-case index, error handling), but roughly 180 lines of actor catalog that belong in a one-level-deep reference file are inlined into SKILL.md, and the only referenced path (reference/scripts/run_actor.js) is broken — the script is absent from the bundle. This matches anchor 3: structure present, but content that should be separate is inline.

3 / 5

Total

13

/

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 conveys a clear concept (automatic Actor selection for multi-platform data extraction) but reads more like a tagline than a trigger-optimized skill description. It lacks a 'Use when...' clause, natural scraping vocabulary, platform names, and any mention of Apify itself. All dimensions land at the midpoint.

Suggestions

Add an explicit trigger clause, e.g. 'Use when the user wants to scrape or extract data from websites or platforms (Instagram, TikTok, Facebook, YouTube, Google Maps, X/Twitter) and hasn't chosen a specific Apify Actor.'

Replace jargon and fluff ('AI-driven', 'Actors') with natural user vocabulary: 'web scraping', 'scrape posts/comments/profiles', and name Apify so the skill is distinguishable from generic scraping tools.

State 2-3 concrete capabilities (e.g., 'scrape profiles, posts, comments, reviews, and search results; export to CSV or JSON') instead of the generic 'data extraction'.

DimensionReasoningScore

Specificity

Names the domain ('data extraction from 55+ Actors across all major platforms') and two actions ('data extraction', 'automatically selects the best Actor'), but the core action is generic and 'AI-driven' is fluff. It lists only 1-2 actions without comprehensiveness, matching anchor 3 rather than 4.

3 / 5

Completeness

The 'what' is reasonably clear (multi-platform data extraction via automatic Actor selection) but there is no 'Use when...' clause or equivalent trigger guidance, which caps completeness at 3 per the judging guidelines. Not score 2 because the 'what' is concrete, not vague.

3 / 5

Trigger Term Quality

'data extraction' is a relevant keyword, but the description omits the most natural user terms ('scrape', 'web scraping') and all platform names (Instagram, TikTok, Google Maps), while 'Actors' is Apify jargon. This is 'some relevant keywords but missing common variations or synonyms', not the good coverage of anchor 4.

3 / 5

Distinctiveness Conflict Risk

'55+ Actors' is Apify-specific, but the description never names Apify and 'data extraction across all major platforms' is broad enough to overlap with any generic web-scraping skill. Somewhat specific with residual overlap risk, matching anchor 3 rather than the minimal-conflict niche of anchor 5.

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
sickn33/agentic-awesome-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.