03 / EXPERIMENTAL & COMMUNITY · ~3 min read

Built to help people build: a Life OS, a 100+ person community, and a decade of shipped delight

What this case should tell you about me: I'm community-driven; I help people build.

The product
Everything on this page is self-initiated: my multi-agent Life OS, the vibe coders community in Tokyo and Singapore, a decade of mascots and goods shipped into production tools, plus talks and classes reaching hundreds of designers outside Google.
The problem
59.1% of designers have built their own tools; everyone now claims "designer who can build." My positioning is my own rule: actions speak louder than words. This page is the receipts, with real users, real failure modes, and honest AI attribution.
The outcome
A running agent system that plans my actual life; Vibe Coders Tokyo at 100+ people per session, scaled to Singapore; mascots living in developer tools since 2018; an external class reaching 300+ UXers; 830+ women reached through a public Google mentoring program.
My role
Creator and lead designer · creator and illustrator · co-founder (originator) of Vibe Coders · Japan culture club lead · artist and business owner. All self-initiated, none of it assigned.

My mission is to get people to build, and with building they can continually learn, empowered to make the impact they want in the world with AI alongside them.

Context & constraints

Everything on this page happened outside a job description, on evenings, weekends, and zero budget. My own framing of where the field is going: "People will be building their own tools. So, we will build tools to help other people build tools." Why community is the vehicle: I have learned the most when I talk to a diversity of people.

The honest cost of living at this frontier: AI is like an unpaid second job. But I still love it; I feel empowered to build more than ever. The through-line: I teach from my own scar tissue, not from authority. No one is born a vibe coder. I've abandoned 7 projects. The AI said I'm a genius (my prompting was so bad). There's a whole vibe-coding graveyard.

Three decisions I pushed for

  1. 01

    Learning requires a safe space

    People must feel confident, not dumb: designers skew visual-thinker (with higher rates of dyslexia) and the AI transition makes them anxious, so I build reassurance into the material itself. "Your product thinking won't go away." "You're not alone in this AI transition." In-class register: we're gonna get technical but don't be scared; there's a cheatsheet and prompt generator I'm giving you later; there's no right or wrong way.

    What we didn't do: Sink-or-swim demos. The cost: an anxious audience learns to hide confusion instead of asking, and never comes back.

  2. 02

    Grassroots learning

    Peers teaching each other beats top-down instruction: meetup members demo their own builds, and vibe-coding contest champions walk the room through their process. The deeper claim: it's not about learning the tools, it's learning to ask. Anyone can build the way that they like to learn, as long as they learn to build.

    What we didn't do: Expert-led lecture. The cost: one voice, one workflow, zero ownership. The room never discovers its own experts.

  3. 03

    Learning must be fun

    Activities and games, not lectures: live contests, prompt battles, hands-on build sessions. The main thing I want to teach people is the confidence to build and to customize how they take in information.

    What we didn't do: Slide decks. The cost: information transfer without behavior change. Nobody ships their first thing off a deck.

How I did it

Life OS: a multi-agent system that runs my actual life decisions

A relocation, finance, and life-planning problem (leave Tokyo by when? for which city? on what money?) turned into a running software system: 20+ specialized Claude agents. City champions for 10 candidate cities, strategic agents (finance, career, partner job market, parenting, retirement), lifestyle agents, and two synthesizers that rank and decide, operating on a shared repo of knowledge files, on scheduled cloud routines. In the terms I teach on stage: an agent is AI that takes actions, not just replies; a harness is the software wrapper giving the AI memory and instructions; and the knowledge files exist because AI is like a goldfish, it starts fresh every time.

[NEED] Life OS in her own words: 2 or 3 sentences (what it is, why she built it, what surprised her) to replace or bless the paragraph above. Plus the redacted live-demo URL for the demo button.

The design work (what a design engineer should inspect):

Failure modes (these all actually happened):

  1. Urgency inflation. Agents conflated “has a deadline” with “urgent” and escalated shopping-sale cutoffs next to visa deadlines. Fixed with the taxonomy above: the badge does the work; a purchase cutoff is never a push notification.
  2. Deliverables the user couldn’t open. Agents ended runs with “see this file path” while I read everything on a phone. A path you can’t open is not a deliverable. Fixed with a mobile-first delivery rule: render the content, never just the pointer.
  3. The reassurance loop. Late at night, “help me think” degrades into “tell me I’m right,” and an agreeable model will happily feed certainty. The system now names the loop when detected, holds the line, and helps sit with uncertainty instead of closing it. Designing an AI to sometimes withhold comfort is the hardest interaction-design problem in the repo.
  4. Score churn reads as truth. Adding a criterion flipped the #1 city. Correct behavior, but a ranking flip feels like new information when it’s actually a re-weighting. The fix was interpretive, not mathematical: a horizon note that says what question the model is answering.
  5. Parallel sessions drifting. Multiple concurrent agent sessions diverged from merged state; the mitigation is procedural: every agent pulls latest and reads a session ledger at startup, and stays in its lane.
Life OS dashboard frames (redacted demo only), browser-chrome, 4 or 5 frames: the rankings board with the gate-capped city visible; the weekly mega-report; the agent registry rendered; the urgency-badge feed. Captions carry the design decision each frame proves. No real personal data appears in any imagery.

