Agent setup guide
Internal Help Desk (Slack)
Answers colleagues' questions in your Slack help channel from your Notion handbook page, hands requests to the right owner and logs every question.
What it does
Answers colleagues' questions in your Slack help channel from your Notion handbook page, hands requests to the right owner and logs every question.
- Starts within seconds of each message in your help channel (Slack Events), including replies in threads.
- AI leaves thanks, chatter and teammates' own answers alone, and picks up questions and requests.
- Reads your Notion handbook or FAQ page on every question and answers in the thread using only that page, citing the section.
- Remembers the last 5 questions and replies in each thread for 14 days, so follow-ups are understood.
- When it isn't sure, or the message is a request a person must act on (access, purchases, exceptions, pay, personal matters), it tags the topic's owner in the thread instead of guessing.
- Logs every question to a Google Sheet — answered or handed off, topic, confidence, source and what's missing from your answers.
What it needs
- A paid plan (agents run live on paid plans).
- An AI provider key (Settings → AI Providers).
- Slack, Notion and Google Sheets, connected in Settings → Integrations.
- A Notion handbook or FAQ page shared with Fluxo Flow, your topic owners' Slack member ids, and a log sheet.
What it doesn't do
- It answers only from the one Notion page you choose — no search across your whole Notion workspace, sub-pages, Drive or the web. It reads the page's top-level text (up to 500 blocks or 50,000 characters); text inside toggles isn't read.
- It doesn't act on requests (no access changes, purchases or approvals); it hands them to the owner.
- It doesn't write or update your answers; use the log's gap column to see what to add.
- One help channel per setup.
- Its memory is per thread and short: the last 5 exchanges, forgotten 14 days after the last one.
Availability and plans
Available
Its workflow is built and tested, and every app it needs is live. You can get it and set it up now.
Included free on the Enterprise plan; on other paid plans it's a one-time purchase per workspace (the price is on the Agents page). The Agents page in the app always shows its current status.
Before you start
- A paid plan: agents run live, and the Free plan only runs Dry Runs.
- An AI provider key (OpenAI, Anthropic, Google and more) in Settings → AI Providers. AI usage is billed by your provider.
- These apps, connected in Settings → Integrations: Slack, Notion and Google Sheets.
- The app it watches, connected in Settings → Integrations (the agent starts from an app event).
- About 25 minutes.
Set it up step by step
Get the agent first (buy it, or it's already yours when your plan includes it), then in Agents → My agents press “Set up this agent”. That creates the agent's workflow in your workspace (it counts towards your plan's workflow limit) and opens the canvas with a setup checklist above it. Each item links to the exact place to go and ticks itself off when it's done.
1. Connect your AI provider
The AI steps run on your own key (OpenAI, Anthropic, Google and more). Add one in Settings → AI Providers.
2. Connect Slack
Connect your Slack workspace (Settings → Integrations → Slack) and invite the app to the help channel (/invite @Fluxo Flow).
3. Connect Notion
Connect Notion (Settings → Integrations → Notion) and share your handbook page with Fluxo Flow (••• → Connections on the page).
4. Connect Google Sheets
Connect the Google account that can edit the log sheet (Settings → Integrations → Google Sheets).
5. Pick the help channel
Open the trigger and pick your Slack account and the help channel.
| Setting | What to enter | In step |
|---|---|---|
| Slack account (help channel) | The Slack workspace with your help channel. Pick your connected Slack account. | “New message in your help channel” |
| Help channel | The channel the help desk answers in, e.g. #ask-ops. Invite the app first (/invite @Fluxo Flow). | “New message in your help channel” |
6. Name your topic owners
Open “Answer from your handbook” and replace the placeholder with your topic owners' Slack member ids, the default owner and what counts as a request.
| Setting | What to enter | In step |
|---|---|---|
| Topic owners and rules | Replace the placeholder with your company name, who owns which topics (Slack member ids, e.g. U0123ABCD), the default owner, what counts as a request a person must handle, and your tone. It starts as “[PASTE YOUR COMPANY NAME, WHO OWNS WHICH TOPICS (SLACK MEMBER IDS, E.G. U0123ABCD), THE DEFAULT OWNER, WHAT COUNTS AS A REQUEST A PERSON MUST HANDLE AND YOUR TONE HERE]” until you replace it. | “Answer from your handbook” |
7. Paste your handbook page
Open “Read your handbook page”, pick your account and paste the page link.
| Setting | What to enter | In step |
|---|---|---|
| Notion account | The Notion workspace with your handbook page. Pick your connected Notion account. | “Read your handbook page” |
| Handbook page | Paste the link of the Notion page the help desk answers from (your handbook or FAQ), shared with Fluxo Flow (••• → Connections). Keep answers in the page's top-level text, not inside toggles. | “Read your handbook page” |
8. Pick your Slack account for replies
Open “Tag the owner in the thread” and “Answer in the thread” and pick your Slack account in each.
| Setting | What to enter | In step |
|---|---|---|
| Slack account (hand-offs) | The same Slack workspace, to tag the owner in the thread. Pick your connected Slack account. | “Tag the owner in the thread” |
| Slack account (answers) | The same Slack workspace, to post answers in the thread. Pick your connected Slack account. | “Answer in the thread” |
9. Pick the log sheet
Open “Log the question” and pick the account, spreadsheet and tab.
| Setting | What to enter | In step |
|---|---|---|
| Google account (log) | The Google account that can edit the help desk log sheet. Pick your connected Google Sheets account. | “Log the question” |
| Log spreadsheet | Paste the link of the spreadsheet questions are logged to (columns: Time, Channel, Asked by, Question, Outcome, Topic, Confidence, Source, Gap). | “Log the question” |
| Log tab | The tab questions are added to, e.g. Questions. | “Log the question” |
10. Test it with Dry Run
Press Dry Run: the agent runs on sample data with no messages sent and nothing written to your apps.
11. Switch the trigger on
Open the trigger and click “Activate app trigger”: messages in the help channel then reach the agent within seconds.
How it works
The agent is a normal workflow with 13 steps (2 AI steps). You can open, edit and monitor it like any other workflow.
- New message in your help channel — Starts on “New message in channel (instant)” in Slack (an app event). Starts within seconds of a message in the Slack channel you pick (e.g. #ask-ops or #it-help), including replies in threads. The app's own messages never start it.
- Is it for the help desk? — AI step (runs on your AI provider key). AI decides whether the message is a question or a request the help desk should pick up (not a thank-you, a chat or a teammate's own answer) and finds the thread it belongs to.
- Pick it up? — Decision: picks the branch to follow. Thanks, chatter and teammates' own answers are left alone; questions and requests go on.
- Left alone — Kept in the run history. Branch: Leave it. Not a question or request for the help desk; the run history keeps the message.
- Recall the thread — Recalls what it remembered earlier (memory “slack-help-desk”). Branch: Pick it up. Reads the last 5 questions and answers in this thread (remembered for 14 days after the last one), so a follow-up is understood. Nothing is found for a new thread.
- Read your handbook page — Notion: Read a page's text. Reads the text of the Notion page you keep your answers in (your handbook or FAQ: headings, paragraphs, lists), up to 500 blocks or 50,000 characters. Text inside toggles isn't read.
- Answer from your handbook — AI step (runs on your AI provider key). AI answers only from your Notion handbook page and cites the section it used. When it isn't sure, or the message is a request a person must handle, it hands off to the topic's owner instead.
- Answer or hand off? — Decision: picks the branch to follow. Clear answers are posted in the thread; low-confidence questions and requests tag the topic's owner instead.
- Tag the owner in the thread — Slack: Reply in a thread. Branch: Hand off. Replies in the thread, tagging the person who owns the topic with what's needed.
- Answer in the thread — Slack: Reply in a thread. Branch: Answer. Replies in the thread with the answer and the handbook section it came from.
- Remember the thread — Remembers it for later runs (memory “slack-help-desk”, kept 14 days). Saves this question and the reply with the earlier ones in the thread (the last 5 are kept, for 14 days after the last one).
- Log the question — Google Sheets: Add a row. Adds a row to your help desk log sheet: when, who asked, the question, answered or handed off, the topic, confidence, source and any knowledge gap.
- Done — Kept in the run history. The run history keeps the message, the answer or hand-off and the log row.
Test it with Dry Run
Press Dry Run in the canvas. The agent runs on the sample data stored on its trigger (the “Sample data for Dry Run” box), so you can check every step's output before anything is live. The sample has the same shape as a real event from the app.
Sample data fields
text, user, ts, thread_ts, channel, subtype, bot_id, team_id, event_id.
- Nothing is sent or written: app actions, emails and Slack posts are simulated, and AI steps don't call your AI provider.
- Memory steps don't read or write stored memory: a recall finds nothing, and a save only shows what it would store.
Go live
- Open the trigger and click “Activate app trigger”: messages in the help channel then reach the agent within seconds.
- Activating the app trigger needs the trigger's connected account. The first check only remembers what's already there, so older items don't start runs; the same item never starts two runs.
- The setup checklist adds a “paid plan” item before activation: live runs need a paid plan (the Free plan only runs Dry Runs).
- When every checklist item is done and the trigger is on, the checklist says “Live — this agent is running”. Follow its runs in the workflow's History tab and in Analytics → Agents.
Questions
Where does it get answers from?
Only from the one Notion page you pick (your handbook or FAQ, written however you like). It reads the page's top-level text — headings, paragraphs, lists, to-dos — up to 500 blocks or 50,000 characters; text inside toggles, sub-pages, the rest of your Notion workspace, Google Drive and the web aren't read.
How does it know who to hand off to?
From the topic owners you list in its rules (e.g. “IT and laptops — U02ITDESK”, plus a default owner). The handbook page holds the answers; the owners stay in the agent's settings.
Does it remember the conversation?
Within a thread, yes: the last 5 questions and replies, for 14 days after the last one, so “and for part-timers?” is understood.
Can it cover two channels?
One channel per setup. Set the agent up again for a second channel (e.g. one for IT, one for HR) with its own handbook page.
Troubleshooting
- “No AI provider connected” or a rejected key: connect or fix the key in Settings → AI Providers, then press Test there.
- A checklist item stays unticked: the setting is still empty or still contains its placeholder text. Open the step from the checklist and fill it in.
- An app step fails with “Needs reconnect”: the account's access was revoked or expired. Reconnect it in Settings → Integrations.
- Slack says the app isn't in the channel: in Slack, type /invite @Fluxo Flow in that channel (always needed for private channels).
- No runs start: activate the app trigger with a connected account. Only items created after activation start runs.
- A step failed: open the run in History and check that step in the Trace tab for the error and what it received.
Generated from the agent's own workflow, so it always matches what the agent does. Last updated .