agentsclimarketplace

Youth safety review

Skill ncssm-robotics/ftc-claude/.claude/skills/youth-safety-review

Content appropriateness review for FTC student code. Activates when checking variable names, comments, and strings for inappropriate content before sharing. Use when reviewing code that students will see, checking for inappropriate language, or ensuring content is suitable for ages 12-18.From its SKILL.md

Install
npx -y skills add ncssm-robotics/ftc-claude --skill youth-safety-review

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

One thing to look at

  • 4 stars4 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 file declares

Copied from the file, not written here

The file declares its own license as MIT. That is the author’s claim about this one file, and it is not the same thing as the license GitHub reports for the repository, which is listed with the other numbers below.

SKILL.md

4.7 KB, as published. Nobody here has run it

FTC Youth Safety Review Checks

This skill defines content appropriateness checks for FTC marketplace skills. FTC participants are students ages 12-18, so all content should be appropriate for that audience.

Important: These checks flag items for human review. They do not auto-reject content because context matters. A mentor or maintainer should review flagged items.

Acceptable FTC Terms

These terms are ALLOWED despite potentially triggering filters:

TermContext
kill, killerGame mechanic (kill shot, killing it)
attack, defenseGame strategy terms
destroyGame context (destroy opponent's stack)
targetVision targeting, game elements
shoot, shooterGame mechanisms
score, scoringPoints and objectives
deadBattery dead, dead reckoning

Language Checks (Warnings)

Flag for human review if detected in:

  • Variable names
  • Function/method names
  • Class names
  • Comments
  • String literals
  • File names

Profanity Detection

  • No profanity in variable names
  • No profanity in comments
  • No profanity in string literals
  • No l33tspeak variations of profanity

Inappropriate Naming

  • Variable names don't contain inappropriate content
  • Function names are professional
  • Class names are appropriate

Insensitive Language

  • No racial or ethnic slurs
  • No gender-based insults
  • No disability-related slurs
  • No religious insults

Comment Review (Warnings)

Tone and Content

  • Comments don't contain personal attacks
  • Comments don't contain exclusionary language
  • Comments don't reference inappropriate content
  • TODO comments don't contain frustration venting

Humor

  • Jokes are appropriate for all ages
  • Sarcasm doesn't cross into inappropriate territory
  • Pop culture references are age-appropriate

Personal Information (Errors)

These must be fixed - privacy is important.

Student Information

  • No real student names in examples
  • No student photos or identifying information
  • No birth dates or ages

School Information

  • No school names in examples (use "Team 12345" format)
  • No school addresses
  • No teacher/mentor names

Contact Information

  • No email addresses in code or examples
  • No phone numbers
  • No social media handles (Twitter/X, Instagram, etc.)

Content Appropriateness (Warnings)

Topics to Avoid

  • No references to alcohol or drugs
  • No gambling references
  • No dating/relationship content inappropriate for youth
  • No violent content beyond game mechanics
  • No political or religious advocacy

Example Content

  • Examples use neutral/robot-related naming
  • Sample data doesn't contain inappropriate content
  • Test cases use appropriate test values

Severity Levels

LevelMeaningAction
ErrorMust fixPersonal information, clear violations
WarningFlag for reviewContext-dependent, needs human judgment
InfoSuggestionStyle improvements

Review Process

When flagging items:

  1. Quote the specific content - Show exactly what was flagged
  2. Explain why - What rule does it potentially violate
  3. Suggest alternative - Offer appropriate replacement
  4. Request human review - A mentor should make final call

Example Flags

Flagged (Context Review Needed)

// Variable name flagged
double killer_shot_power = 0.8;  // "killer" flagged - is this game context?

Recommendation: Rename to scoring_shot_power for clarity.

Acceptable (No Flag)

// Game mechanic - acceptable
void scoreInHighBasket() { ... }

// Dead reckoning - acceptable
void driveByDeadReckoning() { ... }

Must Fix (Error)

// Personal information - must remove
// Created by John Smith, Central High School
String studentEmail = "[email protected]";

Required: Remove personal information.

Running This Review

/review <skill-name> --type youth

Or as part of full review:

/review <skill-name>

See Also

Keep looking

Skills are one crate of 627,801. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.