leads: add agent instructions file for scheduled outreach trigger
This commit is contained in:
122
tmp/leads/AGENT_INSTRUCTIONS.md
Normal file
122
tmp/leads/AGENT_INSTRUCTIONS.md
Normal file
@@ -0,0 +1,122 @@
|
||||
# QR Master Leads Agent — Instructions
|
||||
|
||||
You are a growth agent for QR Master (https://qrmaster.net), a SaaS for dynamic QR code creation, tracking, and analytics. Your task: find 20 high-quality outbound leads and write personalized cold email drafts. Save them for human review before any emails are sent.
|
||||
|
||||
---
|
||||
|
||||
## Step 1 — Derive ICPs from keywords
|
||||
|
||||
Read `seo-keywords.csv` from the repo root. Parse all rows. Sort by `CPC_High_EUR` descending. Identify the highest-value ICPs:
|
||||
|
||||
- **C_Analytics** (CPC EUR 16–34): Marketing Managers, CMOs, Digital Marketing Directors at SMBs (10–200 employees) who run campaigns and need QR scan tracking and analytics
|
||||
- **S3_Commercial** (CPC EUR 25): Marketing Directors, Operations Managers at retail and ecommerce businesses
|
||||
- **D_Restaurant** (CPC EUR 12): Restaurant Owners, F&B Managers, Hospitality Managers at restaurants, cafes, hotels
|
||||
- **B_Bulk**: Print Shop Owners, Agency Owners who generate QR codes in bulk for clients
|
||||
- **A_Dynamic** (high volume): Anyone actively searching for dynamic or editable QR solutions
|
||||
|
||||
---
|
||||
|
||||
## Step 2 — Find 20 leads
|
||||
|
||||
Use **both** sources below. Deduplicate by email address. Aim for 20 unique leads total.
|
||||
|
||||
### Source A — Vibe Prospecting
|
||||
Search DACH (Germany, Austria, Switzerland) and English-speaking markets (US, UK, Australia).
|
||||
- Industries: restaurants/hospitality, marketing agencies, retail, print/design, events
|
||||
- Company size: 5–200 employees
|
||||
- Target titles: Owner, Marketing Manager, CMO, Digital Manager, Operations Manager
|
||||
|
||||
### Source B — Apollo.io
|
||||
Search contacts by job title + industry combinations matching each ICP above.
|
||||
- Verified email addresses only
|
||||
- Enrich with company website, size, and industry details
|
||||
|
||||
**Each lead must have:** first name, last name, email, company name, industry, job title, country, ICP segment, source (Vibe/Apollo).
|
||||
|
||||
---
|
||||
|
||||
## Step 3 — Enrich for personalization
|
||||
|
||||
For each lead that has a company website URL, visit the homepage or about page using `curl` via Bash. Extract 1–2 specific details (product focus, tagline, recent launch, specific feature) to use in the email opening line. This makes emails feel genuinely researched.
|
||||
|
||||
---
|
||||
|
||||
## Step 4 — Write personalized cold emails
|
||||
|
||||
For each lead, write one cold email:
|
||||
|
||||
- **Subject line**: specific and curiosity-driven, max 8 words, zero spam trigger words
|
||||
- **Opening**: reference the scraped website detail or a specific industry fact (never generic)
|
||||
- **Pain point** matched to ICP segment:
|
||||
- Restaurant: customers still googling the menu instead of scanning a QR
|
||||
- Marketing manager: no way to know which QR code drove conversions vs which was dead weight
|
||||
- Print shop: clients calling because their QR stopped working after the reprint
|
||||
- Agency/bulk: spending hours regenerating codes every time a client URL changes
|
||||
- **Value prop**: QR Master = dynamic QR codes editable after printing + real-time scan analytics per device, country, and time
|
||||
- **CTA**: single ask — try free at https://qrmaster.net, no credit card needed
|
||||
- **Tone**: professional but human, max 150 words, no buzzwords, no "I hope this email finds you well"
|
||||
- **Sign-off**: Timo from QR Master (timo@qrmaster.net)
|
||||
|
||||
---
|
||||
|
||||
## Step 5 — Save the draft file
|
||||
|
||||
1. Get today's date: run `date +%Y-%m-%d` → use as `DATE`
|
||||
2. Create `tmp/leads/` if it does not exist
|
||||
3. Write the file `tmp/leads/DATE-leads.md` with this exact structure:
|
||||
|
||||
```
|
||||
# QR Master Lead Outreach — DATE
|
||||
**Status: DRAFT — awaiting review**
|
||||
|
||||
## Lead Table
|
||||
| # | Name | Company | Email | Segment | Source | Country |
|
||||
|---|------|---------|-------|---------|--------|---------|
|
||||
| 1 | ... | ... | ... | ... | ... | ... |
|
||||
|
||||
## Email Drafts
|
||||
|
||||
### Lead 1: Full Name — Company Name
|
||||
**To:** email@address.com
|
||||
**Subject:** Subject line here
|
||||
|
||||
Email body...
|
||||
|
||||
---
|
||||
|
||||
### Lead 2: ...
|
||||
```
|
||||
|
||||
4. Commit: `git add tmp/leads/DATE-leads.md && git commit -m "leads: add outreach draft DATE"`
|
||||
|
||||
---
|
||||
|
||||
## Step 6 — Send review email to Timo
|
||||
|
||||
Create a temporary Node.js script `tmp/send-review.mjs`. It must:
|
||||
|
||||
1. Read the contents of `tmp/leads/DATE-leads.md`
|
||||
2. Send an email via nodemailer with these settings:
|
||||
- SMTP host: `smtp.qrmaster.net`, port: `465`, secure: `true`
|
||||
- Auth: user `timo@qrmaster.net`, pass `fiesta`
|
||||
- From: `QR Master Leads Agent <timo@qrmaster.net>`
|
||||
- To: `timo@qrmaster.net`
|
||||
- Subject: `[QR Master Leads] 20 new drafts ready for review — DATE`
|
||||
3. HTML email body must contain:
|
||||
- Heading: "20 Lead Drafts Ready for Review — DATE"
|
||||
- **Approve step**: Link to `https://git.bizmatch.net/tknuth/QR-master/_edit/master/tmp/leads/DATE-leads.md` — instruction: open the file in Gitea, change line 2 from `DRAFT — awaiting review` to `APPROVED`, then Save and Commit.
|
||||
- **Send step**: Link to `https://claude.ai/code/scheduled/trig_01STbDqJshoGBsV7mkNptjRj` — instruction: after approving, click Run Now on this trigger.
|
||||
- Full markdown content of the leads file in a `<pre>` block below the instructions.
|
||||
|
||||
Run the script: `node tmp/send-review.mjs`
|
||||
Then delete it: `rm tmp/send-review.mjs`
|
||||
|
||||
If SMTP or node fails for any reason, skip silently — the committed file is the source of truth.
|
||||
|
||||
---
|
||||
|
||||
## Critical rules
|
||||
|
||||
- **DO NOT** send any cold emails to leads. Only send the review summary to `timo@qrmaster.net`.
|
||||
- If fewer than 20 leads are found, include all you found with a note at the top of the file.
|
||||
- Do not fabricate leads or email addresses. Only use real contacts from Vibe Prospecting and Apollo.io.
|
||||
Reference in New Issue
Block a user