Inspiration

What it does

How we built it

Challenges we ran into

Accomplishments that we're proud of

What we learned

What's next for Meeting-to-Action Agent

Inspiration

Teams spend a lot of time in meetings, yet follow-through is fragile. Action items get buried in a transcript, often lack a clear owner or deadline, and someone has to manually copy them into a project tracker. That leads to missed commitments, unclear accountability, and constant context switching. Meeting-to-Action Agent closes that gap by finding genuine commitments in a meeting and sending them straight to the team's GitHub repository.

What it does

Meeting-to-Action Agent turns a meeting — as a text transcript or an audio recording — into an execution-ready backlog:

Paste meeting notes/transcript, or upload an audio recording of the meeting Audio is transcribed and, along with pasted transcripts, run through AI analysis that produces a meeting summary plus structured action items — each with a task, owner, deadline, priority, and a short rationale for why it matters Results are shown as easy-to-scan action cards for human review Enter a GitHub owner, repository, and personal access token, and create one GitHub issue per action item — with full context (owner, deadline, priority, rationale) included in each issue

Where the transcript doesn't give an owner or date, the tool honestly marks it "Unassigned" or "no deadline" instead of inventing false certainty.

How we built it Frontend: React + Tailwind CSS — text transcript input, audio upload, result review, and issue-creation flow Backend: Node.js + Express — API endpoints, validation, and orchestration AI: Groq API — Whisper for audio transcription, and llama-3.3-70b-versatile (via an OpenAI-compatible SDK) for fast LLM analysis of the transcript into structured JSON Project management: GitHub REST API — creates one issue per extracted action item Developer AI: Codex — used during development to help build the analysis prompt/workflow, the React review UI, the Express/Groq/GitHub integrations, and the documentation (not part of the runtime inference path) Challenges we ran into Getting the model to reliably return structured JSON (owner, deadline, priority, rationale) instead of a generic free-text summary Designing the prompt so it extracts only genuine actions/decisions/commitments, and honestly falls back to "Unassigned"/no deadline rather than guessing Wiring up GitHub issue creation securely with a user-supplied personal access token — validating input and handling API errors without logging or storing the token Making the review step feel trustworthy: showing loading, validation, and API errors clearly in the UI before any GitHub issue is actually created Accomplishments that we're proud of A real end-to-end workflow: the last click creates actual GitHub issues, not a mock dashboard Clean, human-readable AI output (summary, owner, due date, priority, rationale) that's fully reviewable before anything is created A fast, judge-friendly demo flow good enough to show live in seconds using a ready-made sample transcript What we learned How to structure LLM prompts to get consistent, structured fields instead of free-form text Practical patterns for integrating GitHub's API into an end-user-facing workflow tool The value of designing for "human-in-the-loop" — AI extracts the work, a person reviews it, GitHub becomes the system of record What's next Add meeting-platform integrations (Zoom, Google Meet, Teams, or calendar recordings) Let users edit or deselect individual action items before issue creation Support GitHub labels, assignees, milestones, and team-specific issue templates Add authentication and secure server-side token handling for production use https://github.com/premloveuniversal-sketch/meeting-to-action-agent

Note on model choice: Due to OpenAI API cost constraints during the hackathon, the runtime inference model used is Groq's llama-3.3-70b-versatile (accessed via an OpenAI-compatible SDK interface) rather than GPT-5.6 directly. The integration is built so it can be swapped to OpenAI's API when available.

Built With

Share this project:

Updates