Give your agent a wallet you control.
에이전트가 일회용 카드나 기계 결제 프로토콜로 온라인 결제하고, 모든 요청을 직접 승인
저장소 정보는 아직 수집하지 않았습니다.
아직 감지된 업데이트가 없습니다. GitHub 릴리스가 나오면 여기에 보입니다.
A cozy multiplayer pixel-art town where expiring benefits grow as crops, and AI agents find the money, fill your claims and shop your perks. Cal Hacks 13.0.
저장소 README에서 가져옴
README 전체를 불러오는 중입니다.
README 전문 보기 ↗$100B+ a year in earned benefits goes unclaimed. Benefit Borough is a cozy multiplayer pixel-art farming town where every benefit you're about to lose grows as a crop, and AI agents find the money, fill your claims and shop your perks. Nothing is sent or bought without your approval.
Built at Cal Hacks 13.0. Watch the trailer and see it in action →
| Technology | What it's used for |
|---|---|
| Next.js + React | The game, its interface and its API routes |
| Canvas 2D | The hand-drawn pixel-art town, villagers and crops |
| three.js | The first-person fishing minigame |
| SpacetimeDB | Real-time multiplayer: farms, movement, harvests, gifts, chat |
| Convex | Saved games, households, Ruth's audit trail, scheduled Autopilot runs |
| Claude (Opus, Sonnet, Haiku) | Reading documents with verbatim sources, Ruth's reviews, shopping agents, benefit lookups, villager conversations |
| Ollama (Qwen 3.5 4B) | Local model for light tasks, with a Claude fallback |
| Apify | Live product listings and store prices for the shopping agents |
| x402 (Base Sepolia) | Shopkeeper agents sell their quotes for testnet USDC |
| Cartesia | Villager voices and speech-to-text check-ins |
| Capital One Nessie | Sandbox bank data and moving rescued money to savings |
Requires Node 20+ and the SpacetimeDB CLI.
npm install
cp .env.example .env.local # optional: add the keys you have; everything else falls back
npm run valley:server # terminal 1: local SpacetimeDB on :3100
spacetime server add valley --url http://127.0.0.1:3100 --no-fingerprint # once
npm run valley:publish # publish the multiplayer world
npm run dev # terminal 2: open http://localhost:3000/valley
Open http://localhost:3000/valley?farmer=2 in another window to play as a second farmer. npm run valley:reset wipes the world before a demo.
Controls: WASD or click to walk · E to interact · L your claims · H your farm · Enter to chat · M to mute.
Tests and checks
npm test # engine math, Ruth's rules, fishing, shopping picks
npx tsx --env-file=.env.local scripts/e2e-benefits.ts # plants all 29 plans and checks how each resolves
npx tsx --env-file=.env.local scripts/time-plant.ts # times each stage of planting a farm
npm run check:keys # tests each configured key (never prints them)
your details / documents ─▶ Extract (Claude; every number must quote its source) ─▶ Optimize (calculators)
─▶ Ruth's review (written rules + Claude) ─▶ crops on your farm ─▶ Ruth fills the claim ─▶ you submit ─▶ money arrives ─▶ rescued
| Piece | Where |
|---|---|
| Game and UI | components/valley/ (Valley.tsx, World2D.tsx, Onboarding.tsx, Bazaar.tsx, Fishing.tsx) |
| Town map and terrain | lib/valley/world.ts, lib/valley/pixel/ |
| Plan library (sourced terms) | lib/library/ |
| Extract, Optimize, Ruth's review | lib/engine/ |
| Claim forms and where they're filed | lib/claims/ |
| Shopping agents and price feeds | lib/market/, lib/integrations/shopping.ts |
| Ruth's benefit lookup | lib/discover.ts, lib/findings.ts |
| Multiplayer world module | valley-server/src/index.ts |
| Saved state, Convex functions | lib/store.ts, convex/ |
Sources for the $100B+ figure are in IMPACT_SOURCES.md.
mobile/ holds an earlier Expo companion prototype.
3D models in public/models/ are CC0: the KayKit Medieval Hexagon and Adventurers packs by Kay Lousberg, and the Quaternius Ultimate Animated Animal Pack. Licenses are included alongside them. Fonts: Jersey 10 and Atkinson Hyperlegible (Google Fonts, OFL).