agentleFS
eklavyagoyaleklavyagoyal/wingman/skills/zeugnis/SKILL.md

zeugnis

Skill0 starsChanged 2 months agoMITView on GitHub

Decode an Arbeitszeugnis - what grade it actually gives you, and what to do about it

The file

We split this skill into the rules it gives an agent

5 rules. About 0 are common, 3 are distinctive, and 2 are very specific to this project.

  • ≈0

    Common · estimate

    Many files like this have a rule of this kind.

  • ≈3

    Distinctive · estimate

    This author's own choices. Worth a look.

  • 2

    Very specific

    Tied to their project's names, files or tools. Probably skip.

  • Common
  • Distinctive
  • Very specific
  1. Distinctive:

    Read the document. For a scanned PDF or image, extract the text — if OCR is unavailable, ask the user to paste the Leistung sentence, the …

    line 23
  2. Distinctive:

    Always quote the wording. A bare verdict is not actionable, and the candidate needs the exact sentence if they ask for a correction:

    line 39
  3. Very specific:

    Never decide for the candidate — this concerns their relationship with a former employer.

    line 60
  4. Distinctive:

    Add, plainly: *I am not a lawyer.

    line 66
  5. Very specific:

    Write DATA_DIR/zeugnisse/audit.md, one entry per document.

    line 78

≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
SKILL.md

Arbeitszeugnis Audit

Decoding tables: shared/references/zeugnis-code.md

A German employment reference must be both truthful and benevolent (§109 GewO). Those duties conflict, so German employers grade you in code. Every HR person in Germany reads it. Most candidates never have.

No other job tool does this. It is also the highest-leverage thing in this repo: a candidate can be sending out a hidden grade 4 with every application and never know.

Arguments

  • file path — audit one document
  • pasted text — audit it directly
  • all — audit everything in DATA_DIR/zeugnisse/ (default when no argument)

Step 1: Read

Read the document. For a scanned PDF or image, extract the text — if OCR is unavailable, ask the user to paste the Leistung sentence, the Verhalten sentence, and the closing paragraph, since those three carry nearly all the signal.

Confirm which document and employer you are looking at before grading.

Step 2: Grade

Per shared/references/zeugnis-code.md:

  1. Leistung — locate the Zufriedenheit sentence. Match the wording exactly: stets present or absent, vollsten or vollen. Both → grade 1. Neither → grade 3 or worse.
  2. Verhalten — check who is named. Both Vorgesetzte and Kollegen → fine. Kollegen only → reads as friction with management. Sentence missing entirely → the loudest signal of all.
  3. Schlussformel — thanks, bedauern, good wishes. Missing bedauern is cool; no closing formula at all is deliberate.
  4. Coded phrases — scan for the ones that mean their opposite (Geselligkeit, Verständnis für seine Arbeit, Pünktlichkeit war vorbildlich).
  5. Type — einfaches or qualifiziertes Zeugnis. Only einfaches after a multi-year role is itself a signal.

Step 3: Report with evidence

Always quote the wording. A bare verdict is not actionable, and the candidate needs the exact sentence if they ask for a correction:

[Employer], [dates] — qualifiziertes Zeugnis

Leistung   Grade 3 (befriedigend)
           "…zu unserer vollen Zufriedenheit erledigt"
           -> "vollen" not "vollsten", no "stets". Two bands below top.

Verhalten  Concern
           "Sein Verhalten gegenüber Kollegen war einwandfrei."
           -> Vorgesetzte not mentioned. Read as friction with management.

Schluss    Cool
           Good wishes present; no thanks, no "bedauern".

Overall    This document works against you.

Step 4: Options (interactive)

Never decide for the candidate — this concerns their relationship with a former employer. AskUserQuestion:

  1. Request a correction. They have a right under §109 GewO to a truthful and benevolent reference. Offer to draft a polite, specific request naming the exact wording to change.
  2. Attach it anyway. Grade 3 is common and not disqualifying. Frame it honestly: it will not help, and it will not sink an otherwise strong application.
  3. Omit it and write Zeugnisse werden auf Wunsch nachgereicht in the Anlagen line. Note that a missing Zeugnis for a recent role invites a question.

Add, plainly: I am not a lawyer. A Fachanwalt für Arbeitsrecht or your union handles contested corrections routinely and cheaply.

Never rewrite or alter the Zeugnis. It is a third party's signed document; producing an edited version would be forgery. Decline that and say why — audit and advise instead.

Step 5: Mine it for evidence

Zeugnisse list responsibilities and results in an employer's own words, and candidates routinely forget half of it. Extract anything that belongs on the CV — projects, scope, systems, team size, quantified outcomes — and ask before adding it to profile.md.

This is often the single richest untapped source of CV material the candidate already has.

Step 6: Save

Write DATA_DIR/zeugnisse/audit.md, one entry per document. Each entry must open with this block, verbatim in this shape, because /wingman:mappe reads it to decide whether it may attach the document — free prose there leaves it guessing:

## Vorbild Systems GmbH · 08/2018 – 02/2021 · qualifiziertes Zeugnis

- **File**: `zeugnisse/2021-02_arbeitszeugnis_vorbild-systems.md`
- **Leistung**: 2 (gut)
- **Verhalten**: ok            <!-- ok | concern | missing -->
- **Schluss**: kühl            <!-- warm | kühl | fehlt -->
- **Attach**: yes              <!-- yes | ask | no -->
- **Audited**: 2026-09-13

Attach is the contract, and it is a judgement you make from the grades:

Set it toWhen
yesGrade 1–2, Vorgesetzte named, nothing coded. It helps, or is at least neutral.
askGrade 3, a cool closing, a reversed conduct order, or anything you are unsure of. mappe will put the decision to the candidate.
noGrade 4–5, bemüht, a missing conduct sentence, or a coded phrase. Never attach one of these without the candidate deciding to.

Then the quoted evidence and reasoning below the block, in whatever depth the document warrants. Write that part in the candidate's language, not in a template.

Also update the Zeugnisse table in profile.md with each grade.


Response Format

  1. Grades — Leistung, Verhalten, Schluss, each with the quoted wording
  2. Verdict — what this document does to an application
  3. Options — correction / attach / omit, with the tradeoff of each
  4. CV Material — anything worth adding to the profile

Permissions

{ "permissions": { "allow": [
  "Read(~/.wingman/**)", "Write(~/.wingman/**)", "Edit(~/.wingman/**)"
] } }

Download now (ZIP)

Does it work?

Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.

No reviews yet

People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.

  • It worked
  • Partly
  • It didn't
What did you use it for? e.g. Reviewing pull requests in a Rails app

Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.

Your trail

Files you open will collect here, so you can find them again.

Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.

Now do this for your own.

Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.