Skip to content
Productivity
Skill

/pulse

Community-pulse research on any topic — "what are people saying about X right now." Fans out parallel sub-agents across web search, Hacker News, Reddit, and GitHub; ranks findings by real engagement (points/upvotes/stars/comments); flags rumors; and writes a cited brief to chat

From plugin
skillhub
921 skills

Claude Code

$ npx -y skills add duthaho/skillhub --skill pulse --agent claude-code

SKILL.md

pulse.SKILL.md
name: pulse
description: >-
  Community-pulse research on any topic — "what are people saying about X right
  now." Fans out parallel sub-agents across web search, Hacker News, Reddit, and
  GitHub; ranks findings by real engagement (points/upvotes/stars/comments);
  flags rumors; and writes a cited brief to chat plus saved .md and .html files.
  Use when the user wants the current community conversation / recent buzz /
  sentiment / "last 30 days" view on a person, product, project, or concept —
  e.g. "/pulse <topic>", "what's the buzz on X", "what are people saying about
  X lately", "research recent discussion on X". For exhaustive, adversarially
  fact-checked web reports, prefer the deep-research skill instead.

pulse — community-pulse research

`/pulse <topic> [window/flags in plain language]`

Answer one question: **what is the community actually saying about this topic right now, and what's resonating?** You ground every claim in a real source and rank by real engagement — not by what a search engine's editors surfaced.

Inputs

  • **Topic** (required): a person, product/company, project/repo, or concept/event.
  • **Window** (optional, plain language): default **last 30 days**. Honor overrides

like "last week", "past 6 months", "this year". Record the resolved window.

  • Any other plain-language steering ("focus on Reddit", "ELI5", "just the drama").

Step 0 — Resolve scope (ask only if genuinely ambiguous)

Run immediately for clear topics. Ask **1–2 quick questions only if**:

  • the name maps to multiple plausible entities (e.g. a common name, an ambiguous

product), **or**

  • there's no obvious angle and the result would likely research the wrong thing.

Otherwise proceed and state your assumptions in the brief header.

**Auto-detect the topic type** and weight sources accordingly:

