Automating meeting notes with AI transcription and CRM logging

Executive overview

Meeting notes from phone calls and in-person conversations rarely get documented, making insights from those conversations impossible to retrieve later. This system captures audio from Zoom recordings and iPhone voice memos, transcribes them locally, summarises them with Claude Haiku, and files everything — summary, transcript, audio — into Google Drive while also logging key fields into a Google Sheets CRM.

The core insight: automated filing and structured extraction turns throwaway meeting notes into a searchable, reusable knowledge base.

How the pipeline works

  • Zoom recordings and voice memos each drop into a monitored incoming folder
  • A local Whisper model transcribes the audio; smaller models are fast and still accurate
  • Claude Haiku generates a structured summary: participants, key takeaways, action items, open questions, next steps
  • The summary is written to a Google Doc; the folder and document are named using the participant's first name, last name (if known), date, and time
  • A Google Sheets CRM row is created with pre-meeting notes, a link to the recording, and a link to the meeting note

Customising the AI summary output

  • The summary template is fully configurable — ask the model for whatever fields matter to your workflow
  • Participant names are extracted by the model itself, not by regex or string parsing
  • If a last name is not mentioned in the conversation, only the first name is used
  • A personal notes section at the top lets you append handwritten or typed notes before the AI content

Building the application: the development process

  • Start with a natural-language prompt describing the end result in detail
  • Send to GPT-4 to generate a product requirements document (PRD)
  • Pass the PRD to O1 with instructions to expand it for a beginner engineer, output as a markdown file with checkboxes per phase
  • Send the markdown to GPT-4o to clean up formatting
  • Use Cursor to build phase by phase, always referencing the markdown checklist and testing each phase before moving to the next

Lessons learned

  • Pesky bugs: create a dedicated Claude Project with an "engineer" system prompt; have Cursor generate a full-context error prompt, send it to the Claude Project, then paste the response back into Cursor for evaluation before applying
  • Thinking model first: before writing code to solve a hard parsing problem, ask whether the model can handle it directly — name extraction is a clear case where AI outperforms programmatic approaches
  • Iterative development with a checked-off markdown file keeps Cursor on track across a large build

More like this — when you're ready for early access.

Join the waitlist for a personal account and content recommendations based on what you're working on.

No spam. Unsubscribe at any time.

You're on the list. We'll be in touch before launch.

Get early access to the full library.

Join the waitlist for a personal account and content recommendations based on what you're working on.

No spam. Unsubscribe at any time.

You're on the list. We'll be in touch before launch.

Be among the first to get personalised recommendations tailored to your stage in business.

No spam.

You're on the list. We'll be in touch before launch.

Be among the first to get personalised recommendations tailored to your stage in business.

No spam.

You're on the list. We'll be in touch before launch.