Inspiration

You can't know if two people actually work together until they're already in each other's lives — bad roommates, co-founder splits, wasted first dates — and we asked: what if you could run the relationship before committing to it?

What It Does

Proxy lets you create an AI behavioral replica of yourself (your Echo), simulate 12 real-life situations with someone else's Echo, and get a compatibility report — before you ever meet the actual person.

Create your Echo — a guided interview builds your behavioral profile; Claude extracts your real patterns, not what you think you are Browse the Pool — discover Echoes by context (roommate, dating, co-founder, friendship) on an interactive globe or card grid Run a Simulation — 12 real situations play out between your Echo and theirs, with live WebSocket progress streaming Get the Report — Claude synthesizes a full verdict: Flows Naturally / Works with Adjustment / High Effort / Not Recommended, with friction points, strengths, and dealbreaker flags Connect — if the simulation looks good, send a request; the other person sees your highlights before deciding; accept and chat opens

How We Built It

Frontend — React 19, TypeScript, React Router v7, Vite, Tailwind CSS v4, Figma Make (design-to-code) Backend — FastAPI, Motor (async MongoDB), Celery + Redis (simulation task queue), WebSockets AI — Claude Haiku for per-situation simulation, Claude Sonnet for report synthesis, Google Gemma 3 via Vertex AI for lightweight behavioral scoring Database — MongoDB Atlas; flexible document model, aggregation pipeline, atomic find_one_and_update task claiming Agents — Fetch.ai uAgents (each Echo is a registered Agentverse agent), orchestrator agent via Chat Protocol, ASI:One handler for pool/compatibility queries over chat

Challenges We Ran Into

Behavioral consistency — early Echo responses were generic and indistinguishable; fixed by injecting raw dimension data into every prompt and scoring in the same JSON call as the responses Token truncationmax_tokens=1024 silently broke mid-JSON; fixed with 2048 limit, rfind("}") brace detection, and a regex fallback extractor Two async runtimes — Fetch.ai uAgents + Celery have different failure modes; resolved by separating concerns: Agentverse = discovery/coordination, Celery = execution Race conditions — concurrent workers double-claimed simulations; fixed with atomic find_one_and_update as a distributed lock Identity without photos — spirit animals (50 unique, deterministically mapped to Echo numbers) gave each Echo a memorable identity that worked better than avatars in testing

Accomplishments That We're Proud Of

A fully live end-to-end pipeline — Echo creation → 12-situation simulation → AI report synthesis → connection flow, all working in production The interactive globe view with real Echo locations and animated simulation arcs ASI:One integration — Proxy is fully usable from ASI:One chat with commands like pool roommate or check compatibility ECH-5019 friendship, no app needed Compatibility reports that read like a thoughtful human wrote them, not a template A complete product loop: simulate → report → connect → chat

What We Learned

Behavioral modeling is a mirror — users said watching their own Echo in a simulation showed them patterns they didn't consciously recognise in themselves Defensive AI output — any LLM pipeline producing structured JSON needs truncation handling and a fallback path as first-class design, not an afterthought Agent architecture needs plane separation — discovery/coordination belongs to the agent layer, execution to the task queue; mixing them creates invisible failures Figma Make accelerates honest thinking — bad ideas died in 20 minutes in Figma instead of 3 hours in code, and what survived was leaner for it Over-designed UX is often right — we almost cut spirit animals as gimmicky; testing showed they created identity and recall that numbers and profile photos couldn't

What's Next for Proxy

Echo learning — Echoes that update their behavioral model from simulation feedback and user corrections over time Multi-context profiles — separate behavioral models per context (roommate vs. co-founder vs. dating) instead of one averaged profile Group simulations — 3-way and 4-way Echo simulations for team-building and co-founder matching Full Agentverse discovery — find compatible people entirely through agent-to-agent search, no web app required Post-simulation calibration — a short interview after each simulation to correct moments where the Echo felt off, closing the feedback loop

Built With

Share this project:

Updates