New: Earn 20% as an AgentAlley affiliate. Share your link and earn on every sale you refer. Join now New: Earn 20% as an affiliate. Join now

Surface the 20 most relevant stories

Niche research

by charlie947 · MIT license · ★ 3,652 on GitHub · updated Sep 15

Niche research cover

Surface the 20 most relevant stories in a niche from the last 7 days using available live research tools. Verified dates, real links, shareable angles.

---
name: niche-research
description: >
  Surface the 20 most relevant stories in a niche from the last 7 days using available live research tools. Verified dates, real links, shareable angles. Use available browser or web search tools to inspect dated source material. Use this skill whenever the user says "research my niche", "what's trending", "find stories", "this week's news", "content research", or drops a niche and asks what's happening in it. Requires live source access for current research.
---

# Niche Research

## Codex and Claude runtime

- Use this skill in Codex or Claude with the tools actually available in the current task. `AskUserQuestion` examples describe the questions, not a required API: use an available question tool within its limits, or ask in chat. Reuse answers and source material already supplied.
- Work in the user-selected project. Read its `about-me.md`, `voice.md` and relevant brand files before personalised work. Confirm the intended author if files conflict or contain starter defaults. Ask for missing facts or run `voice-builder`; never inherit the maintainer's identity, accounts or private files.
- Resolve bundled `references/` relative to this skill folder. For an explicitly requested profile refresh, read and update the canonical `about-me.md`, `voice.md` or `newsletter-voice.md` in place, preserving unrelated user facts and rules. Consumers must reread those canonical files. Use a new filename only for new deliverables that would collide with unrelated existing files. Installation alone never starts an interview or writes files. Do not write persistent learnings unless requested.
- Use supplied evidence first. Verify external claims through available search/source tools when needed. If a source or integration is unavailable, name the missing capability and offer supplied text/export input. Never invent facts, first-person experience, metrics or a successful tool run.
- Connect only services needed for the chosen route through the user's existing account. Never print credentials or overwrite connections. Drafting, saving and reviewing do not authorise publishing, sending messages or changing accounts.

## CRITICAL: Auto-start on load

Overview

When this skill triggers, go straight to Step 1. Do not summarise the research method.

Manual install (npx, ZIP)
Claude Codenpx skills add charlie947/social-media-skills --skill niche-research -g -a claude-code
Claude Code (manual)mkdir -p ~/.claude/skills && curl -sL https://codeload.github.com/charlie947/social-media-skills/tar.gz/8cefb5b6d037 \ | tar -xz -C ~/.claude/skills --strip-components=2 social-media-skills-8cefb5b6d037/skills/niche-research
Windows (PowerShell)New-Item -ItemType Directory -Force "$HOME\.claude\skills" | Out-Null; Invoke-WebRequest "https://m.agentalley.io/zip/647a327f57a21b5494d1/niche-research.zip" -OutFile "$env:TEMP\niche-research.zip"; Expand-Archive "$env:TEMP\niche-research.zip" -DestinationPath "$HOME\.claude\skills" -Force
Claude.ai / desktopDownload the ZIP and upload it under Settings → Capabilities → Skills.
Codex, Cursor, other agentsPoint them at SKILL.md. The other files are plain text.

Connects with Agent Alley MCP · agentalley.io/mcp

Files included

  • SKILL.md6.7 KB
Read the files here
charlie947/8cefb5b1 file
SKILL.md
Show the full text132 lines

Niche Research

