> ## Documentation Index
> Fetch the complete documentation index at: https://docs.wolffi.sh/llms.txt
> Use this file to discover all available pages before exploring further.

# News Butler

> A personal news desk in one prompt — Wolffish exhaustively scans the public web for everything that happened this week across the exact topics you care about, cross-checks every claim against other outlets, profiles each source, and hands you one clean, color-coded PDF with an executive summary, easy numbers, and charts. Know everything that matters, trust nothing you can't verify

# Overview

A good butler reads every paper at dawn so you don't have to. He throws out the gossip, double-checks the headlines against each other, and at breakfast hands you a single card: *here is what actually happened, here is what's still unconfirmed, here is who said it.* No firehose. No doomscroll. Just the truth, filtered to what **you** care about.

That's this use case. You give Wolffish a list of topics — your beats — and it does an **exhaustive** sweep of the publicly available web for everything major that happened in the last 7 days, **up to and including today**. Then it does the part a feed never does: it **cross-checks every significant claim against other outlets** before printing it, flags what's single-sourced or disputed, and runs a quick background check on each outlet it cites — what they are, where they're based, who owns them, which way they lean, whether the industry trusts them. The result is one **clean, modern, color-coded PDF** with an executive summary up top, easy-to-digest numbers and charts, and just enough text — thorough where a story earns it, a single tight line everywhere else.

The point is that **you shouldn't have to look anything else up.** Open the PDF, read the executive summary in a minute, skim the color-coded sections, and you're caught up on your world — with a clear signal next to every item telling you how much to trust it.

<Note>
  This is a **read-only research workflow** — web search and file generation only. It doesn't post, send, click through your accounts, or touch your system. That also makes it a great [heartbeat](#automating-with-heartbeat) candidate: a fresh briefing waiting for you every morning.
</Note>

## Video Walkthrough

<iframe width="100%" height="400" src="https://www.youtube.com/embed/PqmrJoaNs6I" title="News Butler — Wolffish Demo" frameBorder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowFullScreen style={{ borderRadius: '8px', marginTop: '1rem', marginBottom: '1rem' }} />

## What Makes This a Butler, Not a Feed

Three things separate this from a generic "summarize the news" prompt:

<CardGroup cols={1}>
  <Card title="Exhaustive on what matters" icon="magnifying-glass">
    It keeps searching each topic until new searches stop surfacing new major stories — so you don't miss anything significant — while ruthlessly cutting filler, SEO spam, and recycled wire copy.
  </Card>

  <Card title="Trusts nothing unverified" icon="scale-balanced">
    Every significant claim is cross-checked across **independent** outlets. Each story carries a badge: corroborated, single-source, or disputed — with the contradicting numbers shown side by side when outlets disagree.
  </Card>

  <Card title="Knows the messenger" icon="id-card">
    A quick background check on every outlet cited — what it is, HQ, public or private, owner, rough revenue, political lean, and how trusted it is — so you can weigh the source, not just the story.
  </Card>
</CardGroup>

It all lands in one PDF, designed to be read in five minutes, not a wall of text you'll never finish.

## Capabilities Required

* `web-search` — the engine of the whole thing. `web_search` runs the exhaustive multi-query sweep across your topics; `web_fetch` opens and reads the actual articles so claims are judged from full text, not snippets — and powers the cross-verification and the source background checks.
* `shell` — renders the finished briefing. The agent writes styled HTML and prints it to PDF through a headless browser (Playwright/Puppeteer via `npx`) — the same pipeline behind [PDFs Everywhere](/use-cases/pdfs-everywhere) and [CV Tailor](/use-cases/cv-tailor). No LaTeX, no Word, no third-party PDF API.

That's it — **no computer-use, no OAuth, no destructive commands.** Everything is read-only research plus writing one file. Everything ships with Wolffish.

## Setup

Read the general [Setting Up for Success](/use-cases/setting-up-for-success) guide first — what's below is specific to this workflow.

### Recommended Model

