hermes - 💡(How to fix) Fix youtube-content skill: undeclared runtime dependency on youtube-transcript-api

Official PRs (…)
ON THIS PAGE

Recommended Tools

×6

Utilities matched from this issue’s tags and category — try them while you read without losing context.

GitHub issue graph ai analysis

Paste a GitHub issue URL. We fetch that issue, discover linked issues from bodies/comments/timeline, collect linked pull requests, and produce a structured English report.

The report is written in English Markdown for sharing and archival.

Helpful · Quick feedback

Loading…

Root Cause

Root cause

Fix Action

Fix / Workaround

Workaround

Code Example

uv pip install youtube-transcript-api --python <hermes-venv>/bin/python
RAW_BUFFERClick to expand / collapse

Hermes Agent version: v0.12.0

Summary

The bundled youtube-content skill imports youtube-transcript-api at runtime, but the package is not declared in pyproject.toml. Fresh installs of Hermes Agent fail at first invocation of the skill with ModuleNotFoundError: No module named 'youtube_transcript_api'.

Reproduction

  1. Install Hermes Agent v0.12.0 into a clean uv-managed venv (default path).
  2. Trigger the youtube-content skill against any YouTube video ID.
  3. Skill fails on import before it can fetch a transcript.

Root cause

skills/media/youtube-content/scripts/fetch_transcript.py (lines 57-67) constructs a YouTubeTranscriptApi() instance and calls .fetch(video_id, languages=...) — the v1.x API surface. The library is not listed in pyproject.toml dependencies, so uv sync does not install it.

Workaround

Install directly into the venv:

uv pip install youtube-transcript-api --python <hermes-venv>/bin/python

This pulls youtube-transcript-api==1.2.4 plus defusedxml==0.7.1 as a transitive dependency. Note that any subsequent uv sync will remove these packages and re-break the skill.

Suggested fix

Add youtube-transcript-api>=1.2.0 to pyproject.toml dependencies. Worth confirming whether defusedxml is already a direct or transitive Hermes dependency before adding it explicitly — it may already be pulled in via another path.

Environment

  • Hermes Agent v0.12.0
  • Python venv managed by uv
  • Linux (Ubuntu, Beelink SER10 MAX)

Vote matrix · Quick signals

Works
Did the solution work? Tap to confirm.
Easy Fix
Was it a quick fix?
Time Saver
Did it save you time?
Blocking
Was it severely blocking?
Common Issue
Are others likely hitting this too?
Flaky / Intermittent
Is it intermittent?
Verified / Reproducible
Can you reproduce it reliably?
Loading…

Still need to ship something?

×6

Another batch ranked right after the header list — different links, same matching logic.

Back to top recommendations

TRENDING

hermes - 💡(How to fix) Fix youtube-content skill: undeclared runtime dependency on youtube-transcript-api