Inspiration
Heading home from playing pickleball at Rice University, an ad for Facebook Events popped up on YouTube. I turned to my friend Muhammad and said, "Facebook Events looks fun—like a real-world Corner or MicUp (virtual hangout games). Too bad Facebook is mostly for older generations."
That comment hit home. After graduating high school, our close friend group scattered across colleges hours apart. Spontaneous hangouts were suddenly replaced by fragmented, overlapping group chats where plans constantly died. To see if other students felt the same, we surveyed 12 teams at this hackathon: 10 out of 12 confirmed that coordination friction is the #1 reason their plans fail. Nobody wants to publicly shoot down an expensive venue or admit a tight budget in front of everyone.
We built Meta Orbit to fix this: an autonomous social copilot that negotiates in the background so friends can stop managing logistics and actually meet up in person.
How We Built It
Orbit bridges two key phases of human connection: Consensus (The Call) and Convergence (The Meetup).
Real-Time Diarisation & Speech (Muse Voice Transcribe + MMS-TTS): In a Discord voice channel (our stand-in for Messenger calling), Orbit captures isolated 24 kHz audio streams per speaker. Muse Voice Transcribe streams real-time transcripts to our React live dashboard while Muse Spark logs running notes. When someone asks "Any questions, Meta?", Orbit speaks only the missing logistical gaps into the call using Meta’s open-source MMS-TTS.
Zero-Ego Consensus Engine (Muse Spark): Orbit privately DMs each participant for their private budget ceiling, dietary needs, and availability window. Muse Spark then solves the group constraint:
Optimization Target: (Venue*, Time*)
- Cost(Venue*) ≤ min(Individual Private Budgets)
- Menu(Venue*) ⊇ All Collective Dietary Needs
- Time* ∈ Overlapping Free Hours
The group only sees the unanimous winning option—no one ever has to disclose a tight budget publicly.
Deterministic Privacy Guard: Private answers live strictly in
data/private/. A code-level guard (privacyGuard.js) inspects all text before it hits group channels or Google Calendar invites, blocking any message that references unspoken constraints.Transit Sync & ETA Engine (Muse Connectors): On event day, friends share live location via OwnTracks. When traffic causes route drift:
Trigger Condition: Drift = (Projected Arrival - Planned Arrival) > 5 mins
Muse Spark calls exposed tool schemas (update_group_eta, ping_late_attendee) to broadcast proactive, natural updates to Discord.
Challenges We Faced
- LLM Privacy Leakage: Prompts like "don't reveal budgets" fail edge cases. If someone sets a $15 budget, an LLM might say, "Picked tacos to keep it under $15!" We solved this by decoupling private storage and building a deterministic code gate that swaps in sanitized templates if private tokens leak.
- Real-Time Audio Streams: Ingesting simultaneous multi-user Discord voice streams without packet clipping required tight buffer management and an automated fallback pipeline to batch file transcription if a socket dropped.
- Cascading Itinerary Delays: A 15-minute delay at dinner impacts movie and dessert stops. We had to calculate downstream ETA drift dynamically while filtering out repetitive notification spam.
What We Learned
- Optimize the Screen-to-IRL Ratio: Technology often isolates people by maximizing screen time. The most meaningful AI social products do the opposite: they handle administrative burdens behind the scenes to maximize face-to-face connection.
- Mediate Psychology, Not Just Logistics: Hangouts don't stall due to a lack of calendars; they stall because of social friction, politeness, and unspoken constraints. AI works best as a neutral, zero-ego escrow that solves what friends are too polite to negotiate out loud.
Built With
- ai-agents
- chrome
- express.js
- facebook-events
- messanger
- meta
- multi-agent-system
- node.js
- react
- typescript
- websockets
Log in or sign up for Devpost to join the conversation.