opportunity-radar¶
Twice a day a free AI model reads public forum and news posts and sorts them into leads (someone who needs a board, firmware or a small batch built), product ideas (a need people keep repeating), funding (grants, newly funded hardware companies) and noise. Every Monday it writes a page here and sends the top five to ntfy.
Weekly pages: projects/opportunity-radar/<year>-w<week>.
How it works¶
- Code:
~/assistant/scripts/opportunity-radar.py(assistant PR #6). Schedule in ../map/objects/automation/schedules. - Feeds: Reddit subreddit RSS (search RSS gets 429; the two Reddit feeds run first and last, since back-to-back requests get 429, PR #7), HN Algolia, Stack Exchange EE, Lobsters, ESP32 / EEVblog / All About Circuits / Arduino forums, Hackaday, Kickstarter, Google News. LinkedIn and Upwork are skipped (their terms forbid it).
- Models:
nvidia/nemotron-3-super-120b-a12b:free, thenpoolside/laguna-s-2.1:free(re-check withask-model models --free; free ids come and go). Only public post text goes to them. On a 429 or outage the scan stops; the rest waits for the next run. - Contacts: only role addresses (info@, sales@ …) on the company's own website, found by visiting its home, contact and about pages. robots.txt is obeyed and each address is stored with the page it was found on.
opportunity-radar leadsprints them as CSV.
Decisions¶
- 2026-09-27: Nothing sends email. Cold outreach is a separate, later step. It needs CAN-SPAM (an unsubscribe link and the postal address), a volume limit and its own approval.
- 2026-09-27: No personal addresses scraped from forums, ever. Business role addresses only.
Gotchas¶
- The free tier sometimes returns 429 in a burst; the scan stops and resumes next run. The first live scan scored 240 posts and found the first contact (Voltair, info@ from its homepage).
- The scores are a first pass. Open the post before acting.
Open¶
- After two weekly pages, check whether the lead scores match reality, and tune
SYSTEMor the feed list in the script. - Find a working grants.gov / SBIR.gov feed (
api.simpler.grants.gov/v1/healthgave 404; sbir.gov API 404).
Log¶
- 2026-09-27: Built and live. Fable review found an SSRF via redirect plus 4 should-fixes; all fixed before merge.
- 2026-10-15: Scoring had been dead since ~2026-10-01 (34 scans, 0 scored): ling-3.0-flash-fin left the OpenRouter catalog and nemotron-3.5-lightning returns empty text, and the scan still exited 0 so cron-run never alerted. Fixed on assistant branch
radar-scoring-fix(6300c9d, not yet merged): new models, scan exits 1 when posts waited and none scored. Rescored the newest 204 posts; w42 page regenerated without ntfy. reddit-startups still 429 (Reddit throttles bot UAs; left alone).