Guide
Post meeting recaps to a client's Slack, with action items people can tick off
For freelance developers and consultants whose clients live in Slack: how TrackHeros turns a Google Meet or Microsoft Teams meeting into a recap in the client's own workspace, with decisions and action items that can be ticked off or filed as a ticket from Slack, @mentions for the people on the invitation, and answers to questions asked in the thread. One workspace per client, nothing posted until you say so.
Updated 5 September 2026 · 8 min read
TrackHeros can post the recap of a Google Meet or Microsoft Teams meeting into the client's own Slack: a summary, the decisions, and the action items with a button to tick each one off or file it as a ticket, plus @mentions for the people who were on the invitation and answers to questions asked in the thread. This guide is for freelance developers and consultants whose clients run on Slack, and it covers what the recap contains, where it goes, who can act on it, and what stays off until you turn it on. Each client's Slack workspace is connected on its own, and nothing is posted to any of them until you say so.
Why post the recap where the client already reads?
A client who lives in Slack does not open a PDF you emailed. They read the channel. Posting the recap there puts the decisions on record where the team argues about them, and the action items next to the people who own them.
The catch is that a Slack workspace is a room full of people, some of whom you have never met. So TrackHeros treats every post as a write into a client's system: routed by rules you set, sent only on your click or under a permission you gave once and can withdraw, and logged.
What does the recap contain?
The recap is a structured Slack message, not a wall of text. It is rendered from the meeting's notes at the moment it is posted, and it is edited in place whenever those notes change, so the channel always shows the current state.
| Section | What it holds |
|---|---|
| Header | Meeting title and date, the platform, how long it ran |
| Summary | The written summary, clipped with a "Read more" link back to TrackHeros if it is long |
| Decisions | Each decision as a bullet |
| Key points | The first few discussion points, in the order they were covered |
| Action items | Each task with its owner and due date. Open items carry a Mark done button and, if a tracker is connected for the client, a Create ticket button. Done items are struck through; items with a ticket link to it |
| Footer | An Open in TrackHeros button, and a note on how to ask questions if that is on |
The labels follow the language of the notes. A client whose notes are written in Arabic gets a recap headed الملخص and المهام, not "Summary" and "Action items" over Arabic text.
Long meetings are shortened rather than refused. Slack limits how much one message may hold, so the summary is cut at a word boundary and the first ten action items are shown, with a count of how many more live in TrackHeros.
Which channel does it go to?
Three rules, tried in order. The first that gives an answer wins.
| Rule | How it works |
|---|---|
| A hashtag in the invitation | If the meeting's title or description names a channel, #acme-dev for example, the recap goes there. Issue numbers like #123 are not channels |
| The client's default channel | Set once on the client's page in TrackHeros |
| A direct message to you | If neither of the above exists, the recap is sent to the person who connected Slack, so it is never lost |
If none of the three applies, nothing is posted. The recap waits on the meeting page for you to pick a channel.
The hashtag rule is on by default because the organiser wrote where the notes should go. It is also a switch, because the organiser is often the client, and you may not want the invitation deciding where your recap lands. A hashtag can only ever route within the workspace connected to that client; no invitation can send one client's recap into another client's Slack.
Does it post automatically?
Not by default. Every client starts with automatic posting off, and there are two ways to send a recap.
Meeting by meeting. After a meeting is summarised, its page in TrackHeros shows a recap draft with the channel already chosen by the rules above. Change the channel if you like, then post it. This is the mode for clients where you want to read the notes before the room does.
Automatically, per client. On the client's page you can turn on automatic posting. From then on each recap is posted as soon as the summary is ready, without you seeing it first. The switch records who turned it on and when, and every automatic post is logged against that record. Turn it off and posting goes back to meeting by meeting.
Either way, a recap is posted once. Meetings that mix Arabic and English get a second transcript pass from the recording, and that pass edits the message in the channel rather than posting a new one. Ticking an item off, in Slack or in TrackHeros, edits it too.
How do @mentions work?
Action items in TrackHeros carry the owner's name as it was spoken. For a Slack recap, that name becomes an @mention when two things line up: the spoken name matches exactly one person on the meeting invitation, and that person's invitation email belongs to someone in the client's Slack.
Only invitees are ever looked up, and only by email. TrackHeros never searches a client's Slack directory by name, because a name search returns whoever it resembles, and that is how a stranger gets pinged about a task that is not theirs. Two invitees who could both be "Sam" is not a match; the name stays as text.
Mentions are off by default and are a per-client switch, since being @mentioned is a small interruption you should choose to cause. When someone is not in Slack, or the lookup fails, the recap still posts with their name as plain text.
Who can press the buttons?
Everyone in the channel can read the recap. Only one person can act on it: the Slack user who connected TrackHeros to that workspace. That is the person who chose to trust the app, and the buttons change your records or write into the client's tracker under your connection, so nobody else in the room gets to press them. Anyone else who tries sees a private note saying so, and nothing changes.
Mark done ticks the action item off in TrackHeros and updates the recap, so the app and the channel never disagree about what is finished. Ticking an item off in TrackHeros updates the recap the same way.
Create ticket files the action item into the client's issue tracker, using the tracker and project you chose on the client's page, and replaces the button with a link to the ticket. The button appears only when a tracker is connected for that client. Pressing it twice does not make two tickets.
Can people ask questions in the thread?
Yes, once you turn it on for that client. Anyone who can see the recap can @mention TrackHeros in its thread and ask something like "what did we decide about the deploy window" or, in Arabic, ما هي المهام على سامي. The answer comes back in the thread, in the language of the question.
What the answer can draw on is deliberately narrow: that one meeting's summary, its action items and the parts of its transcript that match the question. Not the client's other meetings, and never another client. Someone in the thread can learn more detail about the meeting the recap already told them about, and nothing else.
Two things to know before turning it on. "Anyone who can see the recap" includes guests from other organisations if the channel is shared; who is in the channel is your decision, and the switch says so. And there is a limit on questions per thread and per client per day, so a busy channel cannot run up an unbounded bill. The app never reads what else is said in the channel; it only sees the messages that @mention it.
How does client isolation apply to Slack?
The same way it applies to everything else in TrackHeros, described at /features/client-isolation/. A Slack workspace is connected to exactly one client, and the database refuses to attach it to a second. Every recap is posted through the connection belonging to the meeting's client, and every question is answered from the meeting the thread belongs to. Deleting a client removes every record TrackHeros holds about its recaps, lookups and questions; the messages already posted in the client's workspace stay there, because they are the client's.
What does TrackHeros need from your Slack?
When you connect a workspace, Slack shows the permissions the app asks for. In plain words:
| Permission | Used for |
|---|---|
| Post and edit its own messages | The recap, its updates, and thread answers |
| List channels | The channel picker on the client page and the meeting page |
| Join a public channel | So it can be @mentioned there; it never joins on its own otherwise |
| Send you a direct message | The fallback when no channel is set |
| Look people up by email | Turning an invitee into an @mention. Only invitation addresses are used |
| Be told when it is @mentioned | Thread questions. It cannot read anything else in the channel |
The person who clicks Connect becomes the workspace's installer and the only one who can press recap buttons. Some workspaces require an admin to approve new apps; if the client's does, the connection waits until their admin says yes.
How to set it up
- Open Connectors in TrackHeros, choose the client, and connect Slack. You are sent to Slack to approve it in that client's workspace, then back.
- On the client's page, a Slack recaps card appears. Choose a default channel, or leave it empty to receive recaps as direct messages.
- Decide what runs on its own: automatic posting, @mentions, thread answers. Each is off until you switch it on.
- If the client has an issue tracker connected, choose the tracker and project the Create ticket button should file into.
- After the next meeting, open its page. The recap draft is there with its channel chosen. Post it, or, with automatic posting on, find it already in the channel.
The recap is one output of the notes described at /features/meeting-minutes/; the minutes document, the assistant at /features/ask-your-meetings/ and the Slack thread all read from the same record. For keeping several clients' notes apart before any of them reach Slack, see /blog/keep-client-meeting-notes-separate/.
Not yet available
- Post the formatted minutes document (PDF) into SlackNot yet available
- Jira and Linear connections behind the Create ticket buttonNot yet available
Questions
Frequently asked
Does TrackHeros post to Slack automatically after every meeting?
Not unless you turn that on for a client. By default each meeting's recap waits on its page in TrackHeros with the channel already chosen, and you post it with one click. Automatic posting is a per-client switch; turning it on is recorded with who did it and when, and every post is logged.
Which Slack channel does the recap go to?
A channel named with a hashtag in the meeting's title or description wins, then the client's default channel, then a direct message to the person who connected Slack. If none of those exists, the recap waits on the meeting page for you to choose. You can switch off the hashtag rule if you do not want an organiser steering your recap.
Can people in the client's Slack ask questions about the meeting?
Yes, once you turn it on for that client. Anyone who can see the recap can @mention TrackHeros in its thread. The answer is built from that one meeting only, never from the client's other meetings, and comes back in the language the question was asked in, English or Arabic. There is a limit per thread and per client per day.
Who can press the buttons on a recap?
Only the Slack user who connected TrackHeros to that workspace. Anyone else who presses Mark done or Create ticket gets a private message saying so, and nothing changes. The recap itself is readable by everyone in the channel.
Does the Slack app read my client's channels?
No. It asks only for the permissions it uses: posting and editing its own messages, listing channels so you can pick one, looking up the people on a meeting invitation by email, and being told when it is @mentioned. It cannot read channel history.
Can one Slack workspace be shared between two clients?
No. A workspace is bound to exactly one client, enforced in the database, the same way a Google account is. If two of your clients happen to share a workspace, connect it to one of them and post the other client's recaps by hand.
Related
Keep reading
- FeaturesSummaries, decisions, action items and minutes you can sendTrackHeros turns each client meeting into a summary, decisions, action items with owners and dates, and formatted minutes you can export as PDF or email.
- FeaturesClient workspaces that never mixEvery client's meetings, notes and transcripts live in a sealed workspace. Client data isolation is built into every query, not switched on.
- FeaturesSearch and ask across a client's meetingsAsk questions about past meetings in plain language and get cited answers, or search transcripts, summaries and action items across every client.
- GuidesHow to keep client meeting notes separate when you work with several clientsHow to keep client meeting notes separate when you work with several clients: one container per client, naming rules, what to do when a contract ends.
Early access
Get in early.
We’re onboarding a small group at a time so we can get it right. Join the list and we’ll reach out.