Demo mode. Sample data, Gmail sends are dry runs (the exact API request is recorded, nothing leaves), no login. The sample data resets once a day, or now with the button.

User guide

Daily rhythm

The system runs itself: discovery reads every source page on its schedule, outreach sends up to the daily cap on its schedule. Your job is a few minutes a day:

  1. Dashboard: check emails today and this month against the caps, and the last runs.
  2. Needs review: approve, merge or reject the people the automation would not email on its own.
  3. Outreach history: see what went out; open an email to read it exactly as sent.

Anything can also be run by hand: Run discovery now and Run outreach now on the dashboard. Both open the run trace when they finish.

Contact statuses

Status Meaning Automation
Eligible for outreach found, confident, not yet emailed may be emailed
Needs review no email, low confidence, or a possible duplicate waits for you
Previously contacted emailed at least once never emailed again automatically
Cooldown you set a temporary hold; the date is the last contact plus the cooldown eligible again after the date
Do not contact the person asked, or you decided never
Blocked institution or person blocked never
Invalid contact role mailbox, bad address, duplicate never

Change a status on the contact page; the reason you type is kept.

Pages

Contacts. Search by name, email, title or department; filter by status, discipline and institution. The contact page shows the live send check ("would not send: institution cooldown until..."), lets you correct any field, change the status, add an exclusion in one click, and merge the record into another one.

Institutions. Status (active, cooldown, blocked, do not contact), a per-institution cap that overrides the global one, notes, the pages watched and every contact there.

Needs review. One card per person with the reason. Approve (becomes eligible), Merge as duplicate (type the id of the record to keep; suggestions are shown), Do not contact, or Not a valid contact.

Source pages. The pages the crawler reads. Add a URL; the institution is detected from the domain or you pick it; give a discipline hint when the page belongs to one school. Crawl now runs discovery for that page only and shows the trace: which extractor matched, who was found, what changed.

Targets. Target titles are regular expressions with a priority; the longest matching pattern wins. Disciplines are keyword lists; switching one off keeps its contacts but the send gate skips them. Re-tag fills in disciplines for contacts that have none.

Email templates. Subject and body with merge fields. Preview renders the template for a real contact. One template per discipline plus a default; the default is used when no discipline matches.

Merge fields: {{salutation}} {{first_name}} {{last_name}} {{full_name}} {{title}} {{department}} {{institution}} {{discipline}} {{operator_name}} {{operator_signature}} {{today}} {{cv_filename}}. {{salutation}} becomes "Dr. Last" for doctorates, "Dean Last" for deans, "Professor Last" for chairs and heads, otherwise the full name.

Exclusions. Email, domain, institution, person (by name, any institution) or department at one institution, with a reason. Checked before every send.

Outreach history. Every email with recipient, subject, template, attachment, Gmail message id and result. Open one to see the text and the exact Gmail API request.

Runs. Every discovery and outreach run with its trace. Skips are explained line by line.

Settings. Daily and monthly caps, cooldowns (per person, per institution, per department), caps per institution and department, the confidence threshold, the discipline requirement, role-mailbox policy, pause, cron schedules and send window, sender name, address and signature, the Gmail connection, the CV.

Export. Contacts and history as Excel or CSV.

What "confidence" means

A score from 0 to 100 built from how the person was found (structured data scores higher than prose), whether an email is present and belongs to the institution's domain, whether the title matches a target, and whether the name reads as a person. Contacts at or above the threshold (Settings) can be emailed automatically; the rest wait for review. Approving a contact in review lifts it to the threshold.

Pausing

The Pause button in the sidebar (or the checkbox in Settings) stops all automated sending immediately. Discovery keeps running. Resume when ready.