Inspiration

Traditional daily standups are a productivity bottleneck. Between deep work blocks, varying class schedules, and remote time zones, finding a single time for everyone to sync is nearly impossible. We noticed that text-based bots often feel like a chore, leading to low engagement and a lack of nuance. We wanted to build something that felt like a real, attentive project manager: one that remembers your progress and follows up on your specific blockers without requiring a calendar invite.

What it does

SitDown is an asynchronous, voice-first standup agent integrated directly into Slack.

  • Automated Outreach: At a scheduled time, the bot DMs team members a unique voice call link.

  • Conversational Updates: Users engage in a natural, high-fidelity voice session where the AI asks about their progress and blockers.

  • Stateful Memory: Unlike static bots, SitDown remembers past context using long-term memory to ask personalized questions.

  • Intelligent Summarization: Once the team finishes their calls, the bot aggregates the transcripts into a concise, actionable summary posted to the team channel.

How we built it

We made a multi-layered AI pipeline:

  • Voice Engine: We used ElevenLabs Conversational AI for low-latency speech-to-text, text-to-speech, and natural turn-taking.

  • Memory Layer: Backboard.io serves as the persistent brain, storing conversation history and allowing for auto-retrieval of past blockers.

  • LLM Reasoning: We integrated Featherless AI running Llama 3.3 70B to extract key facts and generate the next day’s personalized questions.

  • Backend: A FastAPI server handles the ElevenLabs webhooks and prompt injection, while a Node.js Slack Bolt app manages the frontend interactions.

Challenges we ran into

  • The Web-to-Voice Bridge: Slack does not natively support real-time voice streaming, so we built a custom frontend bridge that opens a WebSocket using a backend-generated signed URL.

  • Stateful Context Injection: Ensuring the agent knew exactly what happened in the last standup required us to query Backboard.io for historical data and inject it into the agent’s dynamic variables milliseconds before the call began.

  • Webhook Latency: We had to optimize our data flow to ensure that as soon as a user hangs up, the transcript is processed and stored without losing context or delaying the team summary.

Accomplishments that we're proud of

Successfully bridging five distinct APIs into a single cohesive pipeline during the hackathon.

Creating a voice agent that feels genuinely helpful and remembers technical nuances, like a specific C++ bug or a design blocker, from the previous day.

Implementing a priority queue for questions, where the bot automatically ranks leader-defined questions above its own AI-generated follow-ups.

What we learned

We learned the importance of Agentic RAG (Retrieval-Augmented Generation). By using Backboard.io, we saw how much more effective a voice assistant becomes when it has a long-term memory of a user's specific work patterns. We also gained deep experience in handling real-time audio WebSockets and securing sensitive engineering data during the transcription process.

What's next for SitDown

Multi-modal Support: We want to allow engineers to hold up their phone to a circuit board or a terminal error during the call so the AI can see the blocker.

Jira/GitHub Integration: Automatically creating tickets or PR comments based on what was verbally reported during the standup.

Morale Tracking: Analyzing the sentiment of standups over time to help team leads identify burnout before it happens.

Built With

  • backboard.io
  • elevenlabs
  • fastapi
  • python
Share this project:

Updates