alterlab-recommendation-letters — independently scanned and version-tracked by SaferSkills.
SaferSkills independently audited alterlab-recommendation-letters (Agent Skill) and scored it 100/100 (green). The audit ran 55 deterministic rules across Security, Supply Chain, Maintenance, Transparency, and Community; it found 0 high-severity and 0 lower-severity findings. The full rule-by-rule trace and per-finding evidence are below. Free, methodology-open.
Findings & checks · 0 flagged
Every scanned point with the score it earned and what moved between them.
First recorded scan — no prior version to compare against.
The primary manifest — the file an agent reads to learn what this artifact does.
The faculty task this skill owns is writing about someone else: the letter a professor sends to an admissions committee, a hiring chair, a tenure case, or a fellowship panel. It is the mirror image of alterlab-academic-career, which helps the candidate write their own CV and statements. Here the author is the recommender, the subject is a third party, and the failure mode is not modesty but fabrication — the warm letter full of superlatives that an evaluator cannot act on because nothing is anchored to evidence.
This skill turns a structured dossier (what the recommender actually knows) into a letter whose every strong claim is earned by a specific, checkable example, with specificity and register calibrated to the letter type.
Use this skill when the request is to draft, revise, or evidence-check a letter written about a candidate by a recommender:
The skill always treats the recommender as the author of record: it produces a draft for them to verify, edit, sign, and submit, never a letter it claims to send or to vouch for on its own authority.
| The request is really… | Route to | Why |
|---|---|---|
| The candidate's own CV, research/teaching statement, cover letter, tenure dossier, promotion narrative | alterlab-academic-career | Self-authored career documents, not a third party writing about the candidate |
| A peer-review report judging a manuscript's quality with an accept/revise/reject verdict | alterlab-peer-review | Editorial quality judgment of a paper, not a personal reference for a person |
| A structured peer review of a full manuscript (core-pipeline reviewer) | alterlab-paper-reviewer | Section-by-section manuscript critique, not a recommendation about a candidate |
| Türkiye doçentlik eligibility / point computation for an associate-professor case | alterlab-docentlik-eligibility | ÜAK criteria scoring, not a prose reference letter |
| Academic-incentive (akademik teşvik) point computation | alterlab-akademik-tesvik | YÖK incentive points, not a letter |
| Checking that the citations in a letter or dossier actually exist | alterlab-citation-verifier | Bibliographic existence verification, not letter-claim evidence-anchoring |
| Designing a course, rubric, or syllabus for the student | alterlab-teaching-design | Course/instructional design, not a reference about the student |
| Writing a grant proposal or post-award report | alterlab-research-grants / alterlab-grant-reporting | Funding documents, not personal references |
If the candidate is writing about themselves, stop and hand off to alterlab-academic-career. The two skills are deliberately disjoint.
Each type has a different reader, decision, and register. The scaffold script keys off this taxonomy. Full per-type guidance, openings, and worked structure live in references/letter_types.md.
| Type | Reader / decision | Calibration |
|---|---|---|
| Graduate admission | Admissions committee deciding fit for a program | Potential + trajectory; compare against the cohort the recommender has taught; concrete classroom/research moments |
| Faculty hiring | Search committee / department deciding a colleague | Independence, research program, collegiality, teaching; position within the subfield |
| Tenure / promotion external review | P&T committee + administration weighing a permanent decision | Arms-length, evaluative, often comparative against named peers at career stage; assess impact and standing, not advocacy |
| Fellowship | Selection panel awarding a competitive named award | Distinctiveness vs a strong applicant pool; why this candidate, this award |
| Award nomination | Awards committee citing achievement | Citation-style; the single defining contribution and its significance |
The external-review letter is the one most often miswritten as an advocacy letter. It is not: tenure reviewers are asked to evaluate, and a letter that only praises reads as uninformative. references/letter_types.md spells out the register shift and the standard "would this person get tenure here?" prompt.
Every adjective must be cashed out by a specific example. The pattern:
Claim → Evidence → Significance. "She is an unusually independent researcher" (claim) "— in her second year she reframed the project after a null result, designed the follow-up assay herself, and that pivot became the paper's central finding" (evidence) "— work I would expect from a senior postdoc, not a second-year student" (significance / calibration).
A claim with no evidence in the dossier is the single most common defect. The no-fabrication guard (scripts/claim_guard.py) lints a draft for exactly this: unsupported superlatives ("the best student I have ever had"), unanchored rankings ("top 1%"), and evaluative adjectives that no nearby sentence backs with a concrete instance. It does not invent the missing evidence — it flags the claim and asks the recommender to supply the example or soften the claim.
Calibrated specificity is the companion rule: superlatives and rankings are allowed and valuable — but only when the recommender can ground them ("top 2 of the ~40 PhD students I have advised in 18 years"). An ungrounded "top 1%" is weaker than a grounded "the strongest of the six students in this year's lab." See references/evidence_and_specificity.md for the claim taxonomy, the ranking grammar, and the rhetoric of comparison.
This skill writes only from the supplied dossier. It must never:
not provide;
When the dossier is thin, the correct output is a draft with bracketed gaps ([recommender: a specific example of independence here]) plus a short list of the facts the recommender must supply — not a fluent letter that papers over the holes with plausible fiction. A letter is a signed personal attestation; inventing its content is a research-integrity problem, not a style choice.
Letter language shifts with the candidate's gender in ways that affect decisions: letters for women have been found to carry more "doubt raisers" (hedges, faint praise) and fewer standout adjectives (Trix & Psenka, 2003, Discourse & Society 14(2):191–220; Schmader, Whitehead & Wysocki, 2007, Sex Roles 57:509–514), and to describe women in more communal and less agentic terms, with communal wording linked to weaker hiring outcomes (Madera, Hebl & Martin, 2009, J Appl Psychol 94(6):1591–1599). When drafting or reviewing, hold every candidate to the same evidence standard and the same ability/achievement vocabulary, replace hedges with the supporting evidence (or drop the claim), and cut personal details the letter would not mention for another candidate. Apply the same check across race and ethnicity, where a systematic review of academic-medicine letters also reports wording differences (Deshpande et al., 2024, Acad Med 99(9):1032–1037).
Treat the dossier as confidential personnel or student-record data (FERPA, GDPR/KVKK, or the institution's own rules): use only what the recommender supplies for this letter, keep one candidate's details out of another's letter, and remind the recommender to check institutional rules before pasting student records into third-party tools.
Ask for, or extract from what was provided: letter type; candidate name + role; target (program/position/award + institution); relationship (capacity and duration the recommender knew the candidate); the candidate's accomplishments (with any metrics, artifacts, anecdotes); the specific qualities the target asks to be addressed; and deadline / length norms. references/intake_checklist.md is the full prompt list; missing fields become bracketed gaps, never invented content.
uv run python skills/faculty-life/alterlab-recommendation-letters/scripts/letter_scaffold.py \
--type tenure-external \
--candidate "Dr. A. Yılmaz" \
--relationship "external reviewer; known through the field since 2016" \
--out letter_skeleton.mdThe scaffold emits a type-appropriate section skeleton — opening that states the relationship and basis for assessment, body sections matched to the type's evaluation dimensions (e.g. independence/impact/standing for external review; potential/trajectory/fit for admission), and a calibrated closing. Each section carries an inline reminder of the Claim → Evidence → Significance pattern. Pass --list-types to see the five supported types. The script is stdlib-only.
Fill each section using only dossier facts. Lead every evaluative claim with the specific example that earns it. Match the register to the type (advocacy for admission/fellowship; arms-length evaluation for external review).
uv run python skills/faculty-life/alterlab-recommendation-letters/scripts/claim_guard.py \
letter_draft.md --jsonIt returns each flagged sentence with a reason (unsupported-superlative, unanchored-ranking, evidence-free-claim) and a fix prompt. Resolve every flag by adding the recommender's evidence or softening the claim — never by inventing support. Re-run until clean (exit 0).
Present the draft plus: the list of bracketed gaps the recommender must fill, the guard's residual flags, and a one-line reminder that the recommender must verify every factual claim and sign/submit it themselves.
concrete, dossier-sourced instance — or it is bracketed for the recommender.
is absent from the supplied dossier.
admission/fellowship reads as grounded advocacy.
explicit (how, how long, in what capacity).
do, and the same ability/achievement vocabulary you would use for any candidate with this record.
alterlab-academic-career; hand it off.
references/letter_types.md — per-type readers, openings, structure, and theexternal-review register shift.
references/evidence_and_specificity.md — Claim → Evidence → Significance,the claim taxonomy, ranking grammar, and comparison rhetoric.
references/intake_checklist.md — the structured dossier intake prompt and howthin fields become bracketed gaps.
Part of the AlterLab Academic Skills suite.
~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.