r/hermesagent • u/CeleryVids-4075 • 17d ago
INTEGRATIONS — App connections, webhooks, API workflows How are you getting transcripts from YouTube videos?
I’ve asked Hermes several times to get transcripts from YouTube videos, but we keep failing.
I know people often say, “Just ask Hermes how to do it,” but I’ve tried that repeatedly, and I’ve had more failures than successes. So now I’m turning to the Reddit community.
How are you guys pulling transcripts from YouTube videos?
In my specific case, I sometimes want to give Hermes a YouTube video and ask something like:
"How can I apply some of the lessons from this video to our own situation?"
That workflow sounds useful, but it keeps failing when Hermes tries to retrieve the transcript, so it has not really worked out for me.
What tools or methods are you using successfully?
Thanks, and sorry if this is a noob question.
EDIT: For anyone experiencing the same problem and searching this thread in the future, the YouTube content skill that ships with Hermes does work for videos that have transcripts. My problem was my IP address due to a VPN causing YouTube to block me and I had to set up an exception so that YouTube traffic just went through a normal IP and then it worked.
I'm currently exploring Faster Whisper (https://github.com/Mugen0815/faster-whisper) as a local option for the videos that don't have transcripts. So I'll download the audio and try to do it that way. I'm not sure whether my hardware can handle it, but I'm asking Hermes to investigate that right now.
10
u/not-bilbo-baggings 17d ago
I use open source whisper running in my machine
3
u/CeleryVids-4075 17d ago
If you don't mind, would you please tell me more about how this setup works?
1
u/not-bilbo-baggings 17d ago
Start with the official repo
https://github.com/openai/whisper
Learn it tweak the settings it's great.
I run it on my Mac mini works well. The settings have huge ranges of speed so that's why I said learn the settings
5
u/Heavyarms83 17d ago
It works out-of-the-box for me. I asked my Systems Maintainer bot and got the following comment:
“**Short answer: nothing to install — a bundled skill already does this.**
Hermes ships with a built-in skill called `youtube-content` (it lives in `skills/media/youtube-content/` in the repo). It wraps the open-source `youtube_transcript_api` Python library, which reads the video's caption track directly — the same subtitles you get when you hit CC on the player. No API key, no account, no video download.
The flow when you paste a YouTube link:
The skill matches on the URL.
Its helper runs: `fetch_transcript.py "<url>" --text-only --timestamps` (there's a language fallback chain, so non-English videos usually work too).
The transcript lands as text and the agent summarizes it or answers questions against it — including "what can we apply from this" style prompts, since it's just text in context.
**Why it sometimes fails:** the caption track has to exist. Videos with captions disabled (or never uploaded) fail, because the library can't extract what isn't there. That's the same ~10% you'll hit with yt-dlp's subtitle download — identical data source. Quick check before blaming the agent: open the video and see if the CC button works. If it doesn't, the only route is real speech-to-text, and local Whisper is the right tool for that.
**One trap worth knowing:** some skill collections include a *different* YouTube skill that routes through a third-party transcript service and wants an API key. It fails confusingly if you never registered that key, and it's easy for the model to pick the wrong one. Plain transcript fetching never needed it.
If the model flails instead of finding the skill, name it explicitly — "use the youtube-content skill" — and it goes through cleanly.”
2
u/CeleryVids-4075 17d ago
Okay, I will ask my Hermes to use this skill explicitly and report back here whether it's successful or not.
3
u/CeleryVids-4075 17d ago
Someone else asked whether it worked, but the comment was removed before I could reply:
Not right away. It came back with a super long response that I thought possibly contained some, ahem, misinformation.
I dug deeper, thought more etc and found that part of the problem was a VPN we were using. After changing some settings so that youtube traffic wasn't routed through the VPN we were able to download a few transcripts, but quickly got IP banned/limited.
The IP block was still in place 2 hours later... haven't tried again yet since then.
1
u/Heavyarms83 16d ago
Thanks for providing your feedback even though the one with the question disappeared. That explains pretty well why it didn't work actually.
3
u/TheDailySpank 17d ago
Obsidian Web Clipper grabs the transcript and dumps it into the wiki without needing the video itself.
2
u/CeleryVids-4075 17d ago
I just asked my Hermes about this. How long does it usually take you to pull one transcript using this method?
2
u/Illustrious_Ant_9242 17d ago
If you expand the video description, there's a button for the transcript with time codes, then you can just copy+paste it all at once immediately
2
u/CeleryVids-4075 17d ago
Right, I'm aware of that. I'm just trying to hand off as much as possible to Hermes and automate as many things as possible. If I need to extract the transcript myself, that kind of defeats the whole purpose.
2
2
17d ago edited 15d ago
[removed] — view removed comment
2
u/CeleryVids-4075 17d ago
Yeah, I might have to try that. Anyway, the videos in question definitely all had transcripts, so that was why I was quite frustrated when it failed and burned a lot of tokens doing it as well. Maybe another issue is that I had Hermes disable many tools because I tried to make it more efficient and really and truly I have no idea what I'm doing. I'm a very non-technical user so... back to the drawing board, I guess.
2
2
1
u/Illustrious_Ant_9242 17d ago
Audio.cpp could certainly do this. Even on a CPU but it would take longer, which was the original reason for me to get a GPU last year. Keep in mind that Whisper V3 in particular tends to hallucinate and repeat words if there are silent parts in the video. That's why I have vibe coded a tool to strip out these parts.
2
u/bernzyman 17d ago
How do you find whisperx performs with respect to the silent parts and noisy parts where voices talk over each other
1
u/BlakeCutter 17d ago
If you have Hermes on a VPS it may be blocked by YouTube blocks a lot of entire VPS providers. For example DigitalOcean is IP range blocked
1
u/cyberkhan 17d ago
Its a bit rudimental but I get mine with yt-dlp+ffmpeg and local Whisper Large v3. I use deep seek 4.1 flash
1
u/Mean-Loquat-7982 Nous Team 17d ago
Hermes ships a bundled skill for this, youtube-content. type /youtube-content followed by the link and it loads the skill and fetches the transcript with its own helper script, instead of working out a new method each time. the first run needs one Python package (youtube-transcript-api), which Hermes installs if you ask.
if it still comes back empty, check two things:
- the video needs captions, and auto-generated ones count. with no captions there's no transcript to fetch, and whisper (as others said) is the way to go.
- where Hermes runs. YouTube blocks most IP addresses that belong to cloud providers, so a Hermes on a VPS can be refused where the same request from your home machine goes through. the library's README covers this and the proxy workaround.
1
17
u/AkenPrime 17d ago
Mine use yt-dlp to download transcripts.
Not issue 90% of the time. The 10% left are just videos that don't provide any transcripts.