CtrlK
BlogDocsLog inGet started
Tessl Logo

apify-audience-analysis

Understand audience demographics, preferences, behavior patterns, and engagement quality across Facebook, Instagram, YouTube, and TikTok.

46

Quality

48%

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 ./plugins/antigravity-awesome-skills-claude/skills/apify-audience-analysis/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.

This skill provides strong actionability with executable commands and a comprehensive Actor selection table, making it practical for audience analysis tasks. However, it lacks validation checkpoints in the workflow (e.g., verifying schema fetch results, validating inputs before running), and the large inline Actor table and generic boilerplate sections reduce conciseness. The absence of bundle files makes it impossible to verify referenced script paths.

Suggestions

Add validation checkpoints after Step 2 (verify schema was fetched successfully) and after Step 4 (verify results are non-empty before summarizing), and integrate error handling into the workflow steps rather than as a separate section.

Move the 18-row Actor lookup table to a separate reference file (e.g., ACTORS.md) and keep only a brief summary or the most common 4-5 actors inline.

Remove the generic 'Limitations' section — these are standard Claude behaviors that don't need restating and consume tokens without adding skill-specific value.

DimensionReasoningScore

Conciseness

The skill is reasonably efficient but includes some unnecessary elements: the large Actor table could be more concise, the 'Limitations' section contains generic boilerplate that doesn't add value, and the 'When to Use' section partially restates the obvious. The checklist and workflow steps are well-structured but slightly verbose.

2 / 3

Actionability

Provides fully executable bash commands for fetching schemas, running actors in multiple output formats, and clear error handling steps. The Actor selection table maps user needs directly to specific Actor IDs, and the run commands are copy-paste ready with clear placeholder substitution.

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 if the run produces unexpected or empty results. The error handling section is separate rather than integrated into the workflow.

2 / 3

Progressive Disclosure

The skill references scripts at `${CLAUDE_PLUGIN_ROOT}/reference/scripts/run_actor.js` but no bundle files are provided to verify these exist. The large Actor lookup table (18 rows) could be split into a separate reference file. The content is reasonably organized with clear sections but is somewhat monolithic for its length.

2 / 3

Total

9

/

12

Passed

Description

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

The description identifies a clear domain (social media audience analysis) and names specific platforms, which is helpful for differentiation. However, it lacks concrete actions (listing categories rather than specific operations), misses a 'Use when...' clause entirely, and could benefit from more natural trigger terms that users would actually say when requesting this type of analysis.

Suggestions

Add an explicit 'Use when...' clause, e.g., 'Use when the user asks about social media audience insights, follower demographics, engagement analytics, or platform-specific audience data.'

Replace abstract categories with concrete actions, e.g., 'Analyzes follower demographics, segments audiences by behavior, measures engagement rates, and compares audience metrics across Facebook, Instagram, YouTube, and TikTok.'

Include additional natural trigger terms users might say, such as 'social media analytics', 'follower insights', 'audience breakdown', 'social metrics', or 'platform analytics'.

DimensionReasoningScore

Specificity

Names the domain (social media audience analysis) and some actions (understand demographics, preferences, behavior patterns, engagement quality) across specific platforms, but these are more like categories than concrete actions. It doesn't list specific operations like 'generate demographic reports', 'segment audiences', or 'track engagement metrics'.

2 / 3

Completeness

It describes 'what' at a moderate level but completely lacks a 'when' clause or any explicit trigger guidance. There is no 'Use when...' or equivalent statement telling Claude when to select this skill. Per the rubric, a missing 'Use when...' clause caps completeness at 2, and since the 'what' is also somewhat vague, this scores a 1.

1 / 3

Trigger Term Quality

Includes relevant platform names (Facebook, Instagram, YouTube, TikTok) and some natural terms like 'audience demographics', 'engagement', and 'behavior patterns'. However, it's missing common user variations like 'social media analytics', 'follower insights', 'audience analysis', or 'social metrics'.

2 / 3

Distinctiveness Conflict Risk

The mention of specific platforms (Facebook, Instagram, YouTube, TikTok) and the focus on audience understanding provides some distinctiveness, but it could overlap with general social media analytics skills, marketing skills, or platform-specific skills. The lack of explicit triggers increases conflict risk.

2 / 3

Total

7

/

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.