For judges & skeptics
One rule holds the whole system together:
The AI decides who deserves the reward.
Deterministic code decides how much can move.
Questions we get 🤔
Can someone prompt-inject the agent into draining the treasury?+
They can convince it to say anything — but there is nothing for it to do. The LLM has no send tool and no keys. Its only money surface is a propose_payout() request that deterministic code checks against five hard rules (budget, recipient pinning, milestone state). Worst case: a rejected proposal in the audit log.
Who custodies the funds? Is a company holding them?+
No. Both wallets are generated on the family's own machine by Tether's open-source WDK CLI — keys encrypted with a family passphrase, never leaving the device. No hosted balance to freeze or lose. Transfers are ordinary on-chain USDT transactions verifiable by anyone.
How does the AI actually verify the coding work?+
GitHub is the evidence locker: every commit carries a timestamp, author, and diff. The agent reads commit history, per-file stats, and file contents via API. Stale repos expose "I worked all week," and explanations are probed for real understanding.
What if something goes wrong? Can payouts be audited?+
Every proposal → decision → transfer triple lands in an append-only audit file plus an on-chain receipt. Parents replay exactly why each payment happened; the dashboard renders this trail directly.
New wallets have no gas — doesn't that break payouts?+
Great catch: receiving USDT is free, but sending normally requires the chain's native token. Designed for, in layers: card top-ups bundle a little native gas automatically (parents never see it); next, payouts switch to WDK's gasless ERC-4337 modules where fees are paid in USDT itself — wallets hold zero native gas, ever; and chain choice (Plasma/Stable) makes it structurally disappear. The upgrade touches one isolated file — not the agent or policy engine.
Does my kid need crypto experience?+
No. The kid experiences it as: build things → chat with a coach → get paid. The wallet is created in one step during family setup; seed phrases are shown once and stored offline. Learning what's under the hood is optional — and a great lesson.
What about partial work?+
Partial payouts are first-class. BabyShark proposes what the evidence supports — "the jumping works great, that's 60% of the milestone" — and the rest stays locked until it ships.
Is this real money or testnet?+
The demo runs on Sepolia testnet with a MockUSDT token (identical ERC-20 behavior to real USDT). The code path to mainnet USDT is identical — flip the network config. We deliberately kept real money out of a weekend prototype.
Why USDT instead of dollars in a normal app?+
Because the point is the kid owning value nobody can claw back — programmatically, across borders, without a bank account. That matters most exactly where this will be used most: LATAM families already live on USDT. Also: instant settlement means the reward lands while the win still feels good.