atsscorelisted
Install: claude install-skill ashujha301/jobgru
# ATSScore (Pipeline Phase 2b)
Score resume fit for each `to apply` job using **sheet data only** (title + Skills in Details) and local PDF resumes.
**Writes:**
| Col | Header | Content |
| --- | --- | --- |
| **I** | **ATS score** | Numeric scores per resume label |
| **J** | **Suggestions on Resume** | Rule-based improvement tips for best-matching resume |
No job URL fetch. No LLM. No browser.
Runs **in parallel with LeadGru** (Phase 2) — LeadGru uses browser for G/H; ATSScore uses one Python CLI for I/J.
## Pipeline mode (default)
**When:** Jobgru Phase 1 verified sheet append. Triggered automatically alongside LeadGru — no separate user prompt.
**On/off:**
| Condition | Action |
| --- | --- |
| No PDFs in `data/resumes/` | Skip; set `atsscore_status: skipped` in run JSON |
| User prompt contains `ATS scoring: no` | Skip |
| Resumes present + not disabled | Run |
**Scope:** All rows where Status = `to apply` AND column **I (ATS score)** is empty — includes new rows and backfill of older rows.
```bash
.venv/bin/python scripts/ats_score.py score --all
```
Optional dry-run first:
```bash
.venv/bin/python scripts/ats_score.py score --all --dry-run
```
## Standalone mode (backfill only)
**When:** User explicitly asks to run ATS scoring without Jobgru/LeadGru.
Use [prompts/atsscore-run.md](../../prompts/atsscore-run.md).
```bash
.venv/bin/python scripts/ats_score.py score --all
```
## Prerequisites
Run **Jobgru check**: `.venv/bin/python scripts/jobgru_check.p