Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx skills add Mahashwetha/Job-search-email-system-claude --skill send-outreachgit clone --depth 1 https://github.com/Mahashwetha/Job-search-email-system-claudeWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/mahashwetha/job-search-email-system-claude/send-outreach)<a href="https://agentmods.dev/skills/mahashwetha/job-search-email-system-claude/send-outreach"><img src="https://agentmods.dev/badge/skills/mahashwetha/job-search-email-system-claude/send-outreach/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/skills/mahashwetha/job-search-email-system-claude/send-outreach"><img src="https://agentmods.dev/badge/skills/mahashwetha/job-search-email-system-claude/send-outreach.svg" alt="Reviewed on agentmods" width="80" height="20"></a>- NVIDIA SkillSpector warn
SkillSpector: 2 findings, up to medium
These are SkillSpector’s own severities. On a checked sample its high-severity flags on skills were ~96% false positives — a documented command, a public API, a “never do X” rule — so we show them as a caution to read, not a verdict. Why →
- medium Excessive Agency · line 88 Skill enables autonomous high-impact decisions without human-in-the-loop verification. Critical operations (destructive commands, financial transactions, data deletion) should require explicit user confirmation.Fix: Add human-in-the-loop confirmation for destructive, irreversible, or high-impact operations. Never auto-execute commands that modify files, send data, or alter system state.
- medium Excessive Agency · line 92 Skill enables autonomous high-impact decisions without human-in-the-loop verification. Critical operations (destructive commands, financial transactions, data deletion) should require explicit user confirmation.Fix: Add human-in-the-loop confirmation for destructive, irreversible, or high-impact operations. Never auto-execute commands that modify files, send data, or alter system state.
What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00118 | $0.01402 |
| Opus 5.5 | $0.00047 | $0.00561 |
| Sonnet 5.5 | $0.00024 | $0.00280 |
| Haiku 4.5 | $0.00012 | $0.00140 |
Grade A, and why
send-outreach scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 7d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 108 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Send HR Outreach Email
Send a personalised cold outreach email with resume + portfolio attached using send_outreach_emails.py.
Script location
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 your own address (recipient_email in config.py) first so the user can approve the email:
cd claude-job-agent
echo yes | python send_outreach_emails.py --name "[NAME]" --email "[email protected]" --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 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 (role known/overridden) → status=done means already applied, so it uses
email_followup_template.txt("I recently applied for the {role} role...") — never the agency-flavored cold outreach template - If not in tracker → sets role to
[Company] opportunitiesand usesemail_cold_outreach_spontaneous_template.txt - 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/email_cold_outreach_template.txtexists - LinkedIn InMail variants also live in
emailoutreach/:linkedinoutreach_followup_template.txt(checking status on an application) andlinkedinoutreach_coldintro_template.txt(plain cold outreach, no application) - 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.
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 7d ago Changed d362c90d9a28
- 20d ago Changed 9224cbd202e7
- 1mo ago Changed · -1 lines 1929bd594fd6
- 1mo ago Changed · +1 lines 80dd6d7cf3c5
- 1mo ago First seen · 108 lines · 118 tokens per session scan A 702610b7f614
send-outreach is a skill published in the GitHub repository Mahashwetha/Job-search-email-system-claude (10 stars, last pushed today), licensed MIT. It adds 118 tokens to every session and 1,402 once invoked, about $0.0005 per session on Opus 5.5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.
Other skills, from other repositories
seo-landing
Generates fast, SEO-optimized static HTML landing pages targeting 100/100 PageSpeed (LCP < 2.5s, INP < 100ms, CLS < 0.1), full schema.org JSON-LD, AVIF images, critical CSS, zero external dependencies. Use when: user asks to create/build/generate a landing page, one-pager, or static site with focus on SEO, speed, or…
skill-plan
A personalized learning-plan method that turns a target job into a staged path based on your starting skills and weekly time.
skill-scan
A job-research workflow that matches a person's existing skills and learning capacity with current AI-related vacancies on BOSS Zhipin, a Chinese recruitment platform.
skill-status
A study-progress companion that reads a saved JSON file to remember your learning plan, progress, predictions, and past notes between sessions.
skill-init
An onboarding guide for people exploring well-paid jobs in the age of AI. It builds a profile from their skills, experience, time, location, salary target, and learning situation.
jobyap
Search live job postings aggregated by JobYap and read the community discussion attached to each one. Use when the user wants to find jobs or openings ("find me remote React jobs", "what's hiring in Berlin", "marketing roles at Stripe"), find the best openings for a resume, compare listings or salaries, check what…