From 499c9242c8ed929a2911a4d551fca825757fe3fc Mon Sep 17 00:00:00 2001 From: "Tobias J. Endres" Date: Fri, 21 Aug 2026 22:48:00 +0200 Subject: [PATCH] feat: add job-application skill package --- .apm/skills/job-application/SKILL.md | 82 ++++++++++++++++++++++++++++ apm.yml | 9 +++ 2 files changed, 91 insertions(+) create mode 100644 .apm/skills/job-application/SKILL.md create mode 100644 apm.yml diff --git a/.apm/skills/job-application/SKILL.md b/.apm/skills/job-application/SKILL.md new file mode 100644 index 0000000..27b93da --- /dev/null +++ b/.apm/skills/job-application/SKILL.md @@ -0,0 +1,82 @@ +--- +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. +allowed-tools: + - "openviking_search" + - "openviking_recall" + - "openviking_read" + - "websearch" + - "webfetch" + - "sharelatex_*" + - "Read" + - "Write" + - "Bash" +--- + +# Job Application Skill + +Find matching positions and create tailored applications in ShareLaTeX. + +## Reference Project + +The existing CV template is at ShareLaTeX project `6a873cad300b2c1747bdf4c4`. Use it as base for all new applications. + +## Process + +### 1. Read User Profile + +Search OpenViking for the user's professional data: +- Skills, technologies, expertise +- Work experience and projects +- Education, certifications +- Personal data (name, address, contact) + +Use `openviking_search` with queries like "professional profile", "work experience", "skills". + +### 2. Search for Jobs + +Use `websearch` to find relevant positions. Target job boards matching the user's field (Arbeitsagentur, LinkedIn, StepStone, etc.). + +### 3. Present Candidates + +Show a prioritized table of 3-4 best matches: + +| # | Role | Company | Location | Why it fits | +|---|------|---------|----------|-------------| +| 1 | ... | ... | ... | ... | + +Wait for user to select which ones to pursue. + +### 4. Create ShareLaTeX 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 + +### 5. Cover Letter Rules + +- 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 + +### 6. Compile & Verify + +After writing all files: +1. `sharelatex_compile` to check for errors +2. Fix any issues +3. Return project links to user + +## Output + +Present a summary table: + +| Role | Project | Status | +|------|---------|--------| +| ... | link | Created | diff --git a/apm.yml b/apm.yml new file mode 100644 index 0000000..6549ea7 --- /dev/null +++ b/apm.yml @@ -0,0 +1,9 @@ +name: job-application +version: 1.0.0 +description: Find matching jobs and create tailored cover letters + CVs in ShareLaTeX +author: Tobias Endres +license: MIT +type: skill +targets: + - claude + - copilot