Codex and Claude runtime

  • Use this skill in Codex or Claude with the tools actually available in the current task. AskUserQuestion examples describe the questions, not a required API: use an available question tool within its limits, or ask in chat. Reuse answers and source material already supplied.
  • Work in the user-selected project. Read its about-me.md, voice.md and relevant brand files before personalised work. Confirm the intended author if files conflict or contain starter defaults. Ask for missing facts or run voice-builder; never inherit the maintainer's identity, accounts or private files.
  • Resolve bundled references/ relative to this skill folder. For an explicitly requested profile refresh, read and update the canonical about-me.md, voice.md or newsletter-voice.md in place, preserving unrelated user facts and rules. Consumers must reread those canonical files. Use a new filename only for new deliverables that would collide with unrelated existing files. Installation alone never starts an interview or writes files. Do not write persistent learnings unless requested.
  • Use supplied evidence first. Verify external claims through available search/source tools when needed. If a source or integration is unavailable, name the missing capability and offer supplied text/export input. Never invent facts, first-person experience, metrics or a successful tool run.
  • Connect only services needed for the chosen route through the user's existing account. Never print credentials or overwrite connections. Drafting, saving and reviewing do not authorise publishing, sending messages or changing accounts.

CRITICAL: Auto-start on load

When this skill triggers, go straight to Step 1. Do not summarise the research method.

Prerequisites

Use the live web search and browser capabilities actually available in Codex or Claude. No particular extension or assistant vendor is required. Read tool documentation and check access before choosing a route. Use the user's existing authorised sessions for personalised feeds; never change their connections.

Browser feed access and indexed web search are different evidence surfaces. If feeds are unavailable, continue with indexed public results and label the missing feed coverage. If no live source access exists, current research is pending; supplied dated sources can support a clearly labelled limited brief.

Never scrape comments or replies on any platform. Read original post bodies and article text only. Aggregate engagement counts may be recorded when visible. Do not enable comment collection through an actor option.

Step 1. Gather the niche

Call AskUserQuestion:

[
  {
    "question": "What niche do you want to research?",
    "header": "Niche",
    "multiSelect": false,
    "options": [
      {"label": "I will type my niche", "description": "Type the exact niche phrase after this"},
      {"label": "Pull from about-me.md", "description": "Use the niche and audience already in my voice files"}
    ]
  }
]

If the user picks "Pull from about-me.md", read the file from the project root. If the file does not exist or does not name a clear niche, fall back to asking the user to type it.

Step 2. Browse like a human researcher

Use the available route for the following sources; skip inaccessible feeds with an explicit coverage note. Verify publish dates on every item. Exclude anything older than 7 days from today without exception.

2a. Reddit feed scanning
  1. Navigate to https://www.reddit.com/ (home feed).
  2. Scroll the feed. Load more posts.
  3. Open niche-relevant posts. On each post, check the "posted X days ago" timestamp.
  4. Discard posts older than 7 days.
  5. Repeat with https://www.reddit.com/r/popular/.
  6. Also search any niche-specific subreddits that come up while scrolling.
2b. X (Twitter) feed scanning
  1. Navigate to https://x.com/home (For You feed).
  2. Scroll multiple screens.
  3. Open original niche-relevant posts. Author-authored continuations may supply context; do not collect the reply/comment thread.
  4. Check the post timestamp on each thread.
  5. Discard posts older than 7 days, even if engagement is high.

Run these searches one by one, open the top results, verify publish dates.

  • [niche] news (set Tools → Any time → Past week)
  • [niche] launch (past week)
  • [niche] controversy (past week)
  • [niche] research (past week)
  • [niche] regulation (past week)

For each promising result:

  1. Open the page.
  2. Locate the visible publish date.
  3. Verify it is within the last 7 days.
  4. If the date is missing, unclear, or older than 7 days, exclude it.

Step 3. Synthesise into themes

Collect a broad pool of verified, in-window items. Group related items into themes. Each theme may combine social discussion and news coverage.

Select themes that show at least two of:

  • Strong attention or discussion
  • Clear disagreement or debate
  • Novel insight or new information
  • Real-world implications for the niche

Target 20 themes. Fewer is acceptable if genuinely limited.

Step 4. Output

First line before the table:

As of [DD/MM/YYYY]

Then a markdown table with these exact columns:

| Theme / Emerging Story | Platforms (Reddit, X, News) | Key Communities / Accounts / Sources | Representative Links | Attention Signals | What's Happening or Being Debated | Why It Matters for [NICHE] | Shareable Angle |

