Secret santa generator
Curated AI skills and Claude Code plugins — reusable, versioned prompt templates and tools (skillshare/Codex compatible)
npx -y skills add rubicon/ai-skills --skill secret-santa-generatorAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
One thing to look at
- 1 stars1 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.
What its author says it does
Copied from the file, not written here
Generate Secret Santa assignment lists from participant names and optional exclusion pairs. Use when the user asks to organize a Secret Santa, assign recipients, resolve duplicate names, or validate exclusion constraints.
SKILL.md
3.6 KB, as published. Nobody here has run it
Secret Santa Generator
Generate a randomized Secret Santa assignment list from participant names and optional exclusion rules.
When To Use
Use this skill when the user:
- Wants to organize or run a Secret Santa
- Needs a randomized giver-to-recipient assignment list
- Has exclusion pairs that must not be matched
- Wants duplicate names resolved before assignments are generated
- Wants results as plain text, CSV, or JSON
Inputs
Accept participant names in any mix of these formats:
- One name per line
- Comma-separated
- Semicolon-separated
- Pipe-separated
- Tab-separated
- Space-separated
Accept exclusions in any of these formats:
EXCLUDE: Mum & Dad, Alice & BobEXCLUDE:followed by one pair per line- Flexible spacing around delimiters
Within an exclusion pair, the names may be separated by:
&|+/andvs-,
Trim leading and trailing whitespace from every name.
Rules
- Every person gives to exactly one other person.
- Every person receives from exactly one other person.
- No one is assigned to themselves.
- Exclusions are symmetric. If
Acannot give toB, thenBcannot give toA. - Ignore blank entries.
- Never silently remove duplicate names.
- If fewer than two valid participants remain after cleanup, explain why and ask the user to revise.
- If exclusions make a valid assignment impossible, explain why and suggest removing one or more exclusion pairs.
Duplicate Names
If a name appears more than once:
- Stop before generating assignments.
- Tell the user which name is duplicated and how many times it appears.
- Ask whether the duplicate is accidental or refers to different people.
- If it is intentional, ask for a designator so the names can be distinguished.
- Confirm the resolved names before continuing.
Assignment Workflow
- Normalize and deduplicate the input.
- Parse exclusions.
- Validate that at least two participants remain.
- Randomly shuffle the participant list.
- Assign each person the next person in the shuffled list, wrapping around at the end.
- Verify that no self-assignments or exclusion violations exist.
- If the assignment is invalid, retry with a different shuffle.
- If repeated retries fail, explain that the constraints are impossible and ask the user to revise the exclusions or participants.
Output Format
Present results clearly and consistently.
Recommended plain-text format:
Alice -> CharlieBob -> DianaCharlie -> AliceDiana -> Bob
Then include a short summary:
- Participant count
- Pairing count
- Exclusion count
- Validation status
If the user wants it, also provide the results as:
- CSV
- JSON
Safety And Validation
Before presenting results, confirm:
- Every participant appears exactly once as a giver
- Every participant appears exactly once as a recipient
- No one is assigned to themselves
- No exclusion rule is violated
If validation fails, do not present the result as final.
Examples
User: "Set up a Secret Santa for Alice, Bob, Carol, and Dave. Bob and Carol are married, so don't pair them." Result: A valid randomized assignment that respects the exclusion rule.
User: "Run a Secret Santa for our 12-person team, list attached." Result: Parse the names, validate the set, and generate assignments.