# AI use cases for AI Job Search (MadsLorentzen/ai-job-search)

Repo: [MadsLorentzen/ai-job-search](https://github.com/MadsLorentzen/ai-job-search) | Use cases: 5 | Page: https://dedupedai.com/use-cases/madslorentzen-ai-job-search/

An open-source framework built on Claude Code that runs a job search on your own machine: it evaluates postings, tailors CVs and cover letters, and preps interviews.

This file holds every use case of this repo. Each one starts with a "## " heading and ends with its URL.

- Tailor a CV and cover letter to one job posting: https://dedupedai.com/use-cases/madslorentzen-ai-job-search/tailor-cv-and-cover-letter-for-one-job/
- Rank a batch of scraped jobs into a shortlist: https://dedupedai.com/use-cases/madslorentzen-ai-job-search/rank-scraped-jobs-into-a-shortlist/
- Prepare a stage-specific interview pack: https://dedupedai.com/use-cases/madslorentzen-ai-job-search/prep-for-a-scheduled-interview/
- Record application outcomes and draft follow-ups: https://dedupedai.com/use-cases/madslorentzen-ai-job-search/track-application-outcomes-and-follow-ups/
- Generate an offline dashboard of your pipeline: https://dedupedai.com/use-cases/madslorentzen-ai-job-search/view-your-pipeline-as-a-dashboard/

## How to tailor a CV and cover letter to one job posting with AI Job Search

Repo: [MadsLorentzen/ai-job-search](https://github.com/MadsLorentzen/ai-job-search) | Difficulty: Intermediate | Time: 2 hours | Basis: From the README

Paste a posting URL and get a fit evaluation plus a tailored LaTeX CV and cover letter to review.

**Who it is for:** A job seeker who has found a specific posting and needs a tailored CV and cover letter without writing them from scratch.

**The problem:** Rewriting a CV and cover letter for every posting takes hours and is easy to do inconsistently.

**The outcome:** A fit evaluation, a drafted CV and cover letter reviewed by a second agent, and a revised final output ready for your review.

### Steps

1. `gh repo fork MadsLorentzen/ai-job-search --clone`
2. `python3 tools/install_portal_clis.py`
3. Run `claude` inside the repo, then run `/setup` and fill in your profile from your documents.
4. Run `/apply https://jobindex.dk/job/1234567` with the posting URL, or run `/apply` and paste the job description if the URL cannot be fetched.
5. Read the evaluation, the drafted CV and the cover letter, and edit anything that is wrong before you send it.

### Prompt to paste into your agent

```text
In the ai-job-search repo, run /apply on the posting at <posting URL>. Expect a fit evaluation, a tailored LaTeX CV and cover letter, and a reviewer critique with the final revised output. Verify that every claim in the CV and cover letter appears in your own profile files before sending.
```

### Caveat

The README says postings are untrusted input and that agentic defenses are not a sandbox, so skim what was fetched and written before you send anything.

Risk, sensitive: Your name, contact details and employment history are written into tracked files, so keep the fork private if you are not contributing back.

Disclaimer: Third-party repos we don't own or vouch for. AI-generated use cases can be wrong: review everything and run at your own risk. Full text: https://dedupedai.com/disclaimer/

URL: https://dedupedai.com/use-cases/madslorentzen-ai-job-search/tailor-cv-and-cover-letter-for-one-job/

## How to rank a batch of scraped jobs into a shortlist with AI Job Search

Repo: [MadsLorentzen/ai-job-search](https://github.com/MadsLorentzen/ai-job-search) | Difficulty: Intermediate | Time: 2 hours | Basis: From the README

Scrape job portals, then score every new posting against your fit framework in one run.

**Who it is for:** A job seeker whose search returned dozens of postings and who does not want to read each one by hand.

**The problem:** Scrape results are often too many to evaluate one by one, and weak matches waste time.

**The outcome:** A ranked shortlist with strengths, gaps, deadline flags and expired postings marked, where you can pick a number to start /apply.

### Steps

1. `gh repo fork MadsLorentzen/ai-job-search --clone`
2. `python3 tools/install_portal_clis.py`
3. Run `claude` inside the repo, then run `/setup` to build your profile.
4. Run `/scrape` to search the job portals and deduplicate results.
5. Run `/rank` to score the new postings and review the ranked shortlist before picking one to apply to.

### Prompt to paste into your agent

```text
In the ai-job-search repo, run /scrape and then /rank. Expect a ranked shortlist with per-job strengths and gaps, with deal-breakers applied as vetoes. Verify that the top-ranked job matches your stated deal-breakers and salary expectations.
```

### Caveat

The job portal search skills are built for the Danish market (Jobindex, Jobnet, Akademikernes Jobbank), so results outside Denmark depend on adapting the portal skills.

Disclaimer: Third-party repos we don't own or vouch for. AI-generated use cases can be wrong: review everything and run at your own risk. Full text: https://dedupedai.com/disclaimer/

URL: https://dedupedai.com/use-cases/madslorentzen-ai-job-search/rank-scraped-jobs-into-a-shortlist/

## How to prepare a stage-specific interview pack with AI Job Search

Repo: [MadsLorentzen/ai-job-search](https://github.com/MadsLorentzen/ai-job-search) | Difficulty: Intermediate | Time: 1 hour | Basis: From the README

Build a prep pack and mock interview for a scheduled interview on a tracked application.

**Who it is for:** A candidate with an interview booked for a tracked application who needs to prepare quickly and accurately.

**The problem:** Interview prep is slow when the posting, the submitted CV and the company research are spread across different places.

**The outcome:** A stage-specific prep pack with likely questions mapped to your STAR examples, verified company research and an offered mock interview.

### Steps

1. `gh repo fork MadsLorentzen/ai-job-search --clone`
2. `python3 tools/install_portal_clis.py`
3. Run `claude` inside the repo and make sure the application is tracked from an earlier `/apply`.
4. Run `/interview` and name the tracked application when asked.
5. Work through the question map, then accept the offered mock interview and check that the bridge answers stay honest about gaps.

### Prompt to paste into your agent

```text
In the ai-job-search repo, run /interview for the tracked application <application name>. Expect a prep pack built from the archived posting, CV and cover letter, with likely questions mapped to STAR examples. Verify that no experience appears in an answer that is not in your archived documents.
```

### Caveat

Interview prep depends on the application being tracked first, so run /apply or record it with /outcome before using /interview.

Disclaimer: Third-party repos we don't own or vouch for. AI-generated use cases can be wrong: review everything and run at your own risk. Full text: https://dedupedai.com/disclaimer/

URL: https://dedupedai.com/use-cases/madslorentzen-ai-job-search/prep-for-a-scheduled-interview/

## How to record application outcomes and draft follow-ups with AI Job Search

Repo: [MadsLorentzen/ai-job-search](https://github.com/MadsLorentzen/ai-job-search) | Difficulty: Intermediate | Time: 1 hour | Basis: From the README

Log interviews, offers and silence, then get drafted follow-ups for applications that went quiet.

**Who it is for:** A job seeker with several open applications who loses track of which ones need a nudge or a record update.

**The problem:** Open applications go quiet and outcomes are scattered across inboxes and notes, so follow-ups get missed.

**The outcome:** Each application archived with its outcome, a list of stale applications, and short follow-up drafts you can send yourself.

### Steps

1. `gh repo fork MadsLorentzen/ai-job-search --clone`
2. `python3 tools/install_portal_clis.py`
3. Run `claude` inside the repo and record a result with `/outcome` for each application that has changed status.
4. Run `/outcome followup` to list open applications that have gone quiet, using the default 10 days.
5. Review each drafted follow-up and send it yourself, since the command only drafts and never sends.

### Prompt to paste into your agent

```text
In the ai-job-search repo, run /outcome followup. Expect a list of open applications quiet for 10 days or more and a short draft for each, using only claims from materials you already submitted. Verify that each draft contains no new claims and that no draft was sent.
```

### Caveat

The follow-up drafts are limited to at most two per application, and the README says the command never sends anything, so the sending step is yours.

Disclaimer: Third-party repos we don't own or vouch for. AI-generated use cases can be wrong: review everything and run at your own risk. Full text: https://dedupedai.com/disclaimer/

URL: https://dedupedai.com/use-cases/madslorentzen-ai-job-search/track-application-outcomes-and-follow-ups/

## How to generate an offline dashboard of your pipeline with AI Job Search

Repo: [MadsLorentzen/ai-job-search](https://github.com/MadsLorentzen/ai-job-search) | Difficulty: Intermediate | Time: 1 hour | Basis: From the README

Turn your tracker and application archives into a self-contained HTML report you can open offline.

**Who it is for:** A job seeker with many tracked applications who wants a visual overview of the funnel and outcomes.

**The problem:** A spreadsheet of applications is hard to read at a glance, and funnel patterns stay hidden.

**The outcome:** A single HTML file with stat cards, charts and a filterable applications table that opens in a browser without internet.

### Steps

1. `gh repo fork MadsLorentzen/ai-job-search --clone`
2. `python3 tools/install_portal_clis.py`
3. Run `claude` inside the repo and add at least one entry with `/apply` or `/outcome`.
4. Run `/html-report` to build the dashboard from `job_search_tracker.csv` and the application archives.
5. Open the generated HTML file in a browser and filter the table to check that the counts match your tracker.

### Prompt to paste into your agent

```text
In the ai-job-search repo, run /html-report. Expect a self-contained HTML dashboard built from job_search_tracker.csv and the application archives. Verify that the stat card totals match the row count in job_search_tracker.csv.
```

### Caveat

The dashboard reflects only what is in your tracker and archives, so re-run /html-report after each /apply or /outcome to keep it current.

Disclaimer: Third-party repos we don't own or vouch for. AI-generated use cases can be wrong: review everything and run at your own risk. Full text: https://dedupedai.com/disclaimer/

URL: https://dedupedai.com/use-cases/madslorentzen-ai-job-search/view-your-pipeline-as-a-dashboard/