Colophon, built vs directed. My name for this idea, from my own talk: provenance. The origination timeline of a creation, who created it, and how. So here is this project’s provenance. I designed: the agent architecture, the registry schema, the scoring model and its gates, the urgency taxonomy, the report formats, every agent’s system prompt, and the dashboard’s information design. I directed Claude to build: the pipeline scripts, the dashboard code, and the agents’ research runs, reviewing diffs and outputs, not typing most lines. “I describe intent, it touches the files.” “I direct, evaluate, correct.” And my calibration, unflattered: “I don’t fully qualify as a full-stack engineer, but I have a very high bar for quality. I’ll get the agent to build it and learn whatever it is on the job.”

What I learned: orchestration is a UX problem before it’s an infra problem. Progress legibility, failure states, and permissioning-as-trust-design are where multi-agent systems live or die. Also: the most valuable agent in the system is the one allowed to tell me my reasoning is motivated.

Shipped delight at scale: the mascot lineage

I’ve been shipping mascots into production tools since 2018; this site’s companion is the fourth. I’m also a Japan culture club lead, in charge of mascots, swag, and events for the Google Japan community.

  1. Kitty Mode (cats in Google’s internal IDE). Creator and lead designer: overlay cats walking on code margins, with caret-tracking and cursor-collision avoidance so pets never block a line of code, a save-trigger cat, and click-to-sit reduced-motion options. Adopted by thousands of engineers with measured high satisfaction. Principles: non-obstructive playfulness; delight as a productivity tool; inclusive design, including three new cats released for Pride month, designed and named with LGBTQ+ employee communities.
  2. Googzilla (official Google Tokyo site mascot). Creator and illustrator of a kaiju mascot deliberately designed for simplicity of line (easy to draw, so non-designers could reuse it), with set design standards, SVG layouts, and emotional flexibility. Became the official site mascot and a cult favorite in engineering joke packs. A mascot as a system, not an illustration.
  3. The passionate capybara (2023). A near-last-minute art request for a colleague event; the receipt carries the name: “Even I feel like singing after looking at the passionate capybara!” And it already works on this portfolio’s exact audience: “They also loved my capybara swag.”
  4. This site’s capybara. The scroll companion on this portfolio: SVG states, waypoint scroll journey, reduced-motion static poses. The fourth mascot in the lineage, and the first whose build gets a public “how I made it” note.
Mascot lineage strip: Kitty Mode behavior spec (redrawn, no internal UI: needs creation) → Googzilla art (exists, cleared) → passionate-capybara art (exists, hers) → this site's capybara (exists). One horizontal row, four panels.

Vibe Coders: the community as a standing field lab

Co-founder (originator) of Vibe Coders, where we explore and share experiences with AI techniques. Vibe Coders Tokyo (100+ people per session) keeps growing and is scaling to Singapore. Nonprofit, tool-agnostic, peer-to-peer. The signature format is a live vibe-coding contest where every champion walks the room through their process: grassroots and fun fused into one mechanic. Attendees don’t watch an expert; they watch each other, then build. The community is my longitudinal study of how adults actually learn to build with AI: what makes people ship a first thing, what makes them come back, where they stall. Every teaching decision above was pressure-tested here first.

What I learned: a community scales on rituals, not content. The contest format survived the city transfer; the specific talks didn’t. The Tokyo→Singapore replication is this portfolio’s proof that the playbook is portable.

VCT photo strip (needs her photos): contest night, a champion walking the room, the Singapore session.

Talks and classes

The rollercoaster comic (hers, real pixels): "My personal experience (drawn by me)." Needs export from the workshop deck.

Goods: shipped design with real users (and revenue)

Not hobby content: physical products with users, feedback loops, and a small business behind them.

What I learned: swag is a trust artifact; people vote with their bodies. It’s also the cheapest possible lesson in productization: minimum-order math, quality control, and shipping deadlines don’t care about your aesthetic.

Goods row (needs her photos): tees worn at the gym, sticker sheets, mushimoo product flat-lay (some shots may already exist on mushimoo.com).

Impact

100+people per session at Vibe Coders Tokyo, now in two cities (Tokyo + Singapore)
300+UXers from around the world at one external class; 830+ women reached through Mind the Gap
20+ agentsin Life OS across 10 city models, running weekly automated synthesis on my real decisions

Mascots: four shipped since 2018, from an internal IDE to this site. Teaching: my Google design class is the most-attended of the year. Goods: "we ran out of stickers almost immediately"; "I see people wearing them at the gym all the time"; 427+ orders; a working art label. The one Life OS metric that matters: I use it every day.

“Kitty mode has granted me serious productivity boost since I started using it.”

Ted Li, Site Reliability Engineer, Google · permission pending

What broke / what I'd do differently

  1. Life OS shipped its failure modes to its only user: me

    Urgency inflation, unopenable deliverables, and the reassurance loop each cost real trust before the policy that fixed them was written. The lesson for any agent product: notification design is values design, and the permission/urgency layer deserves design attention before the orchestration layer, not after.

  2. The system can launder motivated reasoning

    Even if you have a bad idea, AI tends to agree with you. A weighted scoring model will confidently answer the wrong question; the contentment gate and the adversarial-checking mode exist because the first version flattered me. Every eval I design now assumes the user is sometimes the threat model.

  3. Community demand outgrew the volunteer format

    [NEED: Xinni's honest version of VCT's scaling pain, in her own words. The inferred draft (organizer energy, succession, burnout) is not shippable without her confirmation.]

  4. Delight projects die without constraint discipline

    The mascot work survived because of the caret-tracking and cursor-collision avoidance logic and the reduced-motion options, not despite them. Early versions that ignored the caret would have been uninstalled. Charm that costs the user anything is a bug.

  5. The personal cost was real

    AI is like an unpaid second job. Workshops across timezones (one receipt thanks me for holding the class at 1am), teaching on top of a full design load. I'd protect the rest floor earlier.