Use cases/Productivity

Meeting Notes & Action Items

Turn live meeting transcripts into structured summaries and route action items to the right tracker — Jira, Linear, Todoist — automatically.

Productivitymedium~30m setup
Tools
meeting_coachmemoryexec
Plugins
webhook-router
Channels
desktopweb

The post-meeting bottleneck is rarely "what got said" — it's "who's doing what by when, and is it tracked anywhere." Flowly's meeting coach captures the transcript live, the agent then extracts action items and files them into your task tracker before you've even closed the tab.

What it does

  • Captures live transcript via the desktop or web meeting coach
  • At meeting end, generates a structured summary (decisions, blockers, action items)
  • Identifies action item owner + due date from context
  • Routes each action item to the right tracker via webhook (Jira, Linear, Todoist)
  • Stores the full transcript in memory for retrieval months later
  • Optionally drafts a follow-up email summarising the meeting

What you'll need

  • Meeting coach — already built into Flowly desktop and web
  • Memory — for transcript storage
  • A webhook-router plugin (you'll create one) that knows how to call your trackers
  • API credentials for whichever tracker(s) you use

Setup

1. Start a meeting coaching session

From the desktop app, open the meeting coach and click Start. Drop in a one-line context: "Q2 product review with @sarah and @mike, focus on the launch checklist."

The coach starts capturing speech-to-text. It also fires real-time tips about engagement and clarity, but for this workflow we care about the transcript.

2. Build the webhook-router plugin

Use the plugin-creator skill to scaffold a plugin that exposes one tool: route_action_item(title, owner, due_date, source). The handler inspects owner and dispatches to the matching tracker:

python
async def route_action_item(title: str, owner: str, due_date: str, source: str) -> str:
if owner.lower() in {"sarah", "mike"}:
return await create_jira_ticket(title, owner, due_date, source)
if owner.lower() == "me":
return await create_todoist_task(title, due_date, source)
return f"Unknown owner: {owner}"

Configure the env vars in ~/.flowly/.env:

bash
JIRA_BASE_URL=https://yourcompany.atlassian.net
JIRA_API_TOKEN=...
JIRA_USER_EMAIL=you@yourcompany.com
TODOIST_API_TOKEN=...

3. Stop the coach + extract

When the meeting ends, stop the coach. Then ask Flowly:

Send to Flowly
You just captured a coaching session. Read the full transcript and: 1. Write a 5-line meeting summary covering: purpose, key decisions, open questions, next meeting date, attendees 2. Extract every action item. For each, identify: - Owner (who said they'd do it, or who was assigned) - Title (one-line, imperative form) - Due date (explicit or inferred — "next Friday") - Source quote (the line where the commitment was made) 3. For each action item, call route_action_item(...) so it lands in the right tracker 4. Save the full transcript to memory under tag "meeting:q2-product-review" Reply with the summary and a checklist of what you filed and where.

Tips

  • Speak names clearly. STT mishears uncommon names; "Sarah filing the JIRA" sometimes becomes "Sarah filing the Geyrah" and the routing mismatches. Use first names + last initial in critical handoffs.
  • Confirm before filing. For high-stakes meetings (board, legal), add a step: "list action items and ask me yes/no per item before routing." Trades convenience for accountability.
  • Index by tag. Tag transcripts with meeting:<short-name>. Later: "what did we decide about the launch checklist in March?" → memory search returns the right session.
  • Pair with a Friday digest. A weekly cron that summarises meetings from the past week catches drift between what was committed and what shipped.