searchlisted
Install: claude install-skill suxrobGM/jobpilot
# Job Search
Search a single board (picked by the user when launching the campaign) and rank results by qualification fit against the resume.
## Setup
1. Follow `../shared/setup.md`.
2. Parse and strip the flags; the rest is the free-text query.
- `--board <domain>` — **required** (e.g. `--board linkedin.com`).
- `--max-jobs <N>` — optional cap on results to rank (default 15, max 100).
- `--campaign <campaign-id>` — campaign to save results to (Phase 5). The web UI passes it; if absent, match the latest `source:"search"`, `status:"in_progress"` campaign on the query, else create one.
3. Resolve the board:
```bash
JOBPILOT_API=http://localhost:8000
curl -fsS "$JOBPILOT_API/api/job-boards" | jq --arg d "<domain>" '.data[] | select(.domain == $d)'
```
If no row matches, abort with: "Board `<domain>` is not configured. Add it on /boards or run again with a different `--board`." When a `--campaign` id was given, PATCH it to `failed` with `failReason:"Board <domain> not configured"` first.
## Phase 1: Parse Query
Extract title/role, keywords, location, other preferences (e.g. "no startups", "FAANG only", salary). If vague, ask before searching.
## Phase 2: Search the Board
1. `browser_navigate` to the resolved board's `searchUrl`.
2. Follow `../shared/auth.md` to log in proactively.
3. Fill the search fields and submit.
4. Take a `browser_snapshot` narrowed to the results list (per `../shared/browser-tips.md`) and read `{ title, company, location, u