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.

65

1.23x
Quality

47%

Does it follow best practices?

Impact

99%

1.23x

Average score across 3 eval scenarios

SecuritybySnyk

Advisory

Suggest reviewing before use

Optimize this skill with Tessl

npx tessl skill review --optimize ./.trae/skills/raffle-winner-picker/SKILL.md
SKILL.md
Quality
Evals
Security

Quality

Discovery

82%

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 solid description with strong specificity and excellent trigger terms that naturally match user requests. Its main weakness is the lack of an explicit 'Use when...' clause, which would help Claude more confidently select this skill. The domain is distinctive enough to avoid conflicts with other skills.

Suggestions

Add an explicit 'Use when...' clause, e.g., 'Use when the user asks to pick a random winner, run a raffle, select contest winners, or randomly choose from a list of participants.'

DimensionReasoningScore

Specificity

Lists multiple concrete actions: picking random winners, working with lists/spreadsheets/Google Sheets, handling giveaways/raffles/contests, and ensuring fair/unbiased selection with transparency.

3 / 3

Completeness

The 'what' is clearly answered (picks random winners from various sources for giveaways/raffles/contests), but there is no explicit 'Use when...' clause or equivalent trigger guidance, which caps this at 2 per the rubric.

2 / 3

Trigger Term Quality

Includes strong natural trigger terms users would say: 'random winners', 'giveaways', 'raffles', 'contests', 'lists', 'spreadsheets', 'Google Sheets'. These cover common variations of how users would phrase such requests.

3 / 3

Distinctiveness Conflict Risk

This occupies a very clear niche — random winner selection for giveaways/raffles/contests. It's unlikely to conflict with general spreadsheet or data processing skills due to the specific domain of randomized selection and contest-related terminology.

3 / 3

Total

11

/

12

Passed

Implementation

12%

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

This skill is heavily padded with redundant sections and explanatory content that Claude doesn't need, while lacking the most critical element: actual executable implementation guidance. It reads more like a marketing page or product description than an actionable skill. The mock output example shows what a response should look like but provides no concrete code or commands for achieving it.

Suggestions

Replace the mock output example with actual executable code showing how to read from CSV/Google Sheets and perform cryptographically random selection (e.g., using Python's `secrets.choice()` or `random.SystemRandom`).

Consolidate the redundant sections ('When to Use', 'What This Skill Does', 'Features', 'Common Use Cases', 'Tips', 'Privacy & Fairness') into a single concise section — most of this content is obvious or repeated.

Add concrete implementation for weighted selection and exclusion handling with actual code, not just prompt examples.

Add validation steps such as confirming entry count, checking for duplicate entries in source data, and verifying data format before selection.

DimensionReasoningScore

Conciseness

Extremely verbose with extensive repetition. The 'When to Use', 'What This Skill Does', 'Features', 'Common Use Cases', and 'Tips' sections largely overlap and restate obvious information. Claude doesn't need to be told what a raffle is or that random selection should be unbiased. The 'Privacy & Fairness' checklist restates things already mentioned. Much of this content is padding.

1 / 3

Actionability

Despite being a technical skill, there is zero executable code. The 'How to Use' section shows example prompts (not code), and the example output is a fabricated mock response, not actual implementation guidance. There are no concrete instructions on how to actually implement cryptographically random selection, read from Google Sheets, parse CSV files, or handle weighted selection. Claude is told what to do conceptually but not how.

1 / 3

Workflow Clarity

The 'Example Workflows' section provides numbered steps for social media giveaways, event raffles, and team assignments, which gives some sequential structure. However, there are no validation checkpoints (e.g., verifying the sheet was read correctly, confirming entry count before selection) and no error handling or feedback loops for common failure modes like inaccessible sheets or malformed data.

2 / 3

Progressive Disclosure

The content is a monolithic wall of text with no references to external files. Everything is inline in one long document with many sections that could be consolidated or split. The structure is flat with redundant sections rather than a concise overview pointing to detailed materials.

1 / 3

Total

5

/

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.

Validation10 / 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
Lingjie-chen/MT5
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.