Include a short coverage note naming which feeds or indexed searches were actually used, the date window and any inaccessible sources.

Step 5. Offer the next move

After the table, ask:

Any row here you want me to turn into a LinkedIn post? Call the post-writer skill with the row number, or the post-formatter skill to apply a framework.

Rules

  • Never invent links, metrics, or dates.
  • Exclude anything older than 7 days without exception.
  • Verify every publish date before including an item. No shortcuts.
  • Keep the table compact, with the coverage note outside it.
  • If fewer than 20 themes pass the filter, say so. Do not pad with weak items.
  • Indexed results do not prove a full feed scan. Missing feed access is a limitation, not evidence of no relevant stories.
  • British English throughout. DD/MM/YYYY date format.
  • Never use em dashes.
1---
2name: niche-research
3description: >
4 Surface the 20 most relevant stories in a niche from the last 7 days using available live research tools. Verified dates, real links, shareable angles. Use available browser or web search tools to inspect dated source material. Use this skill whenever the user says "research my niche", "what's trending", "find stories", "this week's news", "content research", or drops a niche and asks what's happening in it. Requires live source access for current research.
5---
6 
7# Niche Research
8 
9## Codex and Claude runtime
10 
11- Use this skill in Codex or Claude with the tools actually available in the current task. `AskUserQuestion` examples describe the questions, not a required API: use an available question tool within its limits, or ask in chat. Reuse answers and source material already supplied.
12- Work in the user-selected project. Read its `about-me.md`, `voice.md` and relevant brand files before personalised work. Confirm the intended author if files conflict or contain starter defaults. Ask for missing facts or run `voice-builder`; never inherit the maintainer's identity, accounts or private files.
13- Resolve bundled `references/` relative to this skill folder. For an explicitly requested profile refresh, read and update the canonical `about-me.md`, `voice.md` or `newsletter-voice.md` in place, preserving unrelated user facts and rules. Consumers must reread those canonical files. Use a new filename only for new deliverables that would collide with unrelated existing files. Installation alone never starts an interview or writes files. Do not write persistent learnings unless requested.
14- Use supplied evidence first. Verify external claims through available search/source tools when needed. If a source or integration is unavailable, name the missing capability and offer supplied text/export input. Never invent facts, first-person experience, metrics or a successful tool run.
15- Connect only services needed for the chosen route through the user's existing account. Never print credentials or overwrite connections. Drafting, saving and reviewing do not authorise publishing, sending messages or changing accounts.
16 
17## CRITICAL: Auto-start on load
18 
19When this skill triggers, go straight to Step 1. Do not summarise the research method.
20 
21## Prerequisites
22 
23Use the live web search and browser capabilities actually available in Codex or Claude. No particular extension or assistant vendor is required. Read tool documentation and check access before choosing a route. Use the user's existing authorised sessions for personalised feeds; never change their connections.
24 
25Browser feed access and indexed web search are different evidence surfaces. If feeds are unavailable, continue with indexed public results and label the missing feed coverage. If no live source access exists, current research is pending; supplied dated sources can support a clearly labelled limited brief.
26 
27Never scrape comments or replies on any platform. Read original post bodies and article text only. Aggregate engagement counts may be recorded when visible. Do not enable comment collection through an actor option.
28 
29## Step 1. Gather the niche
30 
31Call AskUserQuestion:
32 
33```json
34[
35 {
36 "question": "What niche do you want to research?",
37 "header": "Niche",
38 "multiSelect": false,
39 "options": [
40 {"label": "I will type my niche", "description": "Type the exact niche phrase after this"},
41 {"label": "Pull from about-me.md", "description": "Use the niche and audience already in my voice files"}
42 ]
43 }
44]
45```
46 
47If the user picks "Pull from about-me.md", read the file from the project root. If the file does not exist or does not name a clear niche, fall back to asking the user to type it.
48 
49## Step 2. Browse like a human researcher
50 
51Use the available route for the following sources; skip inaccessible feeds with an explicit coverage note. Verify publish dates on every item. Exclude anything older than 7 days from today without exception.
52 
53### 2a. Reddit feed scanning
54 
551. Navigate to https://www.reddit.com/ (home feed).
562. Scroll the feed. Load more posts.
573. Open niche-relevant posts. On each post, check the "posted X days ago" timestamp.
584. Discard posts older than 7 days.
595. Repeat with https://www.reddit.com/r/popular/.
606. Also search any niche-specific subreddits that come up while scrolling.
61 
62### 2b. X (Twitter) feed scanning
63 
641. Navigate to https://x.com/home (For You feed).
652. Scroll multiple screens.
663. Open original niche-relevant posts. Author-authored continuations may supply context; do not collect the reply/comment thread.
674. Check the post timestamp on each thread.
685. Discard posts older than 7 days, even if engagement is high.
69 
70### 2c. Google web search
71 
72Run these searches one by one, open the top results, verify publish dates.
73 
74- `[niche] news` (set Tools → Any time → Past week)
75- `[niche] launch` (past week)
76- `[niche] controversy` (past week)
77- `[niche] research` (past week)
78- `[niche] regulation` (past week)
79 
80For each promising result:
81 
821. Open the page.
832. Locate the visible publish date.
843. Verify it is within the last 7 days.
854. If the date is missing, unclear, or older than 7 days, exclude it.
86 
87## Step 3. Synthesise into themes
88 
89Collect a broad pool of verified, in-window items. Group related items into themes. Each theme may combine social discussion and news coverage.
90 
91Select themes that show at least two of:
92 
93- Strong attention or discussion
94- Clear disagreement or debate
95- Novel insight or new information
96- Real-world implications for the niche
97 
98Target 20 themes. Fewer is acceptable if genuinely limited.
99 
100## Step 4. Output
101 
102First line before the table:
103 
104```
105As of [DD/MM/YYYY]
106```
107 
108Then a markdown table with these exact columns:
109 
110```
111| Theme / Emerging Story | Platforms (Reddit, X, News) | Key Communities / Accounts / Sources | Representative Links | Attention Signals | What's Happening or Being Debated | Why It Matters for [NICHE] | Shareable Angle |
112```
113 
114Include a short coverage note naming which feeds or indexed searches were actually used, the date window and any inaccessible sources.
115 
116## Step 5. Offer the next move
117 
118After the table, ask:
119 
120> Any row here you want me to turn into a LinkedIn post? Call the post-writer skill with the row number, or the post-formatter skill to apply a framework.
121 
122## Rules
123 
124- Never invent links, metrics, or dates.
125- Exclude anything older than 7 days without exception.
126- Verify every publish date before including an item. No shortcuts.
127- Keep the table compact, with the coverage note outside it.
128- If fewer than 20 themes pass the filter, say so. Do not pad with weak items.
129- Indexed results do not prove a full feed scan. Missing feed access is a limitation, not evidence of no relevant stories.
130- British English throughout. DD/MM/YYYY date format.
131- Never use em dashes.
132 
View all files on GitHub →