| Detected type | Source emphasis | | -------------------- | --------------------------------------------------- | | Person (dev/tech) | GitHub (velocity) + Hacker News + web + Reddit | | Person (non-tech) | Web + Reddit (skip/deprioritize GitHub) | | Product / company | Reddit + web + Hacker News (GitHub if it's a tool) | | Project / repo / tool| GitHub + Hacker News + Reddit + web | | Concept / event | Web + Hacker News + Reddit (skip GitHub) |

Do light **entity resolution** first when useful (e.g. the canonical subreddit, the GitHub `owner/repo` or username, the official site) so sub-agents search the right handles rather than guessing.

Step 1 — Fan out: parallel source sub-agents

Spawn the relevant source sub-agents **concurrently** (one message, multiple `Agent` calls). Skip sources the topic type deprioritizes. Give each the topic, resolved entities, and the time window. Each sub-agent must return **structured findings**: for every item — `title`, `url`, `source`, `engagement` (the raw metric + its kind), `date`, and a 1–2 sentence `snippet`. Then it deepens its **top 2–3** items (below). Each gathers ~8–10 candidates before deepening.

Use `subagent_type: "Explore"` (read-only, fast) for fetch-heavy sources.

**Effort scaling:** match the fan-out to the ask. A niche topic or an explicit "quick check" needs only the 2 best-matched sources from the table; the full fan-out is for broad or clearly hot topics. **Lossless hand-off:** if a sub-agent's deepened findings run long (many quotes/threads), have it write the full extracts to `out/pulse/.work/<source>.md` and return just its ranked summary — read the files at synthesis instead of losing detail in the relay.

Web sub-agent

  • Use `WebSearch` with several query variations (topic + "news"/"review"/"discussion"
  • recency terms). Prefer results inside the window.
  • **Authority over SEO:** prefer primary sources (official posts, the actual

thread/repo, named practitioners) over SEO-optimized aggregators and listicle farms. A claim that appears *only* on low-quality aggregator sites is low-trust — mark it accordingly.

  • Engagement proxy: publication prominence + how often a story recurs across results.
  • Deepen top 2–3: `WebFetch` the article and extract the core claim + any quotes.

Hacker News sub-agent (free Algolia API — most reliable signal)

  • Search: `WebFetch` →

`https://hn.algolia.com/api/v1/search?query=<TOPIC>&tags=story&numericFilters=created_at_i>UNIX_START` (compute `UNIX_START` with a real shell command — e.g. `date -d '30 days ago' +%s` — never guess the timestamp; for relevance over recency use `/search` instead of `/search_by_date`).

  • `engagement` = `points` and `num_comments`.
  • Deepen top 2–3: fetch `https://hn.algolia.com/api/v1/items/<objectID>` and pull the

highest-signal top-level comments (the actual takes).

Reddit sub-agent (best-effort, keyless)

  • Try `WebFetch` on public JSON:

`https://www.reddit.com/search.json?q=<TOPIC>&sort=top&t=month` (map `t` to the window: `week`/`month`/`year`), and/or `https://www.reddit.com/r/<SUB>/search.json?...&restrict_sr=1`.

  • `engagement` = `ups` (upvotes) and `num_comments`.
  • Deepen top 2–3: fetch the thread JSON (`<permalink>.json`) and pull top comments.
  • **Fallback chain on 403/empty:** first retry the same JSON paths on

`old.reddit.com` (often served when `www` is blocked); if that also fails, use `WebSearch` for `site:reddit.com <topic>` and `WebFetch` the threads. **Note in the brief that Reddit was reached via fallback.**

GitHub sub-agent (keyless REST, 60 req/hr)

  • Repo/tool topic: `https://api.github.com/search/repositories?q=<TOPIC>&sort=stars`,

then for the chosen repo pull recent `commits`, `releases`, and open/closed PR counts to gauge shipping velocity.

  • Person topic: resolve the username, then `users/<u>` + recent `users/<u>/events`

(public) to summarize what they're shipping.

  • `engagement` = stars, recent commit/PR/release cadence.

If a source returns nothing usable after its fallback, re

Read more
@duthaho
Ships withskillhub

Give Claude Code a memory and make it cite its sources — skills for research, daily work, and shipping code. They started as prompts I kept retyping, so I wrote each one down once. Keyless: no API keys, no signups.

Stars on GitHub

Momentum

stars in total
9
Star history of duthaho/skillhub on GitHub, a chart by star-history.com

Other skills on skillhub.

archdeck

archdeck

Animated explainer slides for programming videos — turns one technical problem (backend, database, system design, frontend,…

@duthaho@duthahoInstall Skill
autopilot

autopilot

The whole coding loop on one deliberate yes: map, spec, critic-hardened plan, GitHub issues, parallel worktree implementers,…

@duthaho@duthahoInstall Skill
blueprint

blueprint

Human-facing documentation, architecture docs, and mermaid diagrams for a codebase, a module, or a feature — "draw me the…

@duthaho@duthahoInstall Skill
bugfix

bugfix

Lightweight bug-fixing loop — reproduce → root-cause → fix test-first → verify — deliberately separate from the heavyweight…

@duthaho@duthahoInstall Skill
cachewise

cachewise

Prompt-cache economics forensics — why your Claude Code tokens burn so fast, with the numbers to prove it. Parses local ~/.claude…

@duthaho@duthahoInstall Skill
daybrief

daybrief

Morning work briefing — "what does my day look like, in one scan?" Gathers today's calendar and emails needing attention (via…

@duthaho@duthahoInstall Skill

More skills from other plugins.

i-have-adhd

i-have-adhd

Shape output for a reader with ADHD: lead with the next action, number multi-step work, restate state across turns, suppress…

@ayghri@ayghriInstall Skill
ab-test-analysis

ab-test-analysis

Analyze A/B test results with statistical significance, sample size validation, confidence intervals, and ship/extend/stop…

@phuryn@phurynInstall Skill
distilly

distilly

Set up the owner profile so a personal agent knows who it works for (first-run setup, \"get to know me\"), or distill colleague,…

Questions about pulse.

Which coding agents can use pulse?
pulse installs in Claude Code, Codex, Cursor, Gemini CLI, GitHub Copilot, OpenCode and Windsurf with the skills CLI, using each agent's flag shown on this page. Flowy's auto-invocation, which fires a skill when your prompt matches, runs in Claude Code only.