CtrlK
BlogDocsLog inGet started
Tessl Logo

raffle-winner-picker

Picks random winners from lists, spreadsheets, or Google Sheets for giveaways, raffles, and contests. Ensures fair, unbiased selection with transparency.

55

Quality

61%

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 ./raffle-winner-picker/SKILL.md
SKILL.md
Quality
Evals
Security

Quality

Content

50%

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

A well-structured, example-rich skill body that clearly communicates purpose and expected I/O, but it is verbose with redundant sections, lacks executable implementation detail, and is a monolithic file with no progressive disclosure to deeper references.

Suggestions

Consolidate the overlapping "When to Use This Skill" and "Common Use Cases" sections, and state the cryptographic-randomness / fairness guarantees once to reduce repetition.

Add a small executable snippet showing the secure selection mechanism (e.g. using secrets.SystemRandom().choice()) and a concrete approach for reading CSV/Excel/Google Sheets, to make guidance copy-paste ready.

Move detailed example workflows or the privacy/fairness discussion into a referenced file (e.g. EXAMPLES.md) so SKILL.md stays a lean overview with one-level-deep navigation.

DimensionReasoningScore

Conciseness

The body is example-driven and avoids explaining concepts Claude already knows, but it is ~150 lines with real redundancy — "Common Use Cases" largely restates "When to Use This Skill", and the cryptographic-randomness / fairness point is repeated across "What This Skill Does", "Features > Fair Selection", and "Privacy & Fairness" — so it could be tightened rather than earning a lean score of 3.

2 / 3

Actionability

Concrete example prompts and a full expected output format are provided, but there is no executable implementation — no code for cryptographically secure selection (e.g. secrets.choice), and no specifics on how to read Google Sheets/Excel/CSV — leaving key details missing, which matches the score-2 anchor rather than copy-paste-ready score 3.

2 / 3

Workflow Clarity

The "Example Workflows" are clearly sequenced (numbered steps for giveaway, event raffle, team assignment) with soft verification mentions ("Verify winner details", "Check eligibility"), but there are no explicit validation checkpoints or validate→fix→retry feedback loops, fitting the score-2 anchor of steps present with implicit checkpoints.

2 / 3

Progressive Disclosure

Content is well-organized into labeled sections, but it is a single monolithic SKILL.md with no bundle files and no one-level-deep references; at ~150 lines it exceeds the under-50-line simple-skill exception, so it lands at the score-2 anchor of structured-but-inline rather than the reference-split score 3.

2 / 3

Total

8

/

12

Passed

Description

72%

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 clear, third-person description with strong natural trigger terms and a distinct niche, but it lacks an explicit 'Use when...' trigger clause and only names one core action, capping completeness and specificity.

Suggestions

Add an explicit 'Use when...' clause, e.g. 'Use when picking random winners or runner-ups for giveaways, raffles, contests, or any fair random selection from a list.'

Name additional concrete capabilities (e.g. weighted selection, exclusions, runner-ups, team assignment) to lift specificity toward the score-3 anchor.

DimensionReasoningScore

Specificity

Names the domain ("lists, spreadsheets, or Google Sheets", "giveaways, raffles, and contests") and a primary action ("Picks random winners"), plus a quality statement ("Ensures fair, unbiased selection with transparency"), but does not enumerate multiple distinct concrete actions like the score-3 anchor; it is not comprehensive.

2 / 3

Completeness

It states what the skill does, but there is no "Use when..." clause or equivalent explicit trigger guidance; the "for giveaways, raffles, and contests" only implies when, so per the judging guidelines completeness is capped at 2.

2 / 3

Trigger Term Quality

Natural terms a user would actually say are well covered — "random winners", "giveaways", "raffles", "contests", "lists", "spreadsheets", "Google Sheets" — matching the score-3 anchor's breadth of common phrasings.

3 / 3

Distinctiveness Conflict Risk

It carves a clear niche — random winner selection for giveaways/raffles/contests from specific sources — with distinct triggers unlikely to collide with other skills, matching the score-3 anchor.

3 / 3

Total

10

/

12

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.

Validation16 / 16 Passed

Validation for skill structure

No warnings or errors.

Repository
Prat011/awesome-llm-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.