Report privately through GitHub Security Advisories — the Security tab of this repository, then Report a vulnerability. Please do not open a public issue for a security problem.
You can expect an initial reply within a few days. This is a small project maintained in spare time, so please be patient with follow-ups.
The tool shells out to ffmpeg, ffprobe, whisper-cli and yt-dlp, and
passes user input (file paths, URLs, option values) to them. It also invokes
agent CLIs non-interactively with permission to write files in the working
directory. Problems worth reporting include:
- command or argument injection through a file path, URL or option value
- a path traversal that writes outside the intended vault directory
- an agent invocation that grants broader permissions than documented
(
acceptEditson Claude,workspace-writeon Codex,auto_editon Gemini)
--cookies-from-browser and --cookies hand yt-dlp a real session. A YouTube
cookie is your Google account: treat it as a password, not as configuration.
- The account carries the risk, not just the file. Cookies attach automated requests to your account rather than to an anonymous IP, and downloading is against YouTube's terms regardless — signed in, it is attributable to you. Suspensions after heavy use are reported often enough in the yt-dlp community to take seriously. Use a secondary account, not your main one.
- Prefer
--cookies-from-browser. It reads the browser's store for that one request and writes nothing. On macOS the browser will ask for Keychain access — that prompt is expected. - A
cookies.txtis a live credential on disk. It is git-ignored here, but it is still a file anyone with read access to that directory can use. Delete it when you are done, and never commit or share one. - Mind the agent.
--claude,--codexand--geminirun an agent with write permission in the working directory, so anything readable there is readable by it. That is one more reason not to leave acookies.txtbeside your vaults. - The cookies are passed to yt-dlp as arguments and never written to the vault,
the logs or
meta.json.
- Vulnerabilities in
ffmpeg,whisper.cpporyt-dlpthemselves — report those upstream. - The fact that the tool does not work around DRM or authentication. That is deliberate, and reports asking for it will be closed.
- Content processed by the tool staying on your machine is the design; there is
no server and no telemetry. The network is touched in exactly three places:
yt-dlpfetching a public video, the one-time Whisper model download, and the rendered HTML page loading its typefaces from Google Fonts — that last one at reading time, in the reader's browser, never while a video is processed.