{"slug": "i-built-a-free-ai-pain-point-miner", "title": "I Built a Free AI Pain Point Miner", "summary": "A 25-year enterprise IT veteran released a free open-source AI tool called Pain Point Miner that scans YouTube channel transcripts and returns a ranked list of audience questions and pain points, using Anthropic's Claude Haiku model for extraction. The tool, which costs a few cents per run and requires users to provide their own transcript files, aggregates results into a report showing the most frequently mentioned questions and pain points across videos. The creator noted that one of three test transcripts failed due to a token budget issue with Haiku, a known limitation not yet fixed.", "body_md": "Point this at a YouTube channel's transcripts and it hands back a ranked list of what that audience actually asks and struggles with — no manual comment-scrolling, no guessing.\n\nI spent 25 years in enterprise IT before I ever touched a line of Claude Code. Reading a room full of frustrated people and finding the one real question under the noise isn't a new skill AI gave me — it's the same skill I used for two decades in ops, just pointed at a different kind of ticket queue. This tool automates the scanning part. It doesn't replace the judgment part.\n\n`indexer.py`\n\nscans a folder of transcript`.md`\n\nfiles and builds a lightweight index.`pain_point_extractor.py`\n\nreads that index, sends each transcript through Claude (Haiku) to pull out questions, pain points, and desired outcomes, then aggregates everything into one ranked report.\n\nOutput looks like this:\n\n```\n## Top Questions (Most Asked)\n1. How do I rebuild my processes around what AI makes possible...? — mentioned in 4 video(s)\n\n## Top Pain Points (Most Expressed)\n1. Existing business models built on inefficiencies... — mentioned in 6 video(s)\n```\n\nIt doesn't download transcripts for you, it doesn't touch Reddit or any other source, and it doesn't publish anything. Point it at `.md`\n\ntranscript files you already have. Nothing else.\n\n```\npain-point-miner/\n├── indexer.py                       # scans transcripts/, builds the index\n├── pain_point_extractor.py          # two-pass Claude extraction + aggregation\n├── README.md\n├── build-it-yourself-prompts.md     # rebuild this with your own AI, 3-phase prompt\n├── devto-announcement.md\n├── transcripts/                     # your own .md files go here (not included)\n│   └── <group-name>/\n│       └── <channel-name>/\n│           └── *.md\n└── knowledge_base/\n    ├── index.json                   # generated by indexer.py\n    └── reports/\n        └── pain_points_<date>_<group>.md   # generated by the extractor\n```\n\n- Clone this folder.\n`pip install anthropic`\n\n- Get an Anthropic API key:\n[https://console.anthropic.com/settings/keys](https://console.anthropic.com/settings/keys) - Set it as an environment variable, or drop a\n`.env`\n\nfile in this folder:\n\n```\nANTHROPIC_API_KEY=your_key_here\n```\n\n- Put your own transcripts in\n`transcripts/<group-name>/<channel-name>/*.md`\n\n, matching the structure above. Each file needs a plain text header (title, channel, date) followed by the transcript body — no sample transcripts are included in this repo (the ones used to test it were someone else's copyrighted video content, not fit to redistribute).\n\n``` python\npython -c \"from indexer import build_index; build_index(verbose=True)\"\npython -c \"from pain_point_extractor import run_extractor; run_extractor(group='<group-name>')\"\n```\n\nCost: Haiku, a few cents per run for a handful of files. You're paying Anthropic directly for your own usage — nothing routes through me.\n\nFed it three real AI/tech transcripts as a first test. Two extracted cleanly; one failed with a truncated-JSON error because Haiku ran out of the token budget mid-response. Known limitation, not fixed yet — if you hit it, either raise `max_tokens`\n\nin `_pass1_extract()`\n\nor just accept the occasional skip; the aggregation step still runs fine on whatever succeeded.\n\nFree guide for IT professionals figuring out what AI can't replace: [https://rskiles.com/the-riddle-of-steel](https://rskiles.com/the-riddle-of-steel)", "url": "https://wpnews.pro/news/i-built-a-free-ai-pain-point-miner", "canonical_source": "https://github.com/joatsaint/pain-point-miner", "published_at": "2026-07-29 01:45:40+00:00", "updated_at": "2026-07-29 02:22:45.665403+00:00", "lang": "en", "topics": ["artificial-intelligence", "ai-tools", "large-language-models", "developer-tools"], "entities": ["Anthropic", "Claude Haiku", "Pain Point Miner"], "alternates": {"html": "https://wpnews.pro/news/i-built-a-free-ai-pain-point-miner", "markdown": "https://wpnews.pro/news/i-built-a-free-ai-pain-point-miner.md", "text": "https://wpnews.pro/news/i-built-a-free-ai-pain-point-miner.txt", "jsonld": "https://wpnews.pro/news/i-built-a-free-ai-pain-point-miner.jsonld"}}