From 2d2e4379fc80d966b31a6c46d759d43267a43758 Mon Sep 17 00:00:00 2001 From: "Tobias J. Endres" Date: Fri, 21 Aug 2026 23:16:20 +0200 Subject: [PATCH] Refine SKILL.md: DIN 5008 cover letter rules, do's/don'ts, template handling --- .apm/skills/job-application/SKILL.md | 110 +++++++++++++++++---------- 1 file changed, 70 insertions(+), 40 deletions(-) diff --git a/.apm/skills/job-application/SKILL.md b/.apm/skills/job-application/SKILL.md index 27b93da..9710608 100644 --- a/.apm/skills/job-application/SKILL.md +++ b/.apm/skills/job-application/SKILL.md @@ -1,6 +1,6 @@ --- name: job-application -description: Activate when the user wants to find jobs and create tailored applications (cover letters, CVs). Use when they mention job search, Bewerbung, cover letter, or applying for positions. +description: Activate when the user wants to find jobs and create tailored applications. Use for Bewerbung, job search, cover letter, application, Stellenuche. allowed-tools: - "openviking_search" - "openviking_recall" @@ -10,73 +10,103 @@ allowed-tools: - "sharelatex_*" - "Read" - "Write" - - "Bash" --- # Job Application Skill -Find matching positions and create tailored applications in ShareLaTeX. +Find matching positions and create tailored applications (Anschreiben + Lebenslauf) in ShareLaTeX. ## Reference Project -The existing CV template is at ShareLaTeX project `6a873cad300b2c1747bdf4c4`. Use it as base for all new applications. +Template: ShareLaTeX project `6a873cad300b2c1747bdf4c4` +All files from this project are copied verbatim into each new project. +Only two files are rewritten: `variables.tex` and `cover-letter.tex`. +All other files (resume.tex, sections/*, _header.tex, TLCresume.sty) stay UNCHANGED. ## Process -### 1. Read User Profile +### 1. Profile -Search OpenViking for the user's professional data: -- Skills, technologies, expertise -- Work experience and projects -- Education, certifications -- Personal data (name, address, contact) +Read user profile from OpenViking: skills, experience, projects, personal data. -Use `openviking_search` with queries like "professional profile", "work experience", "skills". +### 2. Search -### 2. Search for Jobs +Search for jobs via websearch. Use the user's query or infer from profile. +Collect 8-10 candidates with: role, company, location, source URL. -Use `websearch` to find relevant positions. Target job boards matching the user's field (Arbeitsagentur, LinkedIn, StepStone, etc.). +### 3. Prioritize -### 3. Present Candidates +Present top 4 as table: -Show a prioritized table of 3-4 best matches: +| # | Role | Company | Location | Why | +|---|------|---------|----------|-----| -| # | Role | Company | Location | Why it fits | -|---|------|---------|----------|-------------| -| 1 | ... | ... | ... | ... | +Wait for user selection before proceeding. -Wait for user to select which ones to pursue. - -### 4. Create ShareLaTeX Projects +### 4. Create Projects For each selected job: -1. `sharelatex_create_project` with name "Bewerbung – {Company} – {Role}" -2. Copy all files from template project `6a873cad300b2c1747bdf4c4`: - - `resume.tex`, `_header.tex`, `TLCresume.sty`, `variables.tex` - - All files under `sections/` -3. Update `variables.tex` with company-specific values (`\Company`, `\Position`, `\Subject`, `\Salutation`) -4. Rewrite `cover-letter.tex` with a tailored letter +1. Create ShareLaTeX project: "Bewerbung – {Company} – {Role}" +2. Copy ALL files from template (resume.tex, sections/*, _header.tex, TLCresume.sty, variables.tex, cover-letter.tex, README.md) +3. Rewrite `variables.tex` with job-specific values +4. Rewrite `cover-letter.tex` with tailored Anschreiben +5. Do NOT modify any other files -### 5. Cover Letter Rules +### 5. Cover Letter Rules (DIN 5008) -- Language: German (formal, DIN 5008) -- Length: one page max -- Structure: greeting → role reference → 2-3 matching qualifications with concrete examples → closing -- Tone: professional but personal -- Reference specific projects and skills from OpenViking profile +#### Format +- Language: German (unless job posting is English) +- Length: exactly one A4 page +- Font: 12pt, matching the template (already set in LaTeX) +- Structure: DIN 5008 business letter format -### 6. Compile & Verify +#### Variables to set (in variables.tex) +- `\Company`: full company name (e.g. "R+V Allgemeine Versicherung AG") +- `\Position`: exact job title from posting +- `\RefNumber`: job reference number if available +- `\Subject`: "Bewerbung als {Position}" (bold in LaTeX) +- `\Salutation`: "Sehr geehrte/r Frau/Herr {Name}," if known, else "Sehr geehrte Damen und Herren," -After writing all files: -1. `sharelatex_compile` to check for errors -2. Fix any issues -3. Return project links to user +#### Structure of cover-letter.tex +1. Sender block (already in template) +2. Recipient block +3. Date (right-aligned) +4. Subject line (bold, no "Betreff:" prefix) +5. Salutation +6. Opening (3-5 sentences): state position, where found, one compelling reason why +7. Body (2 paragraphs, ~100 words each): + - Paragraph 1: 2-3 matching qualifications with concrete examples from OpenViking profile + - Paragraph 2: Why this company specifically (researched values, projects, mission) +8. Closing: availability for interview, "Mit freundlichen Grüßen" +9. Anlagen list + +#### Do's +- Research company before writing (website, recent news, values) +- Reference specific company projects or values +- Use concrete examples with numbers/metrics +- Match language to job posting (German posting → German letter) +- Use keywords from job posting (ATS optimization) +- Keep sentences short and factual +- End with call to action (interview availability) + +#### Don'ts +- Never start with "Hiermit bewerbe ich mich" (used by 90% of applicants) +- Never use "Mit großem Interesse habe ich Ihre Stellenanzeige gelesen" +- Don't repeat CV content verbatim +- Don't use generic phrases like "innovativ", "teamfähig", "motiviert" +- Don't include personal details (age, marital status) +- Don't exceed one page +- Don't use humor or informal language +- Don't copy-paste between applications (recipients notice) +- Don't make claims you can't back up with examples + +### 6. Compile + +Compile each project. Fix errors. Return project links. ## Output -Present a summary table: - | Role | Project | Status | |------|---------|--------| | ... | link | Created |