**What matters here is reasoning effort, not price.** The hard part isn't summarizing — it's judgment: deciding whether two outlets are *independently* confirming a story or just rerunning the same wire, spotting when death tolls or dollar figures don't match, and weighing a source's reliability. You want a model that deliberates.

* **DeepSeek V4 Pro on Max reasoning mode** — the recommendation. Frontier-class agentic reasoning and tool-use reliability at a fraction of the cost, and **Max** mode gives it the full reasoning budget to make the "are these really independent sources?" calls instead of guessing. Set the reasoning effort to **Max** in Settings > Models. See [DeepSeek configuration](/configuration/deepseek).
* **Claude Opus / Sonnet 4.x** — strong alternatives if you're on Anthropic; Opus is the most careful at the corroborated-versus-disputed boundary, at 10–20× the price.
* **Avoid low-effort configs for the verification pass** — DeepSeek **Flash**, any model on **None** reasoning mode, or Haiku. They're fine for a quick digest, but the whole value of a *butler* is the checking — and that's exactly where a model that doesn't deliberate will wave through a rumor.

### Required

* **Wolffish installed and running** — the desktop app with a configured brain workspace.
* **A capable cloud API key** — DeepSeek (V4 Pro) recommended, or Anthropic (Claude); configured in Settings > Models.

### Strongly Recommended

