Day 1 Guru reading list for every new hire in Slack

Each weekday at 8am, find anyone starting today in BambooHR, pull the right Guru cards for their role, and DM them a personalized first-week reading list in Slack.

Deterministic Code
BambooHRGuruSlack BotHR & PeopleOperationsOnboarding AutomationNotifications & Alerts
PromptCreate

Build me a deterministic code workflow that runs every weekday at 8am in my workspace timezone and sends each Day 1 new hire a personalized first-week Guru reading list as a Slack DM, so they stop pinging teammates for the same starter docs.

Steps:

1. Trigger: cron, Monday through Friday at 8am.

2. Call BambooHR Get Employee Directory. Keep only employees whose hireDate is today. If none, post a single 'No new hires today' line to #people-ops in Slack and exit.

3. Call Guru List Collections once to look up the ID of the collection named 'Onboarding'. Reuse it for the rest of the run.

4. For each new hire, call Guru Search Cards scoped to that Onboarding collection, using their department (fall back to job title if department is empty) as the keyword. Take the top 5 role-relevant cards. Always include a fixed set of company-basics cards that I configure once at the top of the workflow.

5. Group the cards into three buckets in this order: Day 1, Week 1, Reference. Use card tags or a simple title-prefix rule, and surface that mapping as a config block I can edit.

6. For each new hire, call Slack Bot Look Up User by Email using their BambooHR work email to get their Slack user ID. If not found, skip them and add a note to the recap.

7. Call Slack Bot Open a Conversation with that user ID to get a DM channel, then Slack Bot Send a Message to it. The message should include: a warm greeting using the new hire's first name, an @-mention of their manager (also looked up by work email), and the card links grouped Day 1 / Week 1 / Reference as clickable Slack links.

8. After the DMs go out, post one recap message to #people-ops summarizing every new hire greeted today: name, role, manager, and any skips with reason.

Keep the flow deterministic: list, filter by date, fixed search per role, fan out messages. No agent reasoning required. Use BambooHR for the directory, Guru for collections and card search, and Slack Bot for the DM and channel post.

Additional information

What does this prompt do?
  • Each weekday at 8am, pulls a list of employees starting today from BambooHR.
  • Searches your Onboarding collection in Guru for the cards most relevant to each new hire's role, plus the company basics everyone should read.
  • Sends each new hire a personalized Slack DM with their reading list grouped as Day 1, Week 1, and Reference, and @-mentions their manager.
  • Posts a recap line per new hire to your People Ops Slack channel so HR can see who got greeted and follow up on anyone who was skipped.
What do I need to use this?
  • A BambooHR account with permission to read your employee directory.
  • A Guru workspace with an Onboarding collection that holds your starter cards.
  • A Slack workspace where a bot can DM employees and post to a People Ops channel.
How can I customize it?
  • Change the send time, run it seven days a week, or scope it to specific offices or departments.
  • Swap the Onboarding collection or update the fixed set of company-basics cards everyone should always receive.
  • Pick which Slack channel gets the People Ops recap, or send the recap to a manager DM instead.

Frequently asked questions

What happens on a day with no new hires?
The workflow simply doesn't DM anyone. It can still post a short 'no new hires today' line to your People Ops channel, or stay silent, whichever you prefer.
How does it pick which Guru cards each new hire sees?
It searches your Onboarding collection using the new hire's department or job title and picks the top role-relevant cards. Then it adds the fixed set of company-basics cards you want everyone to read on Day 1.
Will the same person get the message twice?
No. The workflow only messages employees whose start date is today, so each new hire gets their reading list exactly once.
What if a new hire isn't in Slack yet?
It looks them up by their work email. If they haven't joined the workspace, that person is skipped and called out in the People Ops recap so HR can follow up.
Can I include the new hire's manager in the message?
Yes. The DM @-mentions their manager so the new hire knows exactly who to ping with first-week questions.

Stop letting your teammates be everyone's onboarding helpdesk.

Connect BambooHR, Guru, and Slack once, and Geni hands every new hire their personalized reading list at 8am on Day 1.