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 agentmods add skills/extrasmall0/dear-hiring-manager/batchnpx skills add extrasmall0/dear-hiring-manager --skill batchgit clone --depth 1 https://github.com/extrasmall0/dear-hiring-managerWrote 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/extrasmall0/dear-hiring-manager/batch)<a href="https://agentmods.dev/skills/extrasmall0/dear-hiring-manager/batch"><img src="https://agentmods.dev/badge/skills/extrasmall0/dear-hiring-manager/batch.svg" alt="Measured on agentmods" height="20"></a>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 | $0.00087 | $0.00933 |
| Opus 5 | $0.00044 | $0.00466 |
| Sonnet 5 | $0.00017 | $0.00187 |
| Haiku 4.5 | $0.00009 | $0.00093 |
Grade A, and why
batch 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 5d 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 — 57 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Batch apply (many jobs, one review)
Fill N applications, each in its own tab, all parked before Submit. The human reviews the whole batch at
the end. This orchestrates the apply skill once per URL — identical invariants, fill-or-flag, and
fit-gate. You never Submit anything.
Unattended by design — walk away while it runs. Filling is sequential (one tab at a time; a single
agent has no true parallel — that's the Phase-3 daemon's job), but you don't watch it. The batch never
pauses for you mid-run: anything that needs a human (account/login wall, email verification, CAPTCHA) is
marked blocked and skipped, to handle together at review. Come back to the parked + blocked tabs and
review/submit in one pass. Sessions can expire, so come back within a reasonable window, not days later.
Input
- URLs passed as arguments (space- or newline-separated), OR
- if none are given, read
~/.dear-hiring-manager/urls.txt(one URL per line; skip blank lines and lines starting with#).
Preconditions
~/.dear-hiring-manager/profile.mdmust exist — else stop and tell the user to run/dear-hiring-manager:onboardfirst.
Procedure
-
Collect the URL list (args or
urls.txt), de-dupe, and report the count. If more than ~10 URLs, process the first 10 this run and tell the user the rest were deferred (avoid a runaway). -
For each URL, in its own tab:
- Open a new browser tab for it (
browser_tabsactionnew) — one application per tab, all kept open. - Run the
applyskill procedure on that tab:- Stale/closed posting (redirect to board root /
?error=true, no form) → markskipped, move on. - Extract JD + company; score fit; fit-gate: below the profile's
Minimum fit score to applyor a hard-eligibility blocker → markskipped, do not fill, move on. - Otherwise fill-or-flag every field; generate a cover letter if the portal has one; stop before Submit.
- Stale/closed posting (redirect to board root /
- Update the row in
applications.md(status: skipped | filled | blocked; record fit + flag count). - Anything that needs a human — account/login wall, email verification, CAPTCHA, unreadable form
→ set
status=blockedwith the reason, leave the tab open, and move on. Never pause the batch, and never create an account unattended. Never let one URL abort the batch or sitin-progress.
- Open a new browser tab for it (
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.
- 5d ago First seen · 57 lines · 87 tokens per session scan A 5902036bb0e8
batch is a skill published in the GitHub repository extrasmall0/dear-hiring-manager (107 stars, last pushed 1mo ago), licensed MIT. It adds 87 tokens to every session and 933 once invoked, about $0.0004 per session on Opus 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-30.
Other skills, from other repositories
resume
Generate a tailored resume AND cover letter for a job description via the native four-role Resume Team, score both against ATS and HR rubrics, create DOCX files, and update the tracker. Use when the user pastes a job description and wants a complete application package (resume plus cover letter) with dual scoring and…
writing-coach
Human-voice writing coach that rewrites resumes and cover letters for brevity, burstiness, plain language, and authentic impact, and blocks AI-sounding prose. Use when the user wants to improve writing quality, fix robotic or generic AI-sounding text, cut fluff, strengthen bullets and summaries, or pass the…
find-jobs
Search live job boards for roles that match the master resume, then score and rank them by ATS and HR fit. Use when the user wants to discover or find jobs, search openings by title or location, wants remote roles, or asks which live listings best match their background. Uses the discoverjobs MCP tool and never…
cover-letter
Create a compelling one-page, human-voice cover letter for a job description and generate the final DOCX. Use when the user wants a cover letter only (no resume), pastes a JD and asks for a letter, or needs a letter to accompany an already-tailored resume. Runs the mandatory humanvoiceaudit before producing the DOCX.
job-fit
Run the deterministic, digest-bound candidate-fit gate that scores the configured master resume against an exact job description before any resume tailoring. Use when the user wants a GO/NO-GO fit check on a JD, asks "should I apply", or before starting resume work, to confirm score >= 70 with zero hard knockouts.…
setup
One-time setup for Resume Builder — Python dependencies, config.json, cloud or local scoring, and optional LLM features. Use once right after installing, or when the user reports missing dependencies, a missing or incomplete config, wants to switch between cloud and local scoring, or wants to enable AI-augmented…