Meeting follow-up, filed as real tickets
From a transcript or notes, an agent extracts decisions and action items, files them in your tracker, and drafts the follow-up email.
The short version
| The job | From a transcript or notes, an agent extracts decisions and action items, files them in your tracker, and drafts the follow-up email. |
|---|---|
| Tools it needs | Google Calendar, Jira, Linear, Asana, Notion |
| Setup | 4 steps, about ten minutes |
| Runs when | Something happens in Google Calendar |
| Approval | Yours, per category — nothing is sent on your behalf unless you say so |
| Where it runs | Your own machine. Credentials stay in a local vault. |
What the agent actually does
Nothing that was agreed gets forgotten
A summary tells you what was discussed. The agent extracts what was actually decided, what was explicitly deferred, and what was raised and never resolved — which is usually the most valuable line in the whole document and the one summaries reliably lose.
Actions land in your tracker
Each action item becomes a real ticket in Jira, Linear or Asana with an owner and a due date, linked back to the moment in the transcript where it was agreed. No separate list to transcribe, and no ambiguity about who took it.
Follow-up drafted
The recap email is composed while the meeting is still fresh: decisions, owners, dates, open questions. It waits as a draft for whoever ran the meeting to check and send.
The tools this job needs
Google Calendar
Where the work arrives. The shared clock your workflows can read and write. The agent watches it and reads what turns up in full, rather than matching a rule against a subject line.
Jira
Context the agent pulls in before deciding. The ticket system of record for engineering work. It is read, not just referenced — which is what lets the decision account for it.
Linear
Context the agent pulls in before deciding. Fast issue tracking that deserves fast automation. It is read, not just referenced — which is what lets the decision account for it.
Asana
Where the result lands. Team tasks, due dates and the follow-through between them. Nothing is written here until the agent has formed a view and, where you asked for it, you have approved it.
Get this agent
Meeting Follow-Through
From a transcript or notes, an agent extracts decisions and action items, files them in your tracker, and drafts the follow-up email.
Runs on your own machine. Asks for Google Calendar, Linear, Notion and nothing else — you approve the connection, and the agent inherits whichever AI model you already use.
You can see exactly what it did
The gap between the transcript and the work
Transcription is solved and summarisation is close behind, yet the follow-through problem is untouched by either. The failure is not that nobody knows what was said; it is that turning what was said into tracked, owned work is manual, tedious, and therefore done inconsistently. That gap is where commitments quietly disappear.
Owners and dates are the hard part
Extracting "we should look at the onboarding drop-off" is easy. Determining that Priya took it, that it is due before the next review, and that it depends on the analytics work already in flight requires reading the whole conversation and knowing the team. An agent with access to your tracker can do exactly that, and can flag the items where ownership was genuinely never established rather than inventing one.
Better meetings as a side effect
Once every meeting reliably produces a public list of decisions and owners, the meetings themselves change. Items that were never really agreed become visible as unagreed. Recurring meetings that generate no decisions become obvious candidates for deletion. The artefact ends up improving the process that produces it.
Build it in AGNT
- Connect your calendar plus the tracker your team actually uses — Jira, Linear, Asana or Trello.
- Feed in the transcript or notes; any source works, including a pasted block of text.
- Tell the agent your conventions: how tickets are titled, which project takes what, who defaults as owner.
- Review the extracted decisions once, then let the follow-up run after every meeting.
Build it: the workflow file
The build is smaller than it sounds. One trigger, one agent that reads and decides, one action — and a recorded outcome either way, including the times it decides to leave something alone.
{
"id": "e577758f-9a3b-4bb8-a349-c19b00efe5e8",
"name": "Meeting follow-up, filed as real tickets",
"nodes": [
{
"id": "5bafe1a0-a766-49ac-afeb-65440b60adc4",
"text": "Watch Google Calendar",
"x": 512,
"y": 144,
"isEditing": false,
"type": "google-calendar-new-event",
"icon": "connect",
"category": "trigger",
"isSelected": false,
"parameters": {},
"description": "Listen for events created or updated on a Google Calendar and trigger the workflow.",
"error": null,
"isActive": false,
"output": null,
"outputs": {}
},
{
"id": "b0a7d1c6-c372-4b05-a9f8-06f5722946d2",
"text": "Read it and decide",
"x": 512,
"y": 336,
"isEditing": false,
"type": "agnt-agent",
"icon": "connect",
"category": "action",
"isSelected": false,
"parameters": {
"instructions": "A summary tells you what was discussed. The agent extracts what was actually decided, what was explicitly deferred, and what was raised and never resolved — which is usually the most valuable line in the whole document and the one summaries reliably lose."
},
"description": "From a transcript or notes, an agent extracts decisions and action items, files them in your tracker, and drafts the follow-up email.",
"error": null,
"isActive": false,
"output": null,
"outputs": {}
},
{
"id": "27a454f5-e301-426a-a164-1277232576a0",
"text": "Act in Notion",
"x": 512,
"y": 528,
"isEditing": false,
"type": "notion-api",
"icon": "connect",
"category": "action",
"isSelected": false,
"parameters": {
"action": "search"
},
"description": "Interact with Notion - search, query databases, get pages, and create pages.",
"error": null,
"isActive": false,
"output": null,
"outputs": {}
}
],
"edges": [
{
"id": "7861a7ab-06ec-475d-ab52-92967ff74826",
"start": {
"id": "5bafe1a0-a766-49ac-afeb-65440b60adc4",
"type": "output"
},
"end": {
"id": "b0a7d1c6-c372-4b05-a9f8-06f5722946d2",
"type": "input"
},
"startX": 800,
"startY": 168,
"endX": 512,
"endY": 360
},
{
"id": "0df35fdf-7031-4dee-ab39-3f77b4fb01ac",
"start": {
"id": "b0a7d1c6-c372-4b05-a9f8-06f5722946d2",
"type": "output"
},
"end": {
"id": "27a454f5-e301-426a-a164-1277232576a0",
"type": "input"
},
"startX": 800,
"startY": 360,
"endX": 512,
"endY": 552
}
],
"zoomLevel": 1,
"canvasOffsetX": 0,
"canvasOffsetY": 0,
"isTinyNodeMode": false
}
Install this agent
Free, local, and it asks for Google Calendar, Jira, Linear, Asana, Notion and nothing else.
Common questions
Do I need a specific meeting recorder?
No. The agent works from whatever text you have — an exported transcript, shared notes, or a rough paste. It is not tied to one vendor’s recording product.
What if the meeting had no clear decisions?
It says so, and lists the open questions instead. That is a more honest and more useful output than a manufactured action list.
Can it handle recurring meetings differently?
Yes — a standing meeting can carry its own conventions, including which project new tickets land in and which items to check against last week’s.