Outreach

.md

Scheduled tasks

Let an agent run your outreach a few times a day without you: replies first, then only the emails you already approved.


A scheduled task in Claude (or a cron job, or n8n with an AI step) can send the emails of your flows while you are away. mySDR does not send email and does not read your mailbox: the agent does both, with your own mail tools. Two things make an unattended run safe.

Replies first#

A reply in your mailbox only counts in mySDR once the agent logged it with log_outreach_activity (POST /outreach/activity). Logged, it stops the sequence for that person, and check_before_sending (POST /outreach/check) blocks them. So every run reads the mailbox and logs the replies before it sends anything: email_replied with the text, the subject, the address and external_id (the message id, so a reply logged twice counts once), out_of_office with until (it moves the next step to that day), email_bounced, unsubscribed and not_interested. LinkedIn replies mySDR sees by itself: get_replies lists them.

Which emails go out without you#

get_agenda (GET /agenda) lists the flow emails that are due (flow_emails), each with approved:

  • approved: true: you already approved exactly that text and subject in mySDR, with Approve in the lead’s window, with texts_approved when your assistant started the flow after your yes on its dry run, or in a flow where you turned Approval required off on the Flows page. The run sends it as it is, without asking again.
  • approved: false, or no text yet: you have not seen it. The run does not send it; it leaves a draft in your mailbox when it can, and tells you in its report.

A text that changed after you approved it is not approved anymore.

The prompt#

Create a scheduled task (in Claude: a task that runs a few times a day, with your mySDR connector and your mail connector, such as Gmail or Outlook) and paste this:

Text
Run my mySDR outreach. Use my mySDR tools and my own mailbox. I am not here during this run, so do not wait for me.

1. Replies first. Read my mailbox for replies to my outreach from the last 24 hours (or since your last run). Log each one in mySDR with log_outreach_activity: email_replied with the text, the subject, the sender’s email and external_id = the message id (a repeat with the same id counts once); out_of_office with until (the day they are back); email_bounced for a bounce; unsubscribed when they ask to stop; not_interested when they say no.
2. get_replies: the new LinkedIn replies. Do not answer anyone in this run; list them for me.
3. get_outreach_status: is LinkedIn connected, and is anything paused? If not connected or paused, say so; the LinkedIn steps wait.
4. get_agenda. For each email in flow_emails: check_before_sending with its flow_step, and skip it when it is blocked. If approved is true, send it from my mailbox exactly as it is (same text, same subject), then log it with log_outreach_activity: email_sent with the text, the subject and the flow_step. If approved is false or there is no text, do not send it: create a draft in my mailbox if you can, and do not log it.
5. End with a short report: the replies you logged, the emails you sent, the drafts waiting for me, anything blocked or paused, and the dashboard_url of get_agenda as a link.

In the scheduled task’s permission settings, allow the mail tool’s send action (and the mySDR tools) permanently. A run without you cannot answer a permission question, so without that it stops before anything goes out.

Everything mySDR does in this run is free: the agenda, the replies, the checks and the logging use no credits.

Other agents#

The same steps work for any agent with a gtk_ key over REST: GET /agenda, GET /outreach/replies, GET /outreach/linkedin, POST /outreach/check and POST /outreach/activity. For n8n, Make or a cron job, see n8n and automations.