CtrlK
BlogDocsLog inGet started
Tessl Logo

apify-competitor-intelligence

Analyze competitor strategies, content, pricing, ads, and market positioning across Google Maps, Booking.com, Facebook, Instagram, YouTube, and TikTok.

81

2.66x
Quality

73%

Does it follow best practices?

Impact

96%

2.66x

Average score across 3 eval scenarios

SecuritybySnyk

Low

Low-risk findings worth noting

Fix and improve this skill with Tessl

tessl review fix ./plugins/antigravity-awesome-skills-claude/skills/apify-competitor-intelligence/SKILL.md
SKILL.md
Quality
Evals
Security

Quality

Content

64%Scale 1-3

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

The skill provides actionable, executable commands for competitor intelligence gathering across multiple platforms, which is its strongest aspect. However, it suffers from a bloated Actor lookup table that should be extracted to a reference file, and the workflow lacks validation checkpoints between steps (e.g., verifying schema fetch success before proceeding, validating JSON input). The error handling section is present but disconnected from the workflow rather than integrated as feedback loops.

Suggestions

Move the 30+ row Actor lookup table to a separate reference file (e.g., ACTORS.md) and keep only a brief summary or top 5-6 most common use cases inline.

Add validation checkpoints in the workflow: verify schema fetch succeeded before Step 3, validate JSON input structure before Step 4, and check run status before Step 5.

Integrate error handling into the workflow as a feedback loop (e.g., 'If run fails, check error output → fix input → re-run') rather than listing errors in a separate section.

DimensionReasoningScore

Conciseness

The massive Actor lookup table (30+ rows) is verbose and could be condensed or moved to a reference file. The boilerplate limitations section and some explanatory text add tokens without much value. However, the workflow steps and commands themselves are reasonably lean.

2 / 3

Actionability

Provides fully executable bash commands for fetching schemas, running actors in multiple output formats, and clear CLI syntax with placeholder substitution. The commands are copy-paste ready with concrete flags and arguments.

3 / 3

Workflow Clarity

The 5-step workflow is clearly sequenced with a progress checklist, but lacks validation checkpoints. There's no step to verify the Actor schema was fetched correctly, no validation of the JSON input before running, and no feedback loop for error recovery beyond a basic error handling section at the end.

2 / 3

Progressive Disclosure

The skill references scripts at `${CLAUDE_PLUGIN_ROOT}/reference/scripts/run_actor.js` suggesting a bundle structure, but no bundle files were provided. The 30+ row Actor table should be in a separate reference file rather than inline, making the main skill unnecessarily long. The structure is present but content splitting is poor.

2 / 3

Total

9

/

12

Passed

Description

82%Scale 1-3

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

This is a strong description with excellent specificity and natural trigger terms covering both analysis types and platform names. Its main weakness is the absence of an explicit 'Use when...' clause, which would help Claude know exactly when to select this skill. Adding trigger guidance would elevate this from good to excellent.

Suggestions

Add a 'Use when...' clause such as 'Use when the user asks about competitor analysis, competitive research, market comparison, or benchmarking across travel/hospitality or social media platforms.'

DimensionReasoningScore

Specificity

Lists multiple specific concrete actions: 'analyze competitor strategies, content, pricing, ads, and market positioning' across named platforms. These are clear, actionable capabilities.

3 / 3

Completeness

Clearly answers 'what does this do' with specific analysis capabilities and platforms, but lacks an explicit 'Use when...' clause or equivalent trigger guidance, which caps this dimension at 2 per the rubric.

2 / 3

Trigger Term Quality

Includes strong natural keywords users would say: 'competitor', 'pricing', 'ads', 'market positioning', and specific platform names like 'Google Maps', 'Booking.com', 'Facebook', 'Instagram', 'YouTube', 'TikTok'. These are terms users naturally use when requesting competitive analysis.

3 / 3

Distinctiveness Conflict Risk

The combination of competitor analysis with specific platforms (Google Maps, Booking.com, social media) creates a clear niche. This is unlikely to conflict with generic marketing or social media skills due to the explicit competitive analysis focus and platform specificity.

3 / 3

Total

11

/

12

Passed

Validation

90%

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

Validation — 10 / 11 Passed

Validation for skill structure

CriteriaDescriptionResult

frontmatter_unknown_keys

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

Warning

Total

10

/

11

Passed

Repository
popey/claude-code-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.