Lebenslauf erstellen & bewerten aus einem Job-Link
Ein nackter Job-Link ist eine vollständige Anweisung. Führen Sie die gesamte Pipeline ohne Nachfragen aus. Stoppen Sie bei "erstellt + bewertet + aufgezeichnet" – das Bewerben ist die Aktion des Benutzers.
Schritte
- Deduplizieren. Führen Sie
python -m resume_pipeline.tracker report data/applicationsaus und prüfen Sie, ob dieses Unternehmen/Diese Firma bereits vorhanden ist. Sagen Sie es vorab; machen Sie trotzdem weiter. - JD extrahieren – stoppen Sie bei der ersten Methode, die den vollständigen Text zurückgibt:
- den öffentlichen JSON-Endpunkt des ATS (Greenhouse / Ashby / Lever Boards legen einen frei),
- einen strukturierten Webabruf ("Listen Sie jede Verantwortung und Anforderung auf, eine pro Zeile"),
- einen Browser für JS-gerenderte Karriereseiten. Falls alle fehlschlagen, bitten Sie den Benutzer, ihn einzufügen. Erfinden Sie niemals JD-Inhalt.
- Datensatz schreiben
data/applications/<slug>.mdausexamples/applications/_TEMPLATE.md. Neuer Datensatz = nur einfound-Ereignis (nichtapplied; der Benutzer bewirbt sich). Eine Datei = eine Stellenausschreibung. - Ziel schreiben
data/targets/<slug>.yaml:- Modul-IDs aus
data/modules.yamlauswählen, geordnet für diesen JD; kein Lebenslauftext in einem Ziel output:setzen (ein fehlendesoutput:erstellt stillresume.docx)- Ein JD-Keyword ohne echten Bullet dahinter ist eine Lücke: schreiben Sie es in den Header-Kommentar, niemals als Skill-Line-Keyword. Markieren Sie jede Lücke inhärent (keine entsprechende Erfahrung -> Interview-Erzählung) oder behebbar (echte Erfahrung, falsche Formulierung).
- Füllen Sie die Seite; wenn sie auf Seite 2 überläuft, zuerst
project_bulletskürzen. Bearbeiten Sie nichtconfig/layout.yaml– es wird von jedem Lebenslauf gemeinsam genutzt.
- Modul-IDs aus
- Bauen + auf eine Seite prüfen
python -m resume_pipeline.build_resume data/targets/<slug>.yaml --modules data/modules.yaml --out /tmp/resume_<slug>.docx soffice --headless --convert-to pdf --outdir /tmp /tmp/resume_<slug>.docx # dann Seiten zählen - Bewerten mit dem Skill
scoring-resumes. Ein Lebenslauf ist erst fertig, wenn die Bewertung im Datensatz steht. - Validieren des Datensatzes:
python -m resume_pipeline.tracker validate data/applications. - Bericht: Fazit + drei Gate-Ergebnisse -> welche JD-Anforderungen abgedeckt sind -> Lücken (inhärent/behebbar) -> Positionierung -> Nicht-Lebenslauf-Gates (Standort, Visum, Vor-Ort-Tage, Sicherheitsfreigabe – das Bewerbungsformular fragt diese separat und sie sind keine Lebenslauf-Änderungen) -> einzeilige Empfehlung.
Regeln
- Erfinden Sie niemals Erfahrung, ein Datum oder einen JD. Fügen Sie nur einen Bullet für echte Erfahrung hinzu, die der Benutzer bestätigt.
- Eine niedrige Punktzahl ist eine Information, keine Ablehnung: der Benutzer entscheidet, ob er sich bewirbt.
- Bei einer vollen Seite muss "einen Bullet hinzufügen, um eine markierte Lücke zu schließen" A/B-bewertet werden – Patches verschlechtern oft die Punktzahl.
- Mehrere Links auf einmal: Extrahieren Sie zuerst alle JDs, führen Sie dann Schritte 3-8 einen Job nach dem anderen aus; sagen Sie, wenn ein Lebenslauf zwei nahezu identische Rollen abdecken kann, anstatt einen Duplikat zu erstellen.