Install
$ agentstack add skill-mahashwetha-job-search-email-system-claude-send-outreach ✓ scanned · ✓ verified — works with Claude Code, Cursor, and more.
Security review
✓ PassedNo issues found. Passed automated security review. · v0.1.0 How review works →
- ✓ Prompt-injection patterns
- ✓ Secret / credential exfiltration
- ✓ Dangerous shell & filesystem operations
- ✓ Untrusted network calls
- ✓ Known-malicious package signatures
What it can access
- ✓ Network access No
- ✓ Filesystem access No
- ✓ Shell / process execution No
- ✓ Environment & secrets No
- ✓ Dynamic code execution No
From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.
About
Send HR Outreach Email
Send a personalised cold outreach email with resume + portfolio attached using send_outreach_emails.py.
Script location
C:\Users\mahas\Learnings\claude-job-agent\send_outreach_emails.py
What you need from the user
| Argument | Required | Notes | |---|---|---| | --name | Yes | HR contact full name (e.g. "Andrea Smith") | | --email | Yes | HR contact email address | | --company | Yes | Company name exactly as in tracker (used for role lookup) | | --cc | No | CC email address (e.g. second recruiter) |
If the user hasn't provided all required info, ask for it before running.
Steps
1 — Preview first (dry run to user's inbox)
Always send a test to mahashwetha91@gmail.com first so the user can approve the email:
cd "C:\Users\mahas\Learnings\claude-job-agent"
echo yes | python send_outreach_emails.py --name "[NAME]" --email "mahashwetha91@gmail.com" --company "[COMPANY]"
Show the preview output to the user and ask: "Looks good? Send to the real recipient?"
2 — Send to real recipient (only after user confirms)
cd "C:\Users\mahas\Learnings\claude-job-agent"
echo yes | python send_outreach_emails.py --name "[NAME]" --email "[EMAIL]" --company "[COMPANY]"
Add --cc "[CC_EMAIL]" if a CC was provided.
What the script does automatically
- Looks up the role from
List.xlsx(matches company name, status =done) - If found in tracker → fills
{role}placeholder with the actual role title - If not in tracker → sets role to
[Company] opportunities - Always uses
cold_outreach_template.txt(Jinka-style with bullet points) - Attaches both PDFs from
resume/folder - Shows full preview before sending
Rules
- Never skip the test send step — always preview to user's inbox first
- Never send to real recipient without explicit user approval after the test
- If the script errors on missing attachment, check that
resume/folder has both PDFs - If template not found, check that
emailoutreach/cold_outreach_template.txtexists - Do not hardcode HR contact details anywhere in code or skill files
- If the job listing URL returns 404 or any error (expired/taken down), do not send the outreach email — the role no longer exists. Either switch to the spontaneous template or skip entirely and notify the user.
Weekly draft mode — "send this week's outreach emails"
When triggered by "send this week's outreach emails", "send weekly outreach", or "send the drafted emails":
Step 1 — Read saved drafts
Check C:\Users\mahas\Learnings\claude-job-agent\outreach_drafts\ for *_draft.txt files saved by the weekly-hr-search routine.
Parse each file:
TO: {email}
SUBJECT: {subject}
---
{body}
Step 2 — Send one by one with confirmation
For each draft file, show the user:
━━━━━━━━━━━━━━━━━━━━━━━━━━━━
COMPANY: {company}
TO: {email}
SUBJECT: {subject}
---
{body}
━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Send this one? (yes / no / stop)
Wait for explicit user confirmation before sending each one.
- yes → send via
send_outreach_emails.py, then move to next draft - no → skip this draft, move to next
- stop → stop processing remaining drafts
Step 3 — Clean up sent drafts
After user confirms a draft was sent successfully, delete that _draft.txt file so it doesn't appear again next week.
Fallback — no drafts folder or empty
If outreach_drafts/ doesn't exist or has no draft files, fall back to the standard single-email flow and ask the user for --name, --email, --company.
Source & license
This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.
- Author: Mahashwetha
- Source: Mahashwetha/Job-search-email-system-claude
- License: MIT
Install and usage instructions live in the source repository linked above.
Reviews
No reviews yet — be the first.
Write a review
Versions
- v0.1.0 Imported from the upstream source.