Details

Updated
Sep 15, 2026
License
MIT
Stars on the repo
★ 3,652
Checked
Source
charlie947/social-media-skills ↗
Creator
charlie947 · 17 listings
View creator

Similar skills

See all →
SkillReverse engineer native, managed, Electron/JavaScriptREAmorluto/rea · by morlutoReverse engineer native, managed, Electron/JavaScript, packaged, firmware, and browser targets with REA. Use shipped-artifact or requested runtime evidence to explain features, compare versions, decompile code, or guide a reconstruction. Skip REA for ordinary source-repository architecture analysis.★ 316k GitHub starsSkillBrainstorms ideas into designs before any creative workBrainstorming Ideas Into Designsobra/superpowers · by obraYou MUST use this before any creative work - creating features, building components, adding functionality, or modifying behavior. Explores user intent, requirements and design before implementation.★ 290k GitHub starsSkillRequires technical rigor and verificationCode Review Receptionobra/superpowers · by obraUse when receiving code review feedback, before implementing suggestions, especially if feedback seems unclear or technically questionable - requires technical rigor and verification, not performative agreement or blind implementation★ 290k GitHub starsSkillDiagnosis loop for hard bugs and performance regressionsDiagnosing bugsmattpocock/skills · by mattpocockDiagnosis loop for hard bugs and performance regressions. Use when the user says "diagnose"/"debug this", or reports something broken/throwing/failing/slow.★ 267k GitHub starsSkillImplement the result of /to-spec and /to-tickets in codeImplement specmattpocock/skills · by mattpocockImplement the result of /to-spec and /to-tickets in code.★ 267k GitHub starsSkillWriting a PR bodymattpocock/skills · by mattpocockUse when writing a PR body.★ 267k GitHub stars

