hailneed MIT · public sources

00 hailneed suite · module 05 · demand signal

Public complaints,
verified revenue —
themes with links.

People write down exactly what hurts — on Hacker News, in GitHub Issues, in one-star App Store reviews. painradar reads those public sources plus TrustMRR's verified-revenue data and turns them into scored themes, a founder-fit ranking and a launch plan. A claim without a link does not go in the report.

01 Evidence

This is a real scan.
Every row is a link.

Abridged from a real run of --topic "llm api bill" on 2026-08-21, with no API keys set. Every row is public — nothing from this machine is in it. Long titles, links and column headers are trimmed here to fit; the counts are what the scraper printed.

radar raw evidence — markdown out
# Radar raw evidence — llm api bill — 2026-08-21

Source note: hackernews: 44 · github: 30

| Source     | Title                                        | Date       | Eng. | Int. | Link                                  |
|------------|----------------------------------------------|------------|------|------|---------------------------------------|
| hackernews | Codex on AWS bedrock bug causing 10x charges | 2026-08-21 | -·-  | 0.35 | news.ycombinator.com/item?id=49384653 |
| github     | Redundant calls, no cache — duplicate billing| 2026-08-09 | 3·2  | 1    | github.com/…/issues/18242             |
| github     | Quota exhausted in ~20 min; cache reads at 0 | 2026-08-16 | 3·7  | 0.35 | github.com/…/issues/42935             |
| github     | [Pro 20x] 7-day quota depletion on light use | 2026-08-13 | 2·3  | 0.35 | github.com/…/issues/38335             |

The intensity column comes from a pattern classifier, not a model — the patterns are in one file you can open, and --selftest proves them against 6 fixtures with the network off (6/6 on this machine, same day). A blocked source prints as blocked with its HTTP status — the report never hides a hole in the evidence.

02 Install

One marketplace.
Then one command.

claude code
# once
> /plugin marketplace add hailneed/plugins

# the demand radar
> /plugin install painradar@hailneed

# and try it
> /painradar:scan "organic traffic loss after AI Overviews"
  • Claude Code and Node.js 18 or newer.
  • No dependencies, no build step, no account. Two optional keys, both yours: GITHUB_TOKEN raises search limits, TRUSTMRR_API_KEY unlocks verified revenue.
  • Standalone works toonode scripts/radar.mjs --topic "llm api bill" --md
  • Provable offline--selftest runs the classifier against 6 fixtures without a single request.
Marketplace manifest

03 Commands

From complaint
to launch plan.

01

/painradar:scan <topic>

The complaint radar: 3–7 themes with a transparent Signal score, at least two linked items per theme, solution paths and content ideas. Blocked sources are reported as blocked, and thin evidence is called weak — never padded.

02

/painradar:fit

Which theme is worth building: pain × money proof (TrustMRR) × competition gap × your own persona from devpersona, if present × effort × platform risk. Every score points at evidence; without a TrustMRR key, revenue figures are marked unverified — never invented.

03

/painradar:launch [repo|idea]

One primary channel with stated reasons, posting rules for Reddit, Hacker News and Product Hunt, SEO comparison pages, a TrustMRR listing step, a 30-day calendar and three content briefs — all grounded in the radar evidence.

04 Trust

What goes out —
and what never does.

painradar is the one module in this suite that goes online. That is exactly why this section is precise about it.

  • It fetches public sources only — Hacker News via Algolia, GitHub Issues search, App Store review RSS. Every fetch is in radar.mjs, one file you can read.
  • Your side never leaves the machine. Your persona card, your repo and your chat history are read locally and sent nowhere — the only thing that goes out is the search queries you chose.
  • No usernames in output. Items keep title, link, date and counts; an author field is never written.
  • Reddit is off by default — licence and rate-limit risk. If you enable it, a 403/429 stops the run and the report says "blocked".
  • Failure stays visible. An unreachable source appears in the source note with its HTTP status; missing evidence is reported as weak signal, never backfilled.
  • Optional keys raise limits, nothing more. GITHUB_TOKEN for search quota, TRUSTMRR_API_KEY for verified revenue; without them the tool still runs and marks unverified figures as unverified.
  • MIT. LICENSE — no account, no signup, no telemetry.

05 Cloud

painradar Cloud
is in design.

The plugin stays free and local — that is a promise, not a phase. Cloud is the optional layer for people who want the radar waiting for them in the morning:

  • Scheduled daily scans — with history and charts: which themes are new, growing, fading.
  • Telegram / Slack digest — the morning radar delivered where you already read.
  • White-label reports — for agencies running the radar for their clients.

06 Family

One suite.
Five more modules.