* **[Brave Search API key](https://brave.com/search/api/)** — configured in Settings > Services > Brave Search. This is "optional" for the lighter PDF prompts, but for an **exhaustive** seven-topic sweep with cross-verification it's close to essential: the workflow fires *dozens* of searches, and the default search will rate-limit partway through and leave gaps. With a Brave key, Wolffish prefers it automatically and the sweep runs clean. The free tier is plenty for a daily run.

### Optional

* **`filesystem`** — for a cleaner audit trail when writing the HTML and saving the PDF (the `shell` pipeline works without it).
* **A headless browser** — Wolffish installs Playwright/Puppeteer on first use if neither is present. Having `npm`/`npx` on your PATH makes that instant.

## What the Butler Tracks

These are the default beats baked into the prompt — the topics in this example. Each becomes its own **color-coded section** in the PDF. Swap them for your own (see [Customize It](#customize-it)).

| # | Topic                   | Scope                                                                                                                                                 | Section color |
| - | ----------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------- | ------------- |
| 1 | **Saudi Arabia**        | Anything major at the country level — policy, economy, Vision 2030 / NEOM / PIF / Aramco, diplomacy, major national events                            | Emerald       |
| 2 | **AI industry**         | Major news and breakthroughs of any kind — model releases, research milestones, landmark funding, big lab moves, regulation                           | Indigo        |
| 3 | **Fable 5**             | The situation around Fable 5 being blocked in the US, and what Anthropic actually did about it — what happened, when, why, and the company's response | Amber         |
| 4 | **Gaming**              | Major industry news only — blockbuster announcements, release dates, big studio/publisher moves, major acquisitions or shutdowns                      | Violet        |
| 5 | **Anime, TV & movies**  | Major news only — big announcements, major releases, renewals/cancellations, notable box-office or streaming milestones                               | Rose          |
| 6 | **Elon Musk & SpaceX**  | Major Musk news, and especially any **SpaceX IPO** developments — filings, timing, valuation, official statements                                     | Teal          |
| 7 | **USA / Israel / Iran** | The conflict — strikes, escalation or de-escalation, diplomacy and talks, ceasefire status, US involvement, major casualties                          | Crimson       |

## The Verification Model

This is the heart of the butler. Every significant claim gets a badge, and the badge means something precise:

<CardGroup cols={1}>
  <Card title="Corroborated" icon="circle-check">
    Two or more **independent** outlets report the same core facts. Syndication doesn't count — three sites rerunning one AP wire is *one* source, not three. The butler looks for genuinely separate reporting.
  </Card>

  <Card title="Single-source / developing" icon="circle-half-stroke">
    Only one outlet has it, or it's thin and early. It's printed — you should know it exists — but flagged so you treat it as a lead, not a fact.
  </Card>

  <Card title="Disputed" icon="circle-exclamation">
    Outlets contradict each other on the facts or the numbers. **Both versions are shown**, with who said which, so you can see the disagreement instead of being handed one side of it.
  </Card>
</CardGroup>

When figures differ between outlets — death tolls, dollar amounts, dates, valuations — the butler gives you the **range** and notes who disagrees, preferring the primary source's number. Primary sources (official announcements, filings, government statements) outrank commentary about them.

## The Prompt

Send this to Wolffish on-demand, or put it on your [heartbeat](#automating-with-heartbeat). It's long because "exhaustive, verified, and beautifully laid out" is a real contract — every block below earns its place. The topics in the middle are the only part you'll routinely change.

```
You are my News Butler. Your job: make sure I know
EVERYTHING that matters to me that happened in the last 7
days — up to and including today — across the exact topics
I care about, and nothing I don't. Be exhaustive on what's
major; be ruthless about cutting filler. Then deliver it as
ONE clean, modern PDF I can read in five minutes.

Work like an old-school news desk with a trusted editor:
gather widely, then TRUST NOTHING until you've checked it
against other outlets. You are the person who knows
everyone, reads everything, and verifies the truth before
printing it.

FIRST, fix the window. Run `date +%F` to get today. The
window is the last 7 days through today. Anything older
than 7 days is out — unless it's the one line of backstory
needed to understand something that broke this week.

=== TOPICS I CARE ABOUT (each is its own PDF section) ===
1. SAUDI ARABIA — anything major at the country level:
   policy, economy, Vision 2030 / NEOM / PIF / Aramco,
   diplomacy, major national events.
2. AI INDUSTRY — major news and breakthroughs of any kind:
   model releases, research breakthroughs, landmark
   funding, big lab/company moves, regulation.
3. FABLE 5 — the situation around Fable 5 being blocked in
   the US, and what Anthropic (the company) actually did
   about it. Find what happened, when, why, and Anthropic's
   official response and actions. If you cannot confirm it,
   say so plainly — do NOT invent or assume it.
4. GAMING — major industry news only: blockbuster game
   announcements, release dates, big studio/publisher
   moves, major acquisitions or shutdowns.
5. ANIME, TV & MOVIES — major news only: big
   announcements, major releases, renewals/cancellations,
   notable box-office or streaming milestones. Skip minor.
6. ELON MUSK & SPACEX — major Musk news, and ESPECIALLY any
   SpaceX IPO developments (filing, timing, valuation,
   official statements).
7. USA / ISRAEL / IRAN — the conflict: military strikes,
   escalation or de-escalation, diplomacy and talks,
   ceasefire status, US involvement, major casualties.

=== HOW TO RESEARCH (exhaustive, then verified) ===
For EACH topic run several web searches — a broad one plus
specific angles — e.g. "<topic> news this week", "<topic>
latest <current month year>", plus the named sub-topics
above. Keep searching until new searches stop turning up
NEW major items (diminishing returns). That is what
"exhaustive" means here: not every blog post, but nothing
significant missed. Then OPEN and READ the actual articles
with web_fetch — never judge a story from the snippet.

ONLY use free, publicly accessible sources. Good general
ones: Reuters, AP News, BBC, Al Jazeera English, The
Guardian, NPR, CNBC, The Verge, Ars Technica, TechCrunch,
VentureBeat, Arab News, Al Arabiya, IGN, GameSpot,
Eurogamer, Variety, The Hollywood Reporter, Anime News
Network, Space.com, and official company / government
pages. Prefer PRIMARY sources (official announcements,
filings, government statements) whenever they exist.

DO NOT fetch paywalled sites — Bloomberg, WSJ, NYT,
Financial Times, The Information, The Athletic. They return
403 and waste time; skip to the next result. Skip SEO spam,
content farms, and AI-generated rewrites with no original
reporting.

=== VERIFY LIKE YOU DON'T TRUST ANYONE ===
For every significant claim, cross-check it across outlets
before printing, and tag it:
- CORROBORATED (green): two or more INDEPENDENT outlets
  report the same core facts. Syndication does NOT count —
  if several sites rerun the same wire story, that is ONE
  source. Look for genuinely separate reporting.
- SINGLE-SOURCE / DEVELOPING (amber): only one outlet has
  it, or it's thin/early. Print it, but flag it.
- DISPUTED (red): outlets contradict each other on facts or
  numbers. Show BOTH versions and who says which.
When numbers differ (death tolls, dollar amounts, dates,
valuations), give the RANGE and say who disagrees; prefer
the primary source's figure and note who departs from it.

=== SIZE UP THE MESSENGER (minimal, not a deep dive) ===
For each outlet you END UP CITING, do ONE quick lookup —
not an investigation — and grab whatever is readily
available:
- what it is (wire service, newspaper, trade site, blog)
  and HQ location / country
- public or private, and who owns it (parent company)
- rough annual revenue, if it's publicly known
- editorial leaning — left / center / right — per
  reputable media-bias references, labeled approximate
- industry standing — widely trusted, mixed, or low-trust
- if it's quick: a one-line note on the article's author
  (who they are, what they cover)
One look per outlet, grab what's there, move on. Do NOT
rabbit-hole. If something isn't readily available, leave it
blank — never guess.

=== NOW BUILD THE PDF ===
Write it as styled HTML, then render to PDF with a headless
browser. Save to the workspace as news-butler-YYYY-MM-DD.pdf
(today's date).

Design: clean, modern, minimal, COLOR-CODED, skimmable in
five minutes. Default to MINIMAL TEXT — earn every sentence.
Most stories are ONE tight summary line; write a real
paragraph ONLY when a story genuinely needs it. Let badges,
numbers, and charts carry the load — not prose.

Use color to MEAN things, and include a small legend:
- Each of the 7 topic sections gets its own accent color
  (distinct, readable palette).
- Verification badge per story: green = corroborated, amber
  = single-source/developing, red = disputed.
- Source-leaning chips in the ledger: blue = left, gray =
  center, red = right (the OUTLET's editorial lean, labeled
  neutral/approximate). Keep these visually distinct from
  the red "disputed" badge.

Structure, in this order:
1. MASTHEAD — "NEWS BUTLER" large, the date window ("Week
   of <start> – <today>"), and a one-line tagline.
2. EXECUTIVE SUMMARY — the handful of things I MUST know
   this week, one tight line each, each tagged with its
   topic color and verification badge. If I read only this,
   I'm caught up. Keep it to the genuinely major.
3. BY THE NUMBERS — a compact dashboard of easy, useful
   figures with simple charts drawn as inline SVG or CSS
   bars (NO external chart libraries or CDNs — they may not
   load in headless render):
   - total major stories, # sources consulted, # claims
     cross-checked
   - bar chart: number of stories per topic
   - verification mix: % corroborated / single / disputed
     (stacked bar or donut)
   - source-leaning spread: left / center / right
     (diverging bar)
   Only charts that actually tell me something — no
   chart-junk, no decoration masquerading as data.
4. SEVEN TOPIC SECTIONS — in the order above, each in its
   accent color. Per story: headline, a one-line summary
   (paragraph only if warranted), the verification badge
   with a short "who confirms / who disputes" note, and the
   source outlet name(s). Add a one-line "why it matters"
   ONLY when it isn't obvious. If a topic had nothing major
   this week, say so in ONE line — do not pad it.
5. SOURCE TRUST LEDGER — one compact table of every outlet
   you cited: Outlet | What it is | HQ | Public/Private
   (owner) | Revenue (approx) | Leaning | Standing | Author
   note. Leave cells blank when unknown.
6. METHODOLOGY & CAVEATS — short: the exact window, how
   many searches and sources, what corroborated / disputed
   mean, that paywalled sources were skipped, and that the
   outlet profiles are a light touch, not full vetting.

Footer on every page: "Generated by Wolffish" left, "Page X
of Y" right.

=== WHEN DONE ===
Tell me three things: the single biggest story of the week,
anything DISPUTED I should stay skeptical about, and any
topic where you came up nearly empty — so I know it's quiet,
not missed.
```

<Tip>
  The seven numbered topics are the only part you'll change regularly. Everything else — the research discipline, the verification rules, the PDF design — stays exactly as-is. Treat the topics block as your config and leave the rest alone.
</Tip>

### Customize It

Change any of these to make the butler yours:

| What                        | Where in the prompt               | Ideas                                                                                                                                 |
| --------------------------- | --------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------- |
| **Your topics**             | The 7 numbered topics             | Swap in your own beats — `Formula 1`, `biotech FDA approvals`, `your portfolio tickers`, `your city's local news`, `your competitors` |
| **Time window**             | `the last 7 days`                 | `last 24 hours` for a daily pulse, `last 30 days` for a monthly review                                                                |
| **Trusted sources**         | The "Good general ones" list      | Add the trade press for your field, regional outlets, or specific blogs you rely on                                                   |
| **Verification strictness** | `two or more` for green           | Require **three** independent outlets for green (stricter), or drop to one for speed                                                  |
| **Source profiling**        | The "size up the messenger" block | Turn it off entirely for a faster run, or expand it into a fuller dossier per outlet                                                  |
| **Accent palette**          | The color rules                   | Map sections to your brand colors                                                                                                     |
| **Language**                | Add a line at the end             | `Write the entire PDF in Arabic` — the headless-browser pipeline renders RTL cleanly                                                  |

## How It Works

The prompt drives a five-stage pipeline. Prefrontal loads the `web-search` and `shell` capabilities into context, the model fixes today's date, and runs:

| Stage                   | What happens                                                                                                                                                  | Output                                    |
| ----------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------- |
| **1 — Gather**          | Exhaustive multi-query sweep per topic via `web_search` (Brave when configured), until new searches stop surfacing new major items                            | A raw candidate list of stories per topic |
| **2 — Read**            | `web_fetch` opens the actual articles — full text, not snippets — across multiple outlets per story                                                           | The real content, ready to compare        |
| **3 — Verify**          | Each significant claim cross-checked across **independent** outlets; tagged corroborated / single-source / disputed; mismatched numbers reconciled to a range | A trust badge on every story              |
| **4 — Profile**         | One quick background lookup per cited outlet — what/where/owner/revenue/leaning/standing/author                                                               | The source trust ledger                   |
| **5 — Design & render** | Styled, color-coded HTML with executive summary, dashboard charts, and seven sections → printed to PDF via headless browser                                   | `news-butler-YYYY-MM-DD.pdf`              |

Hippocampus logs the run as an episode and Basalganglia records the outcome, so each briefing is kept for reference — handy when you want to diff this week against last.

### What's in the PDF

The output is engineered to be read top-to-bottom in five minutes, or skimmed by color in one:

| Section                 | What it gives you                                        | Why it's there                                          |
| ----------------------- | -------------------------------------------------------- | ------------------------------------------------------- |
| **Masthead**            | Title + the exact week window + date                     | You know precisely what period this covers              |
| **Executive Summary**   | The must-know items, one line each, color + badge tagged | Caught up in 60 seconds if that's all you read          |
| **By the Numbers**      | Story counts, sources consulted, claims checked + charts | The shape of the week at a glance — no reading required |
| **7 Topic Sections**    | Your beats, color-coded, each story badged and sourced   | The substance — minimal text, maximum signal            |
| **Source Trust Ledger** | Every outlet: what/where/owner/lean/standing             | Weigh the messenger, not just the message               |
| **Methodology**         | Window, counts, what the badges mean, caveats            | Know how the sausage was made — and its limits          |

### The Color System

Color does work in this PDF — it's not decoration. Three independent color languages, each with its own legend:

| Color use              | Meaning                     | Example palette                                                                                                                |
| ---------------------- | --------------------------- | ------------------------------------------------------------------------------------------------------------------------------ |
| **Section accent**     | Which topic you're reading  | Emerald = Saudi, Indigo = AI, Amber = Fable 5, Violet = Gaming, Rose = Anime/TV, Teal = Musk/SpaceX, Crimson = USA/Israel/Iran |
| **Verification badge** | How much to trust the story | 🟢 Corroborated · 🟡 Single-source · 🔴 Disputed                                                                               |
| **Leaning chip**       | The outlet's editorial lean | 🔵 Left · ⚪ Center · 🔴 Right (approximate, in the ledger only)                                                                |

## Example Run

Here's the shape of a finished briefing. This is an **illustrative example** of the layout and tone — your real run pulls live stories for the actual week. Note how most items are a single line, the badges carry the trust signal, and the disputed item shows both numbers.

<Accordion title="Example Briefing (illustrative layout)">
  ***

  **NEWS BUTLER**
  *Week of 9–15 June 2026 — everything you care about, verified*

  ***

  **EXECUTIVE SUMMARY**

  * 🟢 🟦 **AI:** A major lab shipped a frontier model with a step-change on agentic benchmarks — confirmed across four independent outlets and the official release notes.
  * 🟢 🟩 **Saudi Arabia:** PIF announced a new multi-billion-dollar industrial venture tied to Vision 2030; figure consistent across Reuters and Arab News.
  * 🔴 🟥 **USA / Israel / Iran:** Reports of an overnight strike — outlets **disagree on the casualty count** (see section). Treat as developing.
  * 🟡 🟧 **Fable 5:** Claims of a US block on Fable 5 are circulating from a single outlet; Anthropic has not published an official statement I could verify. Flagged as developing.
  * 🟢 🟪 **Gaming:** A blockbuster sequel got a firm release date at a major showcase — confirmed by IGN, GameSpot, and the publisher.

  ***

  **BY THE NUMBERS**

  | 37            | 21                | 14                   |
  | ------------- | ----------------- | -------------------- |
  | major stories | outlets consulted | claims cross-checked |

  *Stories per topic*
  `AI            ████████ 8`
  `USA/Isr/Iran  ███████ 7`
  `Gaming        █████ 5`
  `Saudi Arabia  █████ 5`
  `Anime/TV      ████ 4`
  `Musk/SpaceX   ████ 4`
  `Fable 5       ███ 3`

  *Verification mix* — 🟢 68% corroborated · 🟡 24% single-source · 🔴 8% disputed

  *Source leaning* — 🔵 Left 9 · ⚪ Center 8 · 🔴 Right 4

  ***

  **🟩 SAUDI ARABIA**

  **PIF launches new industrial venture under Vision 2030** — 🟢 Corroborated (Reuters, Arab News, official PIF release agree on scope and figure). *One line each; no padding.*

  **Diplomatic visit produces an energy MoU** — 🟢 Corroborated (AP, Al Arabiya).

  ***

  **🟦 AI INDUSTRY**

  **Frontier model released with agentic-benchmark jump** — 🟢 Corroborated (The Verge, Ars Technica, VentureBeat + official notes). *Why it matters: resets the bar competitors were targeting for Q3.*

  **Landmark open-weights funding round closes** — 🟢 Corroborated (TechCrunch, Reuters).

  ***

  **🟧 FABLE 5**

  **Reported US block on Fable 5** — 🟡 Single-source / developing. One outlet reports Fable 5 access was restricted in the US; I could not find a second independent confirmation, and **no official Anthropic statement was verifiable** at press time. Treat as a lead, not a fact — I'll catch any confirmation next run.

  ***

  **🟪 GAMING**

  **Blockbuster sequel dated at showcase** — 🟢 Corroborated (IGN, GameSpot, publisher).

  **Major studio acquisition closes** — 🟢 Corroborated (Eurogamer, Reuters).

  ***

  **🟥 USA / ISRAEL / IRAN**

  **Overnight strike reported** — 🔴 **Disputed.** Outlet A reports **\~14** casualties; Outlet B reports **"dozens."** No primary-source figure confirmed yet. Both numbers shown deliberately — do not anchor on either until it firms up.

  **Talks reportedly scheduled** — 🟡 Single-source / developing (one outlet, no confirmation).

  ***

  **SOURCE TRUST LEDGER**

  | Outlet    | What         | HQ           | Public/Private            | Revenue        | Leaning      | Standing              | Author |
  | --------- | ------------ | ------------ | ------------------------- | -------------- | ------------ | --------------------- | ------ |
  | Reuters   | Wire service | London, UK   | Private (Thomson Reuters) | \~\$7B (group) | ⚪ Center     | High                  | —      |
  | AP News   | Wire co-op   | New York, US | Non-profit                | \~\$0.5B       | ⚪ Center     | High                  | —      |
  | The Verge | Tech news    | New York, US | Private (Vox Media)       | —              | 🔵 Lean left | Trusted (tech)        | —      |
  | Arab News | Newspaper    | Riyadh, SA   | Private (SRMG)            | —              | ⚪ Center     | Regional, established | —      |

  *(…one row per cited outlet; blanks where not readily available.)*

  ***

  **METHODOLOGY & CAVEATS**

  Window: 9–15 June 2026 (last 7 days incl. today). 21 outlets across 30+ searches; 14 significant claims cross-checked. Paywalled sources (Bloomberg, WSJ, NYT, FT) skipped by design. Outlet profiles are a quick background pass — directional, not a full audit. "Corroborated" = ≥2 independent outlets; "disputed" = outlets disagree on the facts.

  *Generated by Wolffish — Page 1 of 4*
</Accordion>

<Note>
  The example above keeps story claims deliberately generic — your run fills them with real, sourced, dated stories. Notice the **Fable 5** and **strike** items: rather than assert something it can't confirm, the butler prints the lead *and tells you it's unverified or disputed*. That honesty is the feature.
</Note>

## Limits

* **"Exhaustive" means exhaustive on *major* news**, not every post on the internet. The butler stops each topic at diminishing returns — it won't miss a significant story, but it deliberately skips minor filler, and very fresh breaking news (the last hour) may not be indexed by search engines yet.
* **Verification depends on coverage.** A real story that only one outlet has covered *correctly* will still be tagged single-source — the badge reflects how many independent outlets reported it, not absolute truth. Rare stories and very local news will skew amber.
* **Source profiles are directional, not audited.** Political-leaning labels come from public media-bias references and are approximate; revenue and ownership are "if readily available." This is a quick background check, by design — not journalism-grade vetting. Don't make high-stakes decisions on the ledger alone.
* **Paywalled outlets are skipped.** Bloomberg, WSJ, NYT, FT and similar return 403 to `web_fetch`. Their reporting may be the primary source on a story; the butler works around them with free outlets, but occasionally that means a story is thinner than it would be with paywall access.
* **PDF rendering needs a headless browser.** Wolffish uses Playwright or Puppeteer; if neither is installed it will try to install one, which usually works but needs `npm`/`npx` on your PATH.
* **It reports, it doesn't advise.** The butler tells you what happened and how trustworthy it is. The judgment calls — what to do about it — stay yours.

## Cost & Model Guide

Heavier than a simple news digest — the exhaustive sweep, the cross-verification reads, and the per-outlet lookups mean many searches and many fetches. Still inexpensive on the recommended model.

### Approximate Cost Per Run

| Model                          | Est. Cost Per Run | Notes                                                                                     |
| ------------------------------ | ----------------- | ----------------------------------------------------------------------------------------- |
| **DeepSeek V4 Pro (Max mode)** | \~\$0.08–0.25     | **Recommended.** Frontier reasoning for the verification calls at a fraction of the price |
| DeepSeek V4 Flash              | \~\$0.03–0.08     | Cheaper and faster; weaker at the independent-source judgment — fine for a casual digest  |
| Qwen 3.7 Max                   | \~\$0.15–0.40     | Solid alternative                                                                         |
| Claude Sonnet 4.x              | \~\$0.40–0.90     | Polished prose; strong verification                                                       |
| Claude Opus                    | \~\$1.50–3.50     | Most careful at corroborated-vs-disputed; overkill for daily use                          |

### Token Budget

\~250,000–600,000 tokens per run. The exhaustive multi-topic sweep and the full-text fetches dominate; the verification pass and source lookups add the rest. A configured **Brave Search key** keeps the run from stalling on rate limits, which is what otherwise inflates both time and tokens. Roughly 30–60 LLM calls (searches, fetches, the verification reasoning, the source profiles, and the HTML render).

For a few cents a day to never miss anything you care about — and to know which claims to trust — it pays for itself the first time it flags a rumor you'd otherwise have repeated.

## Automating with Heartbeat

This is one of the **best** heartbeat candidates in the whole library: it's read-only research that writes a single file — no posting, no sending, no destructive commands, nothing that needs a human at the approval gate. Exactly the kind of reversible, low-blast-radius job the heartbeat is for. (For the general rule on what's safe to automate, see [What to Schedule](/configuration/what-to-schedule).)

Open **Settings > Heartbeat**, paste the block below, and a fresh briefing will be waiting in your workspace every morning before you open your laptop.

```markdown theme={null}
## News Butler | Daily (07:00)

You are my News Butler. Make sure I know EVERYTHING that
matters to me from the last 7 days — up to and including
today — across the topics below, and nothing I don't. Be
exhaustive on what's major, ruthless about filler. Deliver
ONE clean, modern, color-coded PDF I can read in five
minutes. Trust nothing until you've checked it against
other outlets.

Run `date +%F` for today; window is the last 7 days.

Topics (each its own color-coded section):
1. Saudi Arabia — anything major at the country level.
2. AI industry — major news and breakthroughs of any kind.
3. Fable 5 — the US-blocking situation and what Anthropic
   did; say so plainly if you can't confirm it.
4. Gaming — major industry news only.
5. Anime, TV & movies — major news only.
6. Elon Musk & SpaceX — esp. any SpaceX IPO developments.
7. USA / Israel / Iran — the conflict.

For each topic: several searches until new ones stop
surfacing new major items, then web_fetch the real
articles. Free sources only (Reuters, AP, BBC, Al Jazeera,
The Verge, Ars Technica, TechCrunch, Arab News, IGN,
Variety, Space.com, official pages); skip paywalls
(Bloomberg, WSJ, NYT, FT) and SEO spam. Prefer primary
sources.

Verify every significant claim: green = 2+ INDEPENDENT
outlets agree (syndication = one source); amber =
single-source/developing; red = outlets disagree (show both
numbers). For each cited outlet, ONE quick lookup: what it
is, HQ, public/private + owner, rough revenue, leaning
(left/center/right, approximate), standing, author note —
minimal, leave blanks, don't rabbit-hole.

Build the PDF as styled HTML then render via headless
browser; save as news-butler-YYYY-MM-DD.pdf. Minimal text —
earn every sentence; let badges, numbers, and charts carry
it. Sections: masthead; executive summary (must-knows, one
line each, color + badge); by-the-numbers dashboard with
inline-SVG/CSS charts (stories per topic, verification mix,
source leaning — no external chart libs); the 7 topic
sections (color-coded, each story badged + sourced, "nothing
major" in one line if quiet); source trust ledger; short
methodology + caveats. Footer: "Generated by Wolffish" /
"Page X of Y".
```

<Tip>
  `Daily (07:00)` gives you a rolling 7-day catch-up every morning. Prefer a clean weekly digest? Use `Weekly (Monday 07:00)` and change the window line to "the last 7 days." For a tighter pulse, `Daily (07:00)` with a "last 24 hours" window turns it into a true morning brief.
</Tip>

## Make Your Own

The pattern generalizes to any "keep me informed, but verified" job:

* **Investor's morning brief** — your tickers, your sectors, earnings and filings, with the same corroborated/disputed discipline on rumors.
* **Competitive radar** — your competitors' launches, funding, hires, and outages — sourced and trust-tagged.
* **Regional desk** — your country or city's politics, economy, and events, leaning on local outlets you list as trusted.
* **Fandom desk** — a sport, a studio, a franchise — major news only, no rumor-mill noise.

The discipline stays the same every time: **exhaustive on what's major, skeptical of everything, honest about the source.** Change the beats; keep the butler.
