# Tech News Researcher

> Use this skill when you need to research current tech-news sources, curate 6 to 10 Medium-worthy article topics, save the shortlist to shared memory, and send a numbered WhatsApp digest. Trigger on daily research runs, topic-discovery requests, or asks for fresh article ideas from Product Hunt, Hacker News, or Reddit.

- Skill: `arvindrk/tech-news-researcher` (Agent Skill)
- Install (CLI): `npx skillmds@latest add arvindrk/tech-news-researcher`
- Raw SKILL.md: https://api.skillmd.com/api/skills/arvindrk/tech-news-researcher/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Product & Planning
- Author: arvindrk (https://skillmd.com/u/arvindrk)
- Updated: 2026-09-17
- Page: https://skillmd.com/skills/arvindrk/tech-news-researcher

---


# Tech News Researcher

Research the latest high-signal technology conversations and convert them into a shortlist of timely, article-worthy Medium topics.

## When to Use This Skill

Use this skill when:

- a cron job needs a fresh daily shortlist
- the user asks for article ideas or today's best topics
- the pipeline needs a numbered topic list for downstream drafting

Do not use this skill for deep article writing or Medium publication. Its job ends after shortlist creation, memory storage, and WhatsApp delivery.

## Mission

Your job is not to summarize the internet. Your job is to identify which current tech stories are most likely to become strong Medium articles for a technical audience.

Every run should end with:

- a curated list of 6 to 10 topic candidates
- one concise reason for each topic
- a structured memory entry that downstream skills can consume
- a clean WhatsApp message sent to the user

## Invocation Modes

### Cron Invocation

When invoked by cron:

- treat the run as a fresh daily discovery cycle
- collect current signals from the last 24 to 72 hours
- bias toward novelty, momentum, and article potential
- send the shortlist automatically over WhatsApp

### User Invocation

When invoked directly by a user:

- refresh the latest shortlist unless the user explicitly asks for the previous one
- if the user asks for a niche angle, bias the shortlist toward that angle
- still save the shortlist to memory in the same schema used by cron runs

## Required Research Sources

Use `web_search` plus `web_fetch` and browser tools as needed. Prefer direct fetching first. If a source blocks or renders dynamically, use browser navigation and snapshots.

You must inspect at least these sources on every normal run:

- Product Hunt: today's launches or the latest homepage ranking
- Hacker News Top
- Hacker News Ask
- Hacker News Show
- Reddit `r/technology`
- Reddit `r/programming`
- Reddit `r/MachineLearning`
- Reddit `r/LocalLLaMA` or `r/LocalLLM`

You may also inspect adjacent communities when useful, including:

- `r/artificial`
- `r/devops`
- `r/startups`
- notable company engineering blogs surfaced by search

## Defaults and Gotchas

- Default to the strongest builder-facing angle, not the loudest headline.
- Default to merging duplicate stories across sources rather than listing them twice.
- Reddit community names can drift over time; if one target subreddit is unavailable, use the closest active community and record that choice implicitly in the source labels.
- If one source is temporarily unavailable, continue the run with the remaining required sources instead of failing the shortlist.

## Research Process

### Step 1: Gather Signals

Collect candidate signals from each source. For each candidate, capture:

- source
- title
- URL
- timestamp if available
- vote, comment, or ranking signal if available
- one-line explanation of why people care

Avoid low-signal fluff:

- vague funding news without a meaningful technical angle
- generic product launches with no engineering substance
- stale stories that already peaked days ago unless the angle is still accelerating
- duplicate stories across communities without a differentiated angle

### Step 2: Normalize and De-duplicate

Merge duplicate signals that refer to the same underlying story. Preserve multiple sources when they strengthen confidence.

For each merged story, identify the best possible Medium angle. Good angles are usually one of:

- why this matters for builders
- how a new launch changes the product or developer landscape
- what technical trend the story reveals
- what engineers can learn from the implementation, architecture, or market shift

### Step 3: Score Article Potential

Score each topic qualitatively using the following criteria:

- **Freshness**: is it recent enough to still matter now?
- **Technical depth**: can a serious engineering article be written from it?
- **Audience fit**: would Medium tech readers care?
- **Novelty**: is the angle distinct from obvious headline coverage?
- **Discussion energy**: are people reacting, debating, or experimenting with it?
- **Evergreen tail**: can the article remain useful beyond the same day?

Prefer topics that combine immediacy with a broader lesson.

### Step 4: Select 6 to 10 Topics

Return between 6 and 10 topics only. Fewer than 6 usually means you were too conservative. More than 10 creates decision fatigue.

Each topic must include:

- a short headline
- a one-sentence reason
- 2 to 5 supporting source URLs
- source labels for traceability

## Output Quality Bar

Each topic should feel publishable as a Medium article, not just shareable as a tweet. A good shortlist entry should imply a plausible article structure.

Examples of strong topics:

- a surprising launch with clear implications for developers
- a sudden shift in open-source AI tooling
- a technical controversy exposing an industry trade-off
- a breakout product that reveals a broader platform trend

Examples of weak topics:

- generic "AI is growing" summaries
- incremental version bumps with no real consequence
- pure gossip
- raw link dumps with no editorial framing

## Memory Contract

Always save the shortlist in structured memory under the shared namespace:

- namespace: `tech-medium-pipeline`
- key: `latest_shortlist`

Use a structure equivalent to:

```json
{
  "generated_at": "ISO-8601 timestamp",
  "status": "shortlist_sent",
  "topics": [
    {
      "number": 1,
      "headline": "Short topic title",
      "angle": "Article angle in one sentence",
      "reason": "Why this is worth writing now",
      "sources": [
        {"label": "Product Hunt", "url": "https://..."},
        {"label": "Hacker News", "url": "https://..."}
      ]
    }
  ]
}
```

Also update:

- namespace: `tech-medium-pipeline`
- key: `conversation_state`

With fields equivalent to:

```json
{
  "phase": "awaiting_topic_selection",
  "last_action": "shortlist_sent",
  "last_updated_at": "ISO-8601 timestamp"
}
```

## WhatsApp Message Format

Send a clean, readable numbered list. Keep it compact enough for chat, but informative enough for the user to choose quickly.

Use this message shape:

```text
Here are today's best Medium-worthy tech topics:

1. [Headline] - [one-sentence reason]
2. [Headline] - [one-sentence reason]
3. [Headline] - [one-sentence reason]

Reply with the number or topic name and I'll draft the full article.
```

Rules:

- do not send raw URLs unless the user asks
- do not send an overly long wall of text
- do not include internal scoring details
- always end with a clear next action

## Fallback and Recovery Rules

- If Product Hunt is hard to fetch, use search results plus browser access to recover today's launches.
- If Reddit pages are blocked or partially rendered, use browser tools and inspect visible post lists.
- If one source fails, continue with the others rather than aborting.
- If fewer than 6 strong topics exist, expand the search radius but keep the quality bar high.
- If the user asks why a topic was chosen, provide the rationale and sources from memory.

## Guardrails

- Do not invent launch details, metrics, dates, or claims.
- Do not overfit to AI every single day if stronger software, infrastructure, or security stories exist.
- Do not produce duplicate shortlist entries with slightly different wording.
- Do not confuse popularity with article-worthiness.
- Prefer evidence and momentum over hype.

## Completion Checklist

Before ending:

1. Confirm you reviewed all required source categories or documented any source failure.
2. Confirm you selected 6 to 10 topics only.
3. Save the shortlist to memory in the shared schema.
4. Send the WhatsApp shortlist.
5. Leave the pipeline in `awaiting_topic_selection` state.

