Inspiration

Ray Dalio built Bridgewater Associates — the world's largest hedge fund — on a radical idea: that alignment is not something that happens naturally in meetings. It has to be engineered. His book Principles describes structured speaking turns, explicit agreements, and a culture where decisions are recorded and owned. It works. Most teams will never get there. I talk to product leaders every week. Senior, junior, AI-native, AI-skeptic — it doesn't matter. They all have the same problem: meetings end and nobody is quite sure what was actually decided. AI made this worse, not better. We move faster now. The gap between what was said and what people remember has never been wider. The tools built to fix this missed the point entirely. Otter AI, Gemini, TLDR — they transcribe brilliantly. They summarize. They capture everything that was said. But transcription is not alignment. A better archive of a broken meeting is still a broken meeting. Meet, Teams, Zoom — same story. Nobody built a new protocol. They just added a recorder. That's what Accord is: a new meeting protocol for the AI era. The insight is simple — if AI is accelerating every workflow, teams need stronger alignment infrastructure to keep up, not just faster note-taking. Accord structures the conversation with timed speaking turns, uses voice AI to detect the moment consensus forms, surfaces it to every participant, and seals the record only when everyone explicitly confirms. No ambiguity. No memory gaps. No second meeting to relitigate the first. The explicit confirmation loop is the core innovation. Every tool today assumes alignment happened. Accord proves it did

What it does

Accord is a real-time meeting room where consensus can't be assumed — it has to be proven. Participants join via a shared link, speak in structured turns, and the voice AI listens for the moment an agreement is forming. When it detects one, it surfaces a plain-language summary to every participant and pauses the meeting. Nobody moves forward until every person in the room has explicitly confirmed — or proposed a correction. The confirmed decision is timestamped, categorized, and logged. At the end of the session, the full decision record can be exported to Slack or PDF. The confirmation loop is the core mechanic. Every other tool assumes alignment happened. Accord proves it did.

How we built it

How we built it

Frontend: Next.js 14 (App Router), React 18, Tailwind CSS, TypeScript Real-time sync: Pusher Channels — every participant sees the same state simultaneously via WebSocket Voice input: Web Speech API (browser-native, no backend dependency) AI decision detection: Anthropic Claude (claude-sonnet-4-5) — analyzes the accumulated conversation log and returns a structured JSON with decision summary, confidence level, category, and the exact phrase that triggered detection Text-to-speech: ElevenLabs — reads the confirmed decision aloud when all participants agree Slack export: Composio — sends the decision log to a specified channel State: In-memory (Map on the Node.js server) — intentional for hackathon scope

Challenges we ran into The hardest problem was calibrating Claude's confidence threshold. Too sensitive and it fires on casual agreement ("yeah, sounds good"); too conservative and it never fires. We landed on requiring both hasDecision: true and confidence: "high" with a minimum transcript length before surfacing anything. The second challenge was the Web Speech API. It's Chrome-only in practice, stops silently after a few seconds of silence, and produces fragmented output. We built a buffer that accumulates chunks and sends them to the server on an interval, which helped — but it's still the most fragile part of the stack. Multi-participant state consistency without a database was genuinely hard. Pusher solved the broadcast problem, but the in-memory store means a server restart kills all active sessions. For the hackathon scope, acceptable. For production, the first thing to replace.

Accomplishments that I'm proud of The end-to-end confirmation loop working live — watching three participants each click "Confirm" and seeing the decision lock into the log in real time is the moment the product becomes real. It's a small UX moment that represents a genuinely different mental model for what a meeting can be. Also proud of shipping a pre-seeded demo route (/demo) that loads a realistic session — two confirmed decisions, one pending — so anyone can experience the product without needing to coordinate multiple people on a call.

What we learned That the hardest part of building a meeting tool isn't the technology — it's convincing people that the friction of explicit confirmation is the feature, not a bug. Every instinct in product design says "reduce clicks." Accord asks people to click one more time on purpose, and that one click is the whole point. Also learned that Claude is surprisingly good at detecting conversational convergence when given a clean transcript format. The key was prompting it to look for signal phrases — "agreed," "let's do that," "that's the date" — rather than trying to summarize the whole conversation.

What's next for Accord

Persistent storage (PostgreSQL + Redis) — sessions survive restarts, decisions are searchable Authentication — link-based join with session owner controls Async mode — decisions that don't require everyone online simultaneously Mobile-optimized voice input — bypass Web Speech API limitations Deeper integrations — Notion, Linear, Jira — so confirmed decisions automatically become tasks Analytics — how many decisions per meeting, how often edits happen before confirmation, team alignment score over time

Built With

Share this project:

Updates