Agent setup guide
Interview Prep Brief
Before each interview, DMs every interviewer a brief on the candidate with job-related suggested questions.
What it does
Before each interview, DMs every interviewer a brief on the candidate with job-related suggested questions.
- Watches the Google Calendar your interviews are booked on (new events, checked on your plan's schedule interval).
- AI decides whether each event is a candidate interview, and picks out the candidate (the guest outside your domain) and the interviewers (your colleagues on the invite). Other events are skipped.
- Waits until about 3 hours before the interview (or sends right away when it's sooner), then looks the candidate up in Greenhouse by email and reads their activity feed (notes, emails, activity).
- AI writes a two-minute brief: background from the Greenhouse profile, a short summary of relevant earlier interviewer notes, focus areas, four job-related suggested questions and logistics — only what the data says, never invented facts, and nothing about protected characteristics.
- DMs the brief to every interviewer on the invite in Slack (found by their work email).
What it needs
- A paid plan (agents run live on paid plans).
- An AI provider key (Settings → AI Providers).
- Google Calendar, Greenhouse and Slack, connected in Settings → Integrations.
- Interview invites that include the candidate's email address, with interviewers using the same email in Slack.
What it doesn't do
- It can't read résumé files or scorecards — it uses the Greenhouse profile, the candidate's notes (newest 100) and the invite.
- It doesn't schedule, move or cancel interviews. If an interview is moved after it was booked, the brief still goes at the originally planned time.
- It doesn't score or recommend candidates.
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: Google Calendar, Greenhouse and Slack.
- The app it watches, connected in Settings → Integrations (the agent starts from an app event).
- About 15 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 Google Calendar
Connect the Google account whose calendar interviews are booked on (Settings → Integrations → Google Calendar).
3. Connect Greenhouse
Connect Greenhouse (Settings → Integrations → Greenhouse) with a Harvest V3 credential that can list candidates and notes (harvest:candidates:list, harvest:notes:list).
4. Connect Slack
Connect the Slack workspace your interviewers use (Settings → Integrations → Slack).
5. Pick the interview calendar account
Open the trigger and pick the Google account (and calendar, if not the main one) interviews are booked on.
| Setting | What to enter | In step |
|---|---|---|
| Google account (interview calendar) | The Google account whose calendar interviews are booked on. The trigger watches its main calendar; pick another calendar on the trigger if needed. Pick your connected Google Calendar account. | “New event on the interview calendar” |
6. Describe your domain and invite titles
Open “Is it an interview? Who's who?” and replace the placeholder with your email domain(s) and how interview invites are titled.
| Setting | What to enter | In step |
|---|---|---|
| Your email domain(s) and invite titles | Replace the placeholder in “Is it an interview? Who's who?” with your company's email domain(s) and how interview invites are titled, so internal meetings are skipped. It starts as “[YOUR COMPANY'S EMAIL DOMAIN(S) AND HOW YOUR INTERVIEW INVITES ARE TITLED HERE]” until you replace it. | “Is it an interview? Who's who?” |
7. Pick your Greenhouse and Slack accounts
Pick your Greenhouse account on “Look up the candidate in Greenhouse” and “Read the candidate's notes”, and your Slack workspace on “Find the interviewer in Slack” and “DM them the brief”.
| Setting | What to enter | In step |
|---|---|---|
| Greenhouse account | The Greenhouse account candidates are looked up in. Pick your connected Greenhouse account. | “Look up the candidate in Greenhouse” |
| Greenhouse account (notes) | The same Greenhouse account, for the candidate's notes. Pick your connected Greenhouse account. | “Read the candidate's notes” |
| Slack account | The Slack workspace your interviewers are in (to find them by email). Pick your connected Slack account. | “Find the interviewer in Slack” |
| Slack account | The Slack workspace briefs are sent in (the same workspace). Pick your connected Slack account. | “DM them the brief” |
8. Test it with Dry Run
Press Dry Run: the agent runs on sample data with no messages sent and nothing written to your apps.
9. Switch the trigger on
Open the trigger and activate it. From then on, each new event on the calendar is checked on your plan's schedule interval.
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 event on the interview calendar — Starts on “New event” in Google Calendar (an app event). Starts when an event is added to the Google Calendar your interviews are booked on (checked on your plan's schedule interval).
- Is it an interview? Who's who? — AI step (runs on your AI provider key). AI decides whether the event is a candidate interview, picks out the candidate (the guest outside your company) and the interviewers (your colleagues on the invite), and works out when to send the brief.
- Candidate interview? — Decision: picks the branch to follow. Events that aren't candidate interviews (internal meetings, calls without an outside guest) stop here.
- Not an interview — Kept in the run history. Branch: Not an interview. The run history keeps the event and the reason it was skipped.
- Wait until shortly before the interview — Waits until a date taken from the data (at most 30 days). Branch: Interview. Pauses until about 3 hours before the interview (right away when it's sooner), so the brief arrives when the interviewer needs it and uses the latest Greenhouse data.
- Look up the candidate in Greenhouse — Greenhouse: Find a candidate by email. Finds the candidate in Greenhouse by the email on the invite: current company and title, tags, applications and other profile details.
- Found in Greenhouse? — Decision: picks the branch to follow. When the candidate is in Greenhouse, their activity feed (interviewer notes, emails, activity) is read too; otherwise the brief is written from the invite only.
- Read the candidate's notes — Greenhouse: Read a candidate's activity feed. Branch: Found. Reads the candidate's Greenhouse activity feed: notes from earlier interviews and screens, emails and activity (newest 100).
- Write the prep brief — AI step (runs on your AI provider key). Branch: Not in Greenhouse. AI writes a one-screen brief from the Greenhouse profile, the relevant notes from earlier conversations and the invite: who the candidate is, what earlier interviewers noted, what to focus on, and suggested questions for the role.
- Each interviewer — Repeats the steps below for each item (up to 10 per run). Repeats for every colleague on the invite (up to 10).
- [For each item — “Each interviewer”] Find the interviewer in Slack — Slack: Find user by email. Looks up the interviewer's Slack account by their work email.
- [For each item — “Each interviewer”] DM them the brief — Slack: Post a message. Sends the brief as a direct message from the Fluxo Flow app.
- Briefs sent — Kept in the run history. The run history keeps the brief and which interviewers got it (and any that couldn't be found in Slack).
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
id, summary, description, location, start.dateTime, start.timeZone, end.dateTime, end.timeZone, status, html_link, meet_link, attendees (a list), organizer_email, created, updated.
- Nothing is sent or written: app actions, emails and Slack posts are simulated, and AI steps don't call your AI provider.
- Wait steps don't wait: they report how long they would wait and the run goes on.
- For-each loops repeat only the first 3 items.
Go live
- Open the trigger and activate it. From then on, each new event on the calendar is checked on your plan's schedule interval.
- 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
How does it know who the candidate is?
The candidate is the guest whose email isn't on your company's domain. If the invite doesn't include the candidate's email, it can't look them up and the brief says so.
Can it read résumés?
No. It uses the Greenhouse candidate profile, the candidate's notes and the invite. Résumé files and scorecards aren't read.
What does it take from the notes?
Only what the notes say that matters for the interview — earlier interviewers' observations and follow-ups — summarised, never extended. Anything about protected characteristics, health, family or pay history is left out.
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 run shows “Waiting until …” in History: that's a Wait step; it continues on its own (it can be cancelled through the API).
- 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 .