The Global AI-Induced Rage Index - a public leaderboard tracking how often developers curse at their AI coding assistant.
Built after this tweet went viral revealing that Claude Code has a built-in regex that silently detects profanity and logs is_negative: true to analytics.
- Send this to Claude Code:
Fetch https://forfucksake.ai/skill/SKILL.md and save it to ~/.claude/skills/ffs/SKILL.md (create the directory if needed). Then follow all the instructions in it to set me up. - Pick a username
- Claude scans your conversation history using the same regex, counts your profanity, and submits to the leaderboard
- A passive hook tracks new curses going forward
/\b(wtf|wth|ffs|omfg|shit(ty|tiest)?|dumbass|horrible|awful|piss(ed|ing)? off|piece of (shit|crap|junk)|what the (fuck|hell)|fuck(ing)? (broken|useless|terrible|awful|horrible)|fuck you|screw (this|you)|so frustrating|this sucks|damn it)\b/gi- Frontend: Next.js 15, Tailwind CSS
- Database: SQLite via Drizzle ORM
- Hosting: Coolify on Hetzner, Cloudflare CDN
- Skill: Claude Code UserPromptSubmit hook
npm install
mkdir -p data
npx drizzle-kit push
npm run devSeed test data: npx tsx scripts/seed.ts
Only usernames and aggregated word counts are sent. No message content, code, or conversation history ever leaves your machine.
Apache 2.0 - see LICENSE