Every 15 minutes
Turn meeting transcripts into action items and follow-ups
When a meeting transcript lands in Drive, the action items are pulled out for you and any follow-up meetings are put in your calendar.
- Runs
- Every 15 minutes
- Apps
- Google Calendar, Google Drive
- AI
- Yes, uses the built-in AI allowance
- Access
- drive.readonly; calendar.events
Send this to your assistant
Create a ClickRuntime automation: when a new meeting transcript appears in my Drive 'Meet Recordings' folder, extract the action items with AI, email them to me and create calendar events for any follow-up meetings.
First time? Adding ClickRuntime to your assistant takes about two minutes.
Why use it
Why teams use this automation
A team lead finishes a client call where everyone agreed to "catch up again next Thursday" and three people took on tasks. The transcript is saved automatically, but nobody reads it, the follow-up is never booked, and a week later the client asks what happened.
Pulling the action items out of each transcript and booking the follow-ups that were agreed makes sure what was said in a meeting actually happens. Managers, consultants and client-facing teams use it to keep promises made on calls.
What you get out of it
Agreed follow-ups get booked
When a meeting ends with a plan to talk again, the event appears in the calendar instead of relying on someone's memory.
A clear list of who does what
Action items with owners are sent to you right after the meeting, ready to share with the team.
Transcripts become useful
Recordings and transcripts pile up unread. Pulling out the decisions turns them into something people act on.
Clients see you follow through
Following up on time with the right next steps builds trust with clients and partners.
How it works
What happens, step by step
Every 15 minutes ClickRuntime checks your Drive Meet Recordings folder for new transcripts.
It skips any transcript it has already processed.
AI reads the transcript and lists the action items, with owners, and any follow-up meetings that were agreed.
You get the action items by email, and each follow-up meeting is added to your calendar.
Before it runs live
- Connect Google Calendar
- Connect Google Drive
What you get
Build your own
Need it to work differently?
Your own rules
Conditions, thresholds, filters and exceptions, written the way you'd explain them to a colleague.
Any number of apps
One automation can read from one app and update several others. Over 248 apps are ready, and anything with an API works too.
AI where it helps
Summaries, classification, extraction and drafts use ClickRuntime's built-in AI, with no extra key.
On a schedule or on each event
Runs as often as every 5 minutes, or the moment an app sends an event, and keeps track of what it already handled.
Changes you can ask for
- Act only on the items that match your own rules, and skip the rest
- Change what the AI looks for, or how it writes the result
- Add another app, for example also send it to Slack
- Combine it with other Google Calendar and Google Drive steps into one automation
Under the hood
The code that runs this automation
from google.oauth2.credentials import Credentials
from googleapiclient.discovery import build
from clickruntime import on_trigger, credentials, state, notify, ai, report_fetched
FOLDER_ID = "your-meet-recordings-folder-id"
SCHEMA = {"type": "object", "properties": {"actions": {"type": "array", "items": {"type": "string"}},
"followups": {"type": "array", "items": {"type": "object", "properties": {"title": {"type": "string"}, "start": {"type": "string"}, "end": {"type": "string"}}}}}}
@on_trigger
def run(event):
creds = Credentials(credentials.connection("google", "work"))
drive, cal = build("drive", "v3", credentials=creds, cache_discovery=False), build("calendar", "v3", credentials=creds, cache_discovery=False)
seen = set(state.get("seen") or [])
files = drive.files().list(q=f"'{FOLDER_ID}' in parents and mimeType='application/vnd.google-apps.document' and trashed=false", fields="files(id,name)").execute()["files"]
new = [f for f in files if f["id"] not in seen]
report_fetched(len(new))
if not new:
return {"summary": "Nothing new"}
for f in new:
text = drive.files().export(fileId=f["id"], mimeType="text/plain").execute().decode()[:25000]
r = ai.generate(f"From this transcript list action items with owners and follow-up meetings with ISO start/end times:\n{text}", json_schema=SCHEMA, max_output_tokens=800).json
notify.email_me(f"Action items: {f['name']}", "\n".join(f"- {a}" for a in r.get("actions", [])) or "No action items found.")
for fu in r.get("followups", []):
cal.events().insert(calendarId="primary", body={"summary": fu["title"], "start": {"dateTime": fu["start"]}, "end": {"dateTime": fu["end"]}}).execute()
seen.add(f["id"])
state.set("seen", list(seen)[-500:])
return {"processed": len(new)}FAQ
Common questions
Which transcripts does it read?
Who is invited to the follow-up meetings?
What if no follow-up was agreed?
What permissions does it need?
Does it need AI?
How many runs does it use?
Can I change how it works?
Related
You might also like
Save email attachments to Drive and add mentioned dates to your calendar
Attachments from school or client emails are saved to Drive, and any dates they mention appear in your Google Calendar.
See how it worksLet your voice or chat agent book appointments and answer from Drive
Your AI phone or chat agent can check your free times, book appointments in Google Calendar and answer questions from your FAQ document in Drive.
See how it worksPrepare a lesson plan for each of tomorrow's classes
Each evening, every class in tomorrow's calendar gets a lesson plan document in Drive, linked from the calendar event.
See how it worksKeep exploring
Set up “Turn meeting transcripts into action items and follow-ups” from your assistant
Copy the prompt above, or connect your assistant first. Free plan, no credit card.