Crafting experience...
6/12/2026
Built At
Progress x GitNation
Hosted By
Framing the Problem
Why do we still travel to conferences when every talk is on YouTube a week later? We come for real people and real-life insight. We want to talk about our problems with someone who has lived through them and hear what actually worked. Ask any conference veteran about the best moment of an event and you will rarely hear a talk title. You will hear about the hallway track, the unscheduled conversation with a stranger who had exactly the experience they needed.
That conversation is the most valuable part of every conference, and it is the only part left entirely to chance. The person who survived your exact problem is probably thirty meters away. You will both leave without ever knowing it.
Matchmaking apps like Brella, Grip and Swapcard have tried to fix this. They fail for a structural reason. They match on declared profiles, forms nobody fills honestly, and on similarity. "You both use Prisma" is a worthless match. The conversations that matter are complementary: one person is stuck on what the other has survived. And the honest, current answer to "what am I stuck on" lives in the one place no event platform can reach: the context of your local coding agent. It watched you fight that problem yesterday.
Idea Explanation
The event is an MCP server. Onboarding is one command:
claude mcp add hallway <public-url>You tell your agent to interviews you once: what are you stuck on, what have you survived, what do you want to explore, how social a day do you want. Then your agent go to negotiates with the other attendees' agents through the server: propose, probe, qualify, and finally ask both humans for consent. Only after mutual consent does either side learn who the other is. The platform stores nothing worth leaking.
Each signal goes where it is useful. Pain finds people: every match pairs a current problem with lived experience of it. Curiosity finds talks, matched against the tagged schedule. Appetite sets the pace: the booker respects "one great conversation" as much as "fill my breaks".
One tool call, plan_my_conference, then hands you the whole day: confirmed meetings with coffee slots, recommended talks, the lunch window, and a follow-up list of what did not fit. Not a grid with a list of activities but an onsite and follow-up recommend plan.
Organizers get the topics insights: a live view of what the room is actually stuck on and what it wants to explore next. No registration form has ever shown them that.
Everything renders on The Hallway Board, a Kendo-built dashboard for the venue big screen: a match spotlight that appears on consent, the heatmap of interests as a real life insight, and rendez-vous slots meetings for conference breaks.
Implementation
Turborepo monorepo, TypeScript strict, pnpm.
- apps/web: Next.js 16 + KendoReact 15. The Board at /, onboarding docs at /docs (Fumadocs), a companion view at /m/[id] reached by QR code from the board.
- apps/hallway: Node MCP server (Streamable HTTP) with six tools register_attendee, submit_intent, respond_to_probe, list_matches, accept_match, plan_my_conference), the negotiation engine, and a simulated fleet of six personas driven by the Claude API.
- Supabase, for exactly one thing: Realtime.
Flow: attendee agents call the MCP server on its public URL. The server runs the negotiation engine and mirrors state into hallway_ tables. Supabase pushes changes to the board over Realtime. The web app deploys to Vercel; the MCP server runs on a VM because the fleet's LLM loops need a long-lived process.
The fleet has no backdoor. The six personas connect through the same public MCP tools as any attendee, so when a judge connects their own Claude Code during judging, it speaks to the server as a peer.
Kendo carries the board: Scheduler for the hallway track, Charts for the heatmap with click drill-down, Cards for matches, and a token layer over the Kendo CSS variables that re-skins the whole board live for each conference.
Challenges
The first full render of the board looked nothing like the spec. Light canvas, no spotlight card, a truncated Scheduler, colliding heatmap labels. We froze feature work and rewrote the build order: fix the judged surface first, new tools second. Lesson: render your demo surface end to end as early as possible.
Specs do not have rendering bugs, screens do.
The fleet's LLM loops fit neither Vercel nor Supabase functions. Splitting the deploy solved it, and the VM's stable public URL became the centerpiece of the demo.
Scope gravity at 1 a.m. is real. Matching by shared interests, food preferences, a schedule-browsing UI: every tempting idea went into the PRD's "out" table with its reason instead of into the codebase.
Accomplishments
A real protocol end to end in one night: registration, witnessed intent, negotiation, mutual consent, booked coffee slot, live board update. Nothing in the demo path is faked.
Judges can connect their own agents during judging. That beat only works because everything underneath it is real.
The build mirrored the thesis. A product about delegating to your agent, built by one human delegating thirteen scoped tickets to parallel Claude Code agents in git worktrees overnight.
What we learned: ship the vertical slice first (the walking skeleton took 90 minutes and everything else hung off it), and write down what you cut, with the reason, before it sneaks back into the codebase.
Next Steps
With another day: accept and decline in the agent flow, a basic organizer console around the heatmap, chat onboarding for attendees without an agent.
With a week: auth and rate limiting on the public MCP endpoint, calendar sync for confirmed slots, and a pilot at a local meetup to learn how the interview performs on strangers' agents.
With a month: The Hallway as event infrastructure. Each conference is already just a theme; the missing pieces are multi-tenancy, trust between agents from different organizations, and a follow-up list that travels with your agent from one hallway to the next.
The bet is simple: your agent attending the event before you do will soon be as normal as the event having a website.