More from charlie947

SkillTurn a LinkedIn Analytics exportAnalytics dashboardcharlie947/social-media-skills · by charlie947Turn a LinkedIn Analytics export into an interactive dark-themed React dashboard plus a written strategic analysis with 5 data-backed content recommendations. Reads every sheet in the export, builds charts for engagement trend, follower growth, post performance scatter, day-of-week heatmap, and audience breakdown. Use this skill whenever the user says "analyse my linkedin", "linkedin analytics", "build my dashboard", "review my performance", or uploads a LinkedIn Analytics export file. Requires the user's LinkedIn Analytics export (xlsx) as input.★ 3.7k GitHub starsSkillGenerate 24 to 40 LinkedIn post ideas in a single tableContent matrixcharlie947/social-media-skills · by charlie947Generate 24 to 40 LinkedIn post ideas in a single table by pairing the user's content pillars with 8 proven content formats. Based on the Justin Welsh content matrix. Use this skill whenever the user says "give me post ideas", "content matrix", "what should I post about", "generate post ideas", "content ideation", or "map out my content for the month". Pulls from about-me.md and voice.md if they exist, otherwise asks for pillars and context.★ 3.7k GitHub starsSkillGenerate a branded slide-by-slide LinkedIn carouselGemini carouselcharlie947/social-media-skills · by charlie947Generate a branded slide-by-slide LinkedIn carousel using Gemini. Takes source content, builds a design brief, waits for approval, then outputs per-slide image generation prompts. 1080x1350 vertical format. Use this skill whenever the user says "carousel", "build a carousel", "turn this into a carousel", "gemini carousel", or wants multi-slide LinkedIn content. Always includes an approval gate between brief and image generation.★ 3.7k GitHub starsSkillGenerate a hand-drawn whiteboard infographic promptGemini infographiccharlie947/social-media-skills · by charlie947Generate a hand-drawn whiteboard infographic prompt. Takes source content (a post, newsletter, blog, research note) and returns a complete Gemini image generation prompt with a structured brief. Use this skill whenever the user says "whiteboard infographic", "gemini infographic", "hand-drawn graphic", "turn this into a whiteboard", or wants an AI-generated infographic for a post.★ 3.7k GitHub starsSkillCreate LinkedIn post graphicsGraphic designercharlie947/social-media-skills · by charlie947Create LinkedIn post graphics. Decides between an HTML/CSS structured graphic or an AI-generated infographic based on the post content. Use this skill whenever the user says "design a graphic", "create a visual", "make an image", "graphic for my post", "LinkedIn image", or wants any visual content to pair with a LinkedIn post. Also trigger when the user finishes writing a post and wants a matching graphic.★ 3.7k GitHub starsSkillGenerate 6 clickbait-style LinkedIn hook variations for anyHook generatorcharlie947/social-media-skills · by charlie947Generate 6 clickbait-style LinkedIn hook variations for any topic. Two-line hooks built on the formula: a 40-char opening line, a 40-char bold contrast line. Uses supplied numbers and genuine first-person experience when available. Use this skill whenever the user says "write me hooks", "hook ideas", "generate hooks", "I need a hook for a post about...", or pastes a topic and asks for openers. Fast output, no preamble.★ 3.7k GitHub stars