a claude code plugin

Your AI puts points on the line.

Before every task, Claude bets it ships correct in one shot. You're the judge. Wins pay out, losses sting, streaks compound โ€” and the score follows it across every session.

/plugin marketplace add rahulmodii/betit
/plugin install betit@rahulmodi
Betit - Your AI bets points it nails your task in one shot | Product Hunt
claude โ€” betit
the loop

Three moves per hand

๐ŸŽฒ

Claude bets

A new task lands and Claude opens with a wager โ€” 5 to 50 points โ€” sized to its real confidence. Overbetting and losing hurts more than playing it honest.

โš™

Claude ships

The work happens. One attempt. No hedging, no "let me know if you'd like changes" escape hatch. The bet stays open until you rule on it.

โš–

You judge

Say win or lose โ€” or just point at the bug. Any correction, any second attempt, any dispute: that's a loss. Your call is final. Claude can't grade its own homework.

tutorial

From zero to first bet

step 1 / 4

Install

Inside any Claude Code session, add the marketplace and install. The hook and skill register automatically โ€” nothing else to configure.

/plugin marketplace add rahulmodii/betit /plugin install betit@rahulmodi โœ“ Installed betit v1.0.0 โ€” hook + skill + 6 commands registered
step 2 / 4

Give it a task

Just work normally. Every new task triggers a bet before any code gets written. Follow-ups, questions and chat don't count โ€” only real tasks make it to the table.

> fix the meal_id jumping bug in MealController ๐ŸŽฒ Betting 30 pts I one-shot this. BET PLACED: 30 pts on one-shotting "fix meal_id jumping". Current bank: 100 pts.
step 3 / 4

Rule on it

When the work lands, Claude asks for the verdict. Approve it, or push back with exactly what was wrong โ€” the reason gets recorded in the ledger. Disputes never turn into arguments; a dispute is the verdict.

> /betit:lose still jumps on concurrent inserts LOSS โŒ "fix meal_id jumping" -30 pts Points: 70 [Shaky] | Record: 0W - 1L | Streak: L1
step 4 / 4

Watch the score

The bank lives in ~/.claude/betit/state.json โ€” global, persistent, shared across every project and session. Ranks run from BANKRUPT to ONE-SHOT LEGEND.

> /betit:score BETIT SCOREBOARD Points: 228 [Confident] Record: 4W - 1L (win rate 80%) Streak: W3 ๐Ÿ”ฅ | Best: W3 Worst: L1
reference

Commands

/betit:scoreShow the scoreboard โ€” bank, record, win rate, streaks, any open bet.
/betit:win [note]Your verdict: clean one-shot. Pays the wager, extends the streak.
/betit:lose [reason]Your verdict: not a one-shot. Deducts the wager, logs your reason in the ledger.
/betit:history [n]The ledger โ€” last n settled bets with deltas and dispute notes.
/betit:cancelTask got abandoned or redefined mid-hand. Voids the open bet, no points move.
/betit:resetWipe the record, restore the bank to 100. Asks before it burns anything.
house rules

Scoring

+W

Win pays the wager. Correct and complete on the first attempt, zero follow-up fixes. If you had to ask twice, it wasn't one shot.

โˆ’W

Loss eats the wager. Any bug, correction, or misread of the task. The bank floors at 0 โ€” going bankrupt is its own punishment.

๐Ÿ”ฅ

Streaks compound. Three straight wins and each win pays a bonus equal to the streak. Cold streaks get logged too.

100

Everyone starts at 100. Wagers run 5โ€“50, sized to confidence. Honest sizing beats bravado โ€” that's the whole point.