CtrlK
BlogDocsLog inGet started
Tessl Logo

review-site-scraper

Scrape product reviews from G2, Capterra, and Trustpilot using Apify. Single script with platform dispatch. Use when you need to monitor competitor reviews, track product sentiment, or gather customer feedback from review sites.

73

Quality

92%

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

SKILL.md
Quality
Evals
Security

Quality

Content

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

Excellent action-oriented content: fully executable examples for all three platforms, a complete and accurate CLI reference, and no token waste on concepts Claude already knows. The only gaps are operational robustness (no timeout/partial-result/error guidance for a batch, cost-incurring API workflow) and a 55-line inline output schema that could live in a reference file.

Suggestions

Add a short 'Failure handling' note to Quick Start: what to do when an Apify run times out (--timeout), returns partial results, or fails — e.g. retry with a smaller --max-reviews or check the run status, since Capterra is pay-per-result.

Move the per-platform output schema JSON blocks to references/output-schema.md and keep one compact example inline, so SKILL.md stays a lean overview with a well-signaled one-level-deep reference.

Add an explicit pointer to the script itself (e.g. 'Implementation: scripts/scrape_reviews.py — single-file, stdlib only') so the bundle file is discoverable outside the command examples.

DimensionReasoningScore

Conciseness

The body is lean and assumes Claude's competence: no explanation of what Apify or scraping is — every line is skill-specific contract (env var requirement, three executable commands, actor IDs, a flag table, per-platform output field schemas). This matches the level-5 anchor ("every token earns its place"); it is not level 4 because there is no over-explanation to trim anywhere — the JSON schema blocks are the output contract, not padding.

5 / 5

Actionability

Quick Start gives copy-paste-ready commands for all three platforms with real argument shapes, including the non-obvious Capterra case ("--company-name 'HubSpot CRM'" — company name, not URL), and the CLI table documents every flag with defaults. The referenced script exists in the bundle (scripts/scrape_reviews.py) and its argparse matches the documented flags exactly. This matches the level-5 anchor (fully executable, specific examples covering the common cases); level 4 would leave minor gaps, and none are present.

5 / 5

Workflow Clarity

This is a single-action skill (run one script) with an unambiguous Quick Start, which the simple-skill exception would allow to score 5 — and it is read-only rather than destructive, so the hard cap of 3 for destructive skills without validation does not apply. It lands at 4 instead because the operation is a batch API fetch (default 50 reviews, pay-per-result on Capterra, 300s timeout) with no guidance on handling timeouts, partial results, or failed runs — the level-4 anchor's "minor validation gaps". It is not 5 because there are no explicit checkpoints or error-recovery steps, and not 3 because the single action is fully specified rather than merely sequenced.

4 / 5

Progressive Disclosure

Sections are well-organized (Quick Start, Supported Platforms, CLI Reference, Normalized Output Schema) and the one bundle file is referenced via executable command paths that resolve to the real scripts/scrape_reviews.py. This matches the level-4 anchor (good structure, most content appropriately placed, minor organization gaps): the ~55-line output-schema block sits fully inline rather than in a reference file, and the script is only pointed to inside command examples rather than with an explicit "see scripts/... for details" signal. It is not 5 because the body exceeds 50 lines, so the small-skill automatic 5 does not apply and the schema content is a plausible split candidate.

4 / 5

Total

18

/

20

Passed

Description

90%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: it names the exact platforms, the tool, and explicit use-when triggers covering monitoring, sentiment tracking, and feedback gathering. The only deductions are the single-verb action list and a second-person "Use when you need to..." phrasing where "Use when the user needs to..." would satisfy the third-person voice rule.

DimensionReasoningScore

Specificity

"Scrape product reviews from G2, Capterra, and Trustpilot using Apify" names the domain, the tool, and three concrete targets — noticeably above the level-3 anchor, which would be a bare one-verb description without named platforms. However, it lists only a single action verb (scrape) rather than the several distinct actions of the level-4 anchor ("Extracts text... fills forms, converts pages"), and the second-person phrasing "Use when you need to monitor competitor reviews" triggers the rubric's -1 voice penalty, capping this at 3.

3 / 5

Completeness

Both questions are explicitly answered: the "what" is "Scrape product reviews from G2, Capterra, and Trustpilot using Apify" and the "when" is the concrete trigger clause "Use when you need to monitor competitor reviews, track product sentiment, or gather customer feedback from review sites". This mirrors the level-5 anchor example almost exactly, and is above level 4 because the triggers are specific rather than generic.

5 / 5

Trigger Term Quality

The description covers the natural terms users would actually say: the exact site names "G2, Capterra, and Trustpilot", plus "competitor reviews", "product sentiment", "customer feedback from review sites". This matches the level-5 anchor (comprehensive natural-term coverage including synonyms) — it is not at level 4 because the platform names themselves are the strongest possible trigger terms and no common variation is missing.

5 / 5

Distinctiveness Conflict Risk

Naming three specific review platforms (G2, Capterra, Trustpilot) carves out a clear niche with distinct triggers and minimal overlap with any generic scraping or sentiment skill. It is not level 4, because that anchor reserves overlap risk with closely related skills, and no closely related skill would share these platform-specific triggers.

5 / 5

Total

18

/

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