bluf-rewriter
Reorganizes a memo, email, status update, or report so the bottom line is up front. Implements Kramon's BLUF (Bottom Line Up Front) rule. Use when a draft…
Verifies every checkable claim in a draft before it goes out — numbers, names, titles, dates, quotes, company facts, and citations. Separates what was verified from what could not be checked from what is wrong, and never lets an unverifiable claim pass as verified. Use before
$ npx -y skills add kalyvask/winning-writing --skill fact-checker --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
/fact-checkerContext preview
The summary Claude sees to decide when to auto-load this skill.
Verifies every checkable claim in a draft before it goes out — numbers, names, titles, dates, quotes, company facts, and citations. Separates what was verified from what could not be checked from what is wrong, and never lets an unverifiable claim pass as verified. Use before
name: fact-checker description: Verifies every checkable claim in a draft before it goes out — numbers, names, titles, dates, quotes, company facts, and citations. Separates what was verified from what could not be checked from what is wrong, and never lets an unverifiable claim pass as verified. Use before sending anything with a number or a named person in it: cold emails, exec memos, op-eds, bios, LinkedIn posts, PRDs, launch docs, press responses. Triggers on "fact-check this," "verify these numbers," "did I make this up," "check my claims," "is this accurate," or as the final gate after any drafting skill.
Source: `points/ai-writing-rules.md` (section 2, Accuracy), `points/exec-memo-rules.md` (rules 4 and 7, on numbers and citation), `points/named-failure-modes.md`.
Every other skill in this repo makes the writing better. This one keeps it true. Those are different jobs and the second one is worth more, because style problems cost you a reader and accuracy problems cost you the relationship.
One invented number, one misattributed quote, one wrong job title — and every other number in the document becomes suspect. Credibility is a budget you spend once.
The two failure modes this catches:
Extract **every** instance of:
| Type | Examples | |---|---| | Numbers | percentages, dollar amounts, headcounts, dates, durations, rankings, sample sizes | | Named people | spelling, current employer, current title, pronouns if stated | | Organizations | company name spelling, what they actually do, funding, ownership | | Quotes | exact wording, who said it, where, when | | Citations | does the linked source exist, and does it say what you claim | | Superlatives | "first," "only," "largest," "fastest" — these are factual claims, not adjectives | | Implied claims | "since we launched" (did you?), "our fastest-growing segment" (is it?) |
Superlatives and implied claims are the ones writers forget are checkable. Treat them as claims.
1. **Extract.** List every checkable claim as a separate row before verifying anything. Quote the exact span from the draft. Do not paraphrase — the wording is what ships. 2. **Classify the source of each claim.** One of: user-supplied, model-generated, or inherited from an earlier draft. **Model-generated claims get the harshest scrutiny** — that is where fabrication lives. 3. **Verify.** Use web search for anything public. For internal claims (your own metrics), you cannot verify — say so, and ask the user for the source. 4. **Report** in the table below. 5. **Rewrite the failures.** For every ✗ and every ?, propose the specific replacement line.
Always return this. One row per claim, most severe first.
| Claim (quoted) | Type | Status | What's actually true | Fix | |---|---|---|---|---| | "raised $40M Series B" | number | ✗ wrong | $28M Series B, Mar 2026 | "raised a $28M Series B" | | "our fastest-growing segment" | implied | ? unverifiable | internal metric — no public source | ask user for the query, or cut | | "VP of Engineering" | title | ✓ verified | current per company site | — |
Status values, and they are not interchangeable:
Hand back:
1. **The table**, most severe first. 2. **A one-line verdict**: *"Safe to send"* only if there are zero ✗ and zero ?. Otherwise *"N claims need your confirmation before this goes out."* 3. **The rewritten lines** for every ✗ and ?. 4. **The single riskiest claim** — the one that would cost the most if wrong, even if you verified it. Name it so the user reads that line one more time.
For every number and name in the draft, could you name where it came from, out lou
31 Claude skills for cold outreach, op-eds, pitches, press inquiries, bios, exec memos, performance reviews, spoken-delivery talks, fact-checking, and reply-rate tracking.
Repo: kalyvask/winning-writing
Reorganizes a memo, email, status update, or report so the bottom line is up front. Implements Kramon's BLUF (Bottom Line Up Front) rule. Use when a draft…
Cuts a draft to a target word count without losing substance. Two modes behind one skill. target-count hits a specific number (200 for a cold email, 500 for an…
Rewrites blunt downward or peer feedback as "what I like plus what I would like," focused on the work rather than the person, ideally phrased as a question.…
Finds the unexpected, dry, or self-deprecating angle that makes an email memorable. Turns "professional and polite" into "this person sounds like a real…
Rewrites section titles, slide titles, op-ed headlines, email subject lines, and chapter headings from category labels into bold arguable claims. Implements…
Cuts cinematic details that don't serve the main point. The opposite move from vividness. Vividness adds sensory detail; this skill removes detail that's vivid…