Rescan Skipped
Re-score a run's skipped jobs and promote the eligible ones to `approved` for later applying. Recovers jobs wrongly dropped for location, a sparse JD, 1099, or seniority. Does not apply.
Install
Quick install
npx skills add https://github.com/suxrobGM/jobpilotnpx skills add suxrobGM/jobpilot --agent claude-codenpx skills add suxrobGM/jobpilot --agent cursornpx skills add suxrobGM/jobpilot --agent codexnpx skills add suxrobGM/jobpilot --agent opencodenpx skills add suxrobGM/jobpilot --agent github-copilotnpx skills add suxrobGM/jobpilot --agent windsurfMore install options
Shorthand — useful for multi-skill repos:
npx skills add suxrobGM/jobpilotManual — clone the repo and drop the folder into your agent's skills directory:
git clone https://github.com/suxrobGM/jobpilot.gitcp -r jobpilot ~/.claude/skills/Rescan Skipped
Re-score a run's skipped jobs and promote the eligible ones to approved for later applying. Recovers jobs wrongly dropped for location, a sparse JD, 1099, or seniority. Does not apply.
---
name: rescan-skipped
description: Re-score a run's skipped jobs and promote the eligible ones to approved for later applying. Recovers jobs wrongly dropped for location, a sparse JD, 1099, or seniority. Does not apply.
argument-hint: "<run-id> [--jobs key1,key2,…]"
---
Rescan Skipped — Recover Wrongly-Dropped Jobs
Re-score a run's skipped jobs and set eligible ones to approved. Never apply and never change the run's status — apply the promoted jobs afterward via the apply skill (apply run <run-id>) or the run page.
Setup
JOBPILOT_API=http://localhost:8000
Follow plugin/skills/shared/setup.md. Fetch the run: curl -fsS "$JOBPILOT_API/api/runs/<run-id>". Threshold = config.minScore (fallback data.autoApply.minMatchScore, else 70).
Select Targets
Targets are status:"skipped" jobs; with --jobs key1,key2,…, restrict to those keys.
- Always leave (permanent):
skipReasonstartingAlready applied,CAPTCHA, orPayment required, or one stating a JD citizenship/clearance requirement. - Whole-run mode (no
--jobs): also leave deliberate user choices —Removed by user,Not selected by user,User cancelled…,Max applications limit reached,Run paused by user. --jobsmode: reconsider every named target except the permanent ones.
Per Job
- Digest — parse the cached
digest. Rich = non-emptytechStackandrequirements/responsibilities. - Re-read only when needed — if the digest is thin/empty, or the original
skipReasonwas invalid (location/onsite, sparse JD, 1099, seniority), open the posting (browser_navigate+ narrowedbrowser_snapshot; log in viaplugin/skills/shared/auth.mdif walled), rebuild the digest, and write it back so future rescans skip the browser:
curl -fsS -X PATCH "$JOBPILOT_API/api/runs/<run-id>/jobs/<key>" \
-H 'content-type: application/json' \
-d "$(jq -n --arg digest "$DIGEST" --arg desc "<posting text>" '{digest:$digest, description:$desc}')"
- Re-score —
POST /api/score-fitwith{digest}. Ifconfidence >= 0.7andscoreis ≥10 from the threshold, trust it; else deliberate fromstrongMatches/partialMatches/gaps. - Decide:
- Eligible and
score >= threshold→ promote (no apply):
curl -fsS -X PATCH "$JOBPILOT_API/api/runs/<run-id>/jobs/<key>" \
-H 'content-type: application/json' \
-d "$(jq -n --argjson score <0-100> --arg reason "<one line>" '{status:"approved", matchScore:$score, matchReason:$reason}')"
- Below threshold after a fair read → leave
skipped, PATCHskipReason:"Below minimum match score (X < Y)". - JD-stated citizenship/clearance found on re-read → leave
skippedwith that reason.
Eligibility
Same rules as auto-apply 2.2a. Seniority is never a skip — never drop a role for being below your level (Junior/Mid when your résumé is Senior) or for asking fewer years than you have; over-qualification is full marks on experience. Location/onsite, sparse JDs, and 1099/contractor work are never skips either — only a JD-stated citizenship/clearance requirement disqualifies.
Finish
Print a short table — jobs promoted to approved vs left skipped (with reasons) — then point the user to apply run <run-id> (or the run page's Apply / Re-apply selected) to apply the promoted ones. Don't apply; don't change run status.
---
Source: https://github.com/suxrobGM/jobpilot
Author: suxrobGM
Discovered via: skillsdirectory.com
Genre: development
SKILL.md source
---
name: Rescan Skipped
description: Re-score a run's skipped jobs and promote the eligible ones to `approved` for later applying. Recovers jobs wrongly dropped for location, a sparse JD, 1099, or seniority. Does not apply.
---
# Rescan Skipped
Re-score a run's skipped jobs and promote the eligible ones to `approved` for later applying. Recovers jobs wrongly dropped for location, a sparse JD, 1099, or seniority. Does not apply.
---
name: rescan-skipped
description: Re-score a run's skipped jobs and promote the eligible ones to `approved` for later applying. Recovers jobs wrongly dropped for location, a sparse JD, 1099, or seniority. Does not apply.
argument-hint: "<run-id> [--jobs key1,key2,…]"
---
# Rescan Skipped — Recover Wrongly-Dropped Jobs
Re-score a run's `skipped` jobs and set eligible ones to `approved`. **Never apply and never change the run's status** — apply the promoted jobs afterward via the `apply` skill (`apply run <run-id>`) or the run page.
## Setup
```bash
JOBPILOT_API=http://localhost:8000
```
Follow `plugin/skills/shared/setup.md`. Fetch the run: `curl -fsS "$JOBPILOT_API/api/runs/<run-id>"`. Threshold = `config.minScore` (fallback `data.autoApply.minMatchScore`, else 70).
## Select Targets
Targets are `status:"skipped"` jobs; with `--jobs key1,key2,…`, restrict to those `key`s.
- **Always leave (permanent):** `skipReason` starting `Already applied`, `CAPTCHA`, or `Payment required`, or one stating a JD citizenship/clearance requirement.
- **Whole-run mode (no `--jobs`):** also leave deliberate user choices — `Removed by user`, `Not selected by user`, `User cancelled…`, `Max applications limit reached`, `Run paused by user`.
- **`--jobs` mode:** reconsider every named target except the permanent ones.
## Per Job
1. **Digest** — parse the cached `digest`. Rich = non-empty `techStack` **and** `requirements`/`responsibilities`.
2. **Re-read only when needed** — if the digest is thin/empty, or the original `skipReason` was invalid (location/onsite, sparse JD, 1099, seniority), open the posting (`browser_navigate` + narrowed `browser_snapshot`; log in via `plugin/skills/shared/auth.md` if walled), rebuild the digest, and write it back so future rescans skip the browser:
```bash
curl -fsS -X PATCH "$JOBPILOT_API/api/runs/<run-id>/jobs/<key>" \
-H 'content-type: application/json' \
-d "$(jq -n --arg digest "$DIGEST" --arg desc "<posting text>" '{digest:$digest, description:$desc}')"
```
3. **Re-score** — `POST /api/score-fit` with `{digest}`. If `confidence >= 0.7` and `score` is ≥10 from the threshold, trust it; else deliberate from `strongMatches`/`partialMatches`/`gaps`.
4. **Decide:**
- Eligible and `score >= threshold` → promote (no apply):
```bash
curl -fsS -X PATCH "$JOBPILOT_API/api/runs/<run-id>/jobs/<key>" \
-H 'content-type: application/json' \
-d "$(jq -n --argjson score <0-100> --arg reason "<one line>" '{status:"approved", matchScore:$score, matchReason:$reason}')"
```
- Below threshold after a fair read → leave `skipped`, PATCH `skipReason:"Below minimum match score (X < Y)"`.
- JD-stated citizenship/clearance found on re-read → leave `skipped` with that reason.
## Eligibility
Same rules as `auto-apply` 2.2a. **Seniority is never a skip** — never drop a role for being below your level (Junior/Mid when your résumé is Senior) or for asking fewer years than you have; over-qualification is full marks on experience. Location/onsite, sparse JDs, and 1099/contractor work are never skips either — only a JD-stated citizenship/clearance requirement disqualifies.
## Finish
Print a short table — jobs promoted to `approved` vs left `skipped` (with reasons) — then point the user to `apply run <run-id>` (or the run page's Apply / Re-apply selected) to apply the promoted ones. Don't apply; don't change run status.
---
**Source**: https://github.com/suxrobGM/jobpilot
**Author**: suxrobGM
**Discovered via**: skillsdirectory.com
**Genre**: development
Related skills 6
caveman
Ultra-compressed communication mode. Cuts token usage ~75% by speaking like caveman while keeping full technical accuracy. Supports intensity levels: lite, full (default), ultra, wenyan-lite, wenyan-full, wenyan-ultra. Use when user says "caveman mode", "talk like caveman", "use caveman", "less tokens", "be brief", or invokes /caveman. Also auto-triggers when token efficiency is requested.
secure-linux-web-hosting
Use when setting up, hardening, or reviewing a cloud server for self-hosting, including DNS, SSH, firewalls, Nginx, static-site hosting, reverse-proxying an app, HTTPS with Let's Encrypt or ACME clients, safe HTTP-to-HTTPS redirects, or optional post-launch network tuning such as BBR.
readme-i18n
Use when the user wants to translate a repository README, make a repo multilingual, localize docs, add a language switcher, internationalize the README, or update localized README variants in a GitHub-style repository.
lark-shared
Use when first setting up lark-cli, running auth login, switching user/bot identity (--as), handling permission denied or scope errors, needing to update lark-cli, or seeing _notice in JSON output.
improve-codebase-architecture
Find deepening opportunities in a codebase, informed by the domain language in CONTEXT.md and the decisions in docs/adr/. Use when the user wants to improve architecture, find refactoring opportunities, consolidate tightly-coupled modules, or make a codebase more testable and AI-navigable.
paper-context-resolver
Optional RigorPilot helper for README-first deep learning repo reproduction. Use only when the README and repository files leave a narrow reproduction-critical gap and the task is to resolve a specific paper detail such as dataset split, preprocessing, evaluation protocol, checkpoint mapping, or runtime assumption from primary paper sources while recording conflicts. Do not use for general paper summary, repo scanning, environment setup, command execution, title-only paper lookup, or replacin...