Back to the catalog

news-reviewer

Turn a news item into a research briefing: verified facts, historical parallels, and devil's-advocate questions.

Open source Open in the app JSON README (API)

About

Turn a news item into a research briefing: verified facts, historical parallels, and devil's-advocate questions.

Details

Kind
Plugins
Topic
Social & content
Publisher
mertcanciy
Origin
gemini
Category
ferramentas
Version
1.0.0
Stars
2
Last push
2026-08-07T10:31:12Z
Repository state
ativo
Language
Shell
License
MIT
Added
2026-08-30 14:13:39
Updated
2026-08-30 14:13:39
Origin id
mertcanciy/news-reviewer

README

<p align="center">
  <strong>Stop getting summaries. Start getting briefings.</strong>
</p>

<p align="center">
  <a href="LICENSE"><img src="https://img.shields.io/github/license/mertcanciy/news-reviewer?style=flat" alt="License"></a>
</p>

Hand your AI agent a news story and you get the story back, reworded. That is not what you need when you have to *talk* about it — on air, in a meeting, at a dinner table where someone will push back.

`news-reviewer` produces the other thing: the prep document a researcher hands you before you go on. Facts that survived a second source. The historical parallel, including where it stops working. The questions that make the conversation interesting instead of agreeable.

It is one Markdown file with no code, no hooks and no network calls. **It works with any coding agent** — drop it in and ask.

## Install

The universal path, which works with Devin, Codex, Cursor, Copilot, Aider, Zed, Windsurf, Jules and [~30 others](https://agents.md):

```bash
curl -sL https://raw.githubusercontent.com/mertcanciy/news-reviewer/main/AGENTS.md -o AGENTS.md
```

That is the whole install for most agents. Native package formats for specific tools — plugin marketplaces, `.cursor/skills/`, Gemini extensions — are in **[INSTALL.md](./INSTALL.md)**.

Then hand it a story:

```
Brief me on https://example.com/some-story
```

Works with a link, a pasted article, or just a headline. Paste several at once and each gets its own briefing. Tools with slash commands expose it as `/news-reviewer`.

## What you get

**Summary** — a plain-language lede, then bullets carrying the numbers, names, and dates.

**Depth & Context** — historical parallels, the dynamics driving the story, second-order effects. Every parallel comes with one sentence on why it fits *and one on where it breaks down*, because a parallel you can't puncture is a parallel someone will puncture for you.

**Devil's Advocate** — questions that attack the consensus reading, left deliberately unanswered. Arguing them is your job, not the model's.

**Sources** — linked, with single-source claims flagged and contradictions between sources stated outright. You are going to repeat these numbers to other people; you should know which ones are shaky.

## The part most summarizers skip

Two sources rarely agree completely. Most tools quietly pick one. This one surfaces the disagreement:

| | Bloomberg | Mongabay |
|---|---|---|
| Planted area | 144,000 hectares | 180,000 hectares across two states |
| Degraded pasture available | ~40 million hectares | over 100 million hectares |
| Feedstock timeline | first fruit in 2030 | refinery starts on soy oil, "100% macaúba by end of decade" |

That third row is the whole story: a refinery opening in 2029, marketed on a fruit that will not exist in volume until 2030. No summary surfaces that. A briefing has to.

## Control the depth

Add a marker in any language you are working in:

| Marker | What you get |
|---|---|
| `quick note` | Summary plus one question |
| *(nothing)* | Full briefing, 2–4 depth paragraphs, 3–4 questions |
| `main story` | 2–3 parallels with hard data, 3–5 questions, named holders of the opposing view |

## Language

Write to it in any language; the briefing comes back in that language regardless of what the sources are in. Quotes get translated with the original kept alongside when the wording matters.

## Archiving

After the first briefing it offers to collect the session's briefings into `./news-reviews/<YYYY-MM-DD>-news.md`. Say yes once and it keeps appending. Useful if you are building a weekly rundown.

## One file, every agent

The skill lives in exactly one place: [`skills/news-reviewer/SKILL.md`](./skills/news-reviewer/SKILL.md). Every other format in this repo is generated from it by `scripts/sync.sh`, and CI fails the build if a copy drifts — so a Cursor user and a Devin user are never running different instructions.

| File | Who reads it |
|---|---|
| `skills/news-reviewer/SKILL.md` | canonical source; skill-aware agents |
| `AGENTS.md` | Devin, Codex, Cursor, Copilot, Aider, Zed, Windsurf, Jules and ~30 others — [the AAIF standard](https://agents.md) |
| `.cursor/skills/news-reviewer/SKILL.md` | Cursor |
| `GEMINI.md` + `gemini-extension.json` | Gemini CLI |
| `.agents/plugins/`, `.codex-plugin/`, `.claude-plugin/` | plugin installers |

## Tune it

Fork it, edit `skills/news-reviewer/SKILL.md`, run `./scripts/sync.sh`, and point your agent at your copy instead. For plugin-based tools, swap the marketplace:

Remove the upstream copy first — a fork and its upstream share a name — then add yours. Exact commands per tool are in [INSTALL.md](./INSTALL.md).

Things people reasonably want to change: the depth ceilings, the section transitions, whether Devil's Advocate questions get numbered, and the layout rules in Step 3.

## A note on layout

Step 3 of the skill lays the briefing out — bolded bullet labels, tables for two-sided material, sentences split at semicolons instead of chained.

Every rule in that step *conserves content*. It splits, labels, and relocates; nothing trims. This is deliberate: formatting rules that cap things ("max 5 bullets", "keep it short") quietly delete the research you asked for. Tested across matched runs, the layout rules cut median sentence length roughly in half while leaving total word count flat.

## License

MIT. Built for prepping a weekly financial-news program; it turned out to be useful for anyone who has to hold an opinion in public.

More