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 AkbarDevop/ai-job-agent --skill job-followupgit clone --depth 1 https://github.com/AkbarDevop/ai-job-agentWrote 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/akbardevop/ai-job-agent/job-followup)<a href="https://agentmods.dev/skills/akbardevop/ai-job-agent/job-followup"><img src="https://agentmods.dev/badge/skills/akbardevop/ai-job-agent/job-followup/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/akbardevop/ai-job-agent/job-followup"><img src="https://agentmods.dev/badge/skills/akbardevop/ai-job-agent/job-followup.svg" alt="Reviewed on agentmods" width="80" 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.1 | $0.00137 | $0.01967 |
| Opus 5 | $0.00068 | $0.00983 |
| Sonnet 5 | $0.00027 | $0.00393 |
| Haiku 4.5 | $0.00014 | $0.00197 |
Grade A, and why
job-followup 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 13d 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 — 147 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Job Followup
Companion to /job-outreach. Reads outreach-log.csv, figures out which cold emails need a nudge, and (optionally) walks the user through drafting and sending follow-ups one at a time.
Cadence (borrowed from santifer/career-ops)
| Stage | Days since last touch | Max total follow-ups |
|---|---|---|
| First follow-up (after cold email) | 7 | 1 |
| Second follow-up | 7 (so day 14 from original) | 2 (stop after this) |
A contact is done once any of these is true:
replied_atis setfollow_up_count≥ 2status∈ {bounced,replied,interview_scheduled,closed}
Repo location
$AI_JOB_AGENT_ROOT → ~/.claude/skills/ai-job-agent/ → REPO_PATH marker file → ~/ai-job-agent/.
Workflow
Step 1 — Read the log
Read $AI_JOB_AGENT_ROOT/outreach-log.csv (fall back to $OUTREACH_LOG env var).
If missing or empty: tell the user to run /job-outreach at least once and stop.
Step 2 — Compute urgency for every non-done row
For each row where the contact is not done (per rules above):
reference_date=last_follow_up_atif set, elsesent_atdays_since= today −reference_datenext_followup_after=reference_date+ 7 daysurgency:overdue→days_since > 10due→days_since ≥ 7soon→days_since ≥ 5waiting→ otherwise
Step 3 — Render the dashboard table
Sort by urgency (overdue → due → soon → waiting), then by days_since desc within each bucket.
| # | Urgency | Days since | Company | Name | Round | Subject (original) | Sent |
|---|---|---|---|---|---|---|---|
| 1 | 🚨 overdue | 12 | GFT Infrastructure | Paul Young | 1/2 | Intern interest — substation… | 2026-04-10 |
| 2 | ⏰ due | 7 | Worley | Zulfiya Vafaeva | 1/2 | Savolim bor — GL intern… | 2026-04-15 |
| 3 | 👀 soon | 5 | Masdar | Ali Al-Maktoum | 1/2 | Energy intern from Mizzou… | 2026-04-17 |
| 4 | 💤 waiting | 2 | Plug and Play | Muhammad Mahmudov | 1/2 | Tashkent program interest… | 2026-04-20 |
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.
- 13d ago First seen · 147 lines · 137 tokens per session scan A 53ae38a6cdff
job-followup is a skill published in the GitHub repository AkbarDevop/ai-job-agent (55 stars, last pushed 4mo ago), licensed MIT. It adds 137 tokens to every session and 1,967 once invoked, about $0.0007 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
Automation Tester Resume Optimizer
Build an SDET or automation engineer resume around framework ownership, tool-stack evidence, CI/CD integration, and GitHub proof that survives technical screening and recruiter keyword search.
jobgru
Jobgru pipeline Phase 1 — coordinate parallel job-board researchers to find and verify the user-requested count of unique jobs (LinkedIn has no per-run job cap; LeadGru is capped at 5 people + company people page), deduplicate against the Job Applications Google Sheet, append rows via scripts/sheetswrite.py, then…
leadgru
Jobgru pipeline Phase 2 — find LinkedIn hiring contacts for new Job Applications rows (job-posting hiring team first, then people search), write at most 5 profile links plus the company people page into Leads, and fill Add note Message from sheet templates. Runs automatically after Jobgru appends rows (pipeline mode)…
jobgru-setup
Jobgru first-time setup, help, and health check. Use when the user says Jobgru setup, first time, configure sheet, update sheet link, add resume, Jobgru help, or Jobgru check. Handles venv, pip install, config/sheet.json, resume PDF placement, and sheet profile writes — user only manually copies the Google Sheet…
sendgru
Jobgru on-demand — send LinkedIn connection invites with add-note text for user-named sheet rows; if already connected, send column H as a direct Message instead. Only Status applied; 2 people per row from Leads; appends Sent add note to column H after success (does not replace the note). Never runs in the Jobgru…
atsscore
Jobgru pipeline Phase 2b — score local resume PDFs against job Skills in the sheet. Writes column I (ATS score) and column J (Suggestions on Resume). Runs in parallel with LeadGru after Phase 1. Python-only scoring, rule-based suggestions, no LLM. Auto-on when data/resumes/ has PDFs; off when folder empty or prompt…