Skip to content

Commit e508fa6

Browse files
feat(apply): requirement-coverage rules and CV targeting improvements from output benchmark (MadsLorentzen#184)
Seven improvements sourced from blind regression probes comparing current outputs against real April-2026 baselines (each an area where the older outputs scored better): - every stated requirement addressed - matched or honestly gapped, never silently omitted (the benchmark run omitted a stated Kubernetes requirement entirely; omission reads as hiding under questioning) - nice-to-haves engaged by name with honest adjacency framing; posting's literal term preferred, including in CV section headings - stated logistics/prerequisites addressed in the letter (clearances, availability, job ID, multi-country language mapping) - domain-transfer argument leads the CV profile statement for domain-changers - evidence links (href) on every verifiable named artifact framework_version: 05 -> 1.2.0. Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
1 parent 8b2fe03 commit e508fa6

2 files changed

Lines changed: 13 additions & 1 deletion

File tree

.claude/commands/apply.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -64,6 +64,11 @@ Also read the most recent existing CV and cover letter files for concrete struct
6464
- Read any existing `cv/main_*.tex` file as a LaTeX template reference
6565
- Read any existing `cover_letters/cover_*.tex` or `cover_letters/Cover_*.tex` file as a template reference
6666

67+
### Requirement coverage (both documents)
68+
- **Every requirement the posting states gets addressed - matched or honestly gapped, never silently omitted.** A stated requirement the candidate lacks (a tool, a clearance, years of experience) is acknowledged with an honest bridge ("not in my daily toolkit yet; a natural extension of X"), because omission reads as hiding once an interviewer asks. Build the requirement list from Step 1 and check both drafts against it before Step 3.
69+
- **Engage nice-to-haves by name** where the profile supports honest adjacency (e.g. "conceptually aligned with <named tool>"), and use the posting's own term over a synonym wherever it is truthfully applicable - including in CV section headings (a posting hiring for "MLOps" should find a heading containing "MLOps", not only a paraphrase).
70+
- **Address stated logistics and prerequisites** in the cover letter where the posting raises them: security clearance willingness, start date or availability, commute or location fit, and the posting's reference/job ID where one exists. When the employer operates across several countries, a truthful language-capabilities sentence mapped to their footprint is high-value targeting.
71+
6772
### CV (`cv/main_<company>_<role>.tex`)
6873
- In the **CV language from the profile** (the `CV language:` line in CLAUDE.md's Identity section). When the profile does not set one, default to **English**. Never switch language per posting - the CV language is a profile-level choice, so all CVs stay consistent and reusable
6974
- Follow the moderncv/banking format from `05-cv-templates.md`

.claude/skills/job-application-assistant/05-cv-templates.md

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
---
2-
framework_version: 1.1.1
2+
framework_version: 1.2.0
33
---
44

55
# CV Templates and Tailoring Guide
@@ -107,6 +107,8 @@ This is the most important section to customize. It appears right after `\makecv
107107

108108
Write 5-7 lines that function as an "elevator pitch": a concise, compelling introduction explaining why you're qualified for *this specific role*. Focus on what the employer gains from hiring you.
109109

110+
When the role sits outside your home domain, **lead with the domain-transfer argument** - the one or two sentences connecting your background to their problem (e.g. wave physics to radar signal processing) belong in the profile statement's opening, not buried in the cover letter. It is the strongest card a domain-changer holds; play it first.
111+
110112
**Create 2-3 profile statement templates for your main role types:**
111113

112114
<!-- SETUP: These are populated based on your background -->
@@ -123,6 +125,8 @@ Reorder and emphasize based on the role. Use bold category labels.
123125

124126
List **5-7 key competencies** in bullet format, tailored to the specific job. For each competency, briefly explain how it adds value to the position.
125127

128+
Use the posting's own core term in the matching bullet's bold label when it truthfully applies - ATS and skim-reading hiring managers match literally, and "MLOps" in a heading outperforms a paraphrase like "ML Deployment".
129+
126130
### Education
127131
- Always include your highest degrees
128132
- For senior roles, keep education brief (dates and titles only)
@@ -144,6 +148,9 @@ If there is a gap in your employment history:
144148
- Select 3-4 most relevant publications (not always all of them)
145149
- For non-academic roles, keep brief
146150

151+
### Evidence Links
152+
Wherever the CV names a verifiable artifact - a public project, a hackathon entry, a publication - carry its link (`\href`) so a reader can verify the claim in one click. A CV whose strongest claims are checkable reads as more credible everywhere else too.
153+
147154
### Honors and Awards
148155
- Keep format brief, one line each
149156

0 commit comments

Comments
 (0)