Hermes skill
Automates downloading torrents using the local Gorrent daemon via the CLI wrapper.From its SKILL.md
npx -y skills add x-name15/gorrent --skill hermes-skillAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
One thing to look at
- 0 stars0 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.
What its file declares
Copied from the file, not written here
The file declares its own license as GPL-3.0. That is the author’s claim about this one file, and it is not the same thing as the license GitHub reports for the repository, which is listed with the other numbers below.
SKILL.md
5.1 KB, ~1.3k tokens by cl100k_base, as published. Nobody here has run it
Gorrent Automation Skill
You are an AI agent managing the user's media library via the gorrent daemon.
When to Use
Use this skill when the user asks you to download a movie, TV show, anime, software, or when they want to search for torrents, or when they ask to configure any Gorrent feature.
How to Use
Use the local gorrent CLI wrapper (gorrent.sh on macOS/Linux, gorrent.bat on Windows).
Search:
./gorrent.sh search [--source <name>] <query>
Download (auto-pick best result):
./gorrent.sh download --auto <query> [--source <name>] [--category <name>] [--callback <url>]
Download (specific magnet or infohash):
./gorrent.sh download <magnet_or_40char_hash> [--category <name>] [--callback <url>]
Check status:
./gorrent.sh status
Stop a torrent:
./gorrent.sh stop <hash>
Available --source values (restrict to one scraper):
yts, nyaa, piratebay, 1337x, eztv, subsplease, fitgirl, torrentscsv, rutracker, bittorrented
Available --category values: anything set in the user's category_dirs config (e.g. movies, tvshows, anime).
--callback <url>: Gorrent will POST {"event":"completed","name":"...","hash":"..."} to this URL when download finishes.
Advanced Config Automation (Zero-Touch User Experience)
If the user asks you to automate something, DO NOT ask them to edit files. YOU must directly edit the config.yaml file in the project root. Full schema:
daemon block
port(int): Daemon port. Default7800.log_level(string): Verbosity level. Options:minimal(default) ordebug.api_key(string): If set, all requests must includeX-API-Keyheader or?apikey=param.data_dir(string): Directory for internal state files. Default"./data".
scraper block
sources(array): Active scrapers. Valid:yts,nyaa,piratebay,1337x,eztv,subsplease,fitgirl,torrentscsv,rutracker,bittorrented.filters(map): e.g.language: spanish.dns(string): DNS resolver. e.g."cloudflare","google","8.8.8.8".rutracker_cookie(string): RuTrackerbb_sessioncookie (only needed to activate that source).
torrent block
download_dir(string): Root download path.auto_export_torrent(bool): Auto-saves.torrentfile alongside download.trackers(array): Extra UDP/HTTP trackers appended to every magnet.category_dirs(map): Map of category name → absolute path. e.g.movies: /downloads/movies.max_download_rate(int, KB/s): Download speed cap.0= unlimited.max_upload_rate(int, KB/s): Upload/seed speed cap.0= unlimited.auto_cleanup(bool): Defaultfalse. Enables P2P Garbage Collector.seed_ratio(float): GC drops torrent when ratio reaches this value (e.g.1.5).max_seed_days(int): GC drops torrent after seeding this many days.hardlink_dir(string): Optional. Directory for zero-byte hardlinks for Plex/Jellyfin. Must be on the same physical disk asdownload_dir.post_script(string): Optional. Path to bash script run on download completion. Env vars injected:GORRENT_HASH,GORRENT_NAME,GORRENT_PATH,GORRENT_CATEGORY.watch_dir(string): Optional. Drop.magnetor.txtfiles (containing a magnet URI) here → Gorrent auto-downloads them within 5 seconds and moves them towatch_dir/handled/. Leave empty (default) to disable.delete_files_on_stop(bool): Optional, defaultfalse. Whenauto_cleanupGC drops a torrent, also permanently deletes its files from disk. Default isfalse— files are always kept on disk for Plex/Jellyfin. Only set totrueif the user explicitly asks for disk space rotation.
rss block
interval_min(int): Polling interval in minutes.feeds(array): Each feed hasurl,category, andregex(array of case-insensitive patterns). Emptyregex= download everything.
CRITICAL RULES:
- Always execute the wrapper from the Gorrent directory.
- Never attempt to download
.torrentfiles or parse HTML tracker pages yourself. - Let the Gorrent daemon handle all scoring, peer connection, and dead-torrent protection.
- Seeding is good — never enable
auto_cleanupunless the user explicitly asks.
Resilience & State
Gorrent features a Self-Healing Boot architecture.
- State Persistence: Active torrents are automatically saved to state.json inside the download_dir. If Gorrent restarts, it silently reloads all torrents in the background, pausing or resuming them instantly. Do not attempt to manually re-add torrents upon boot.
- Crash Logging: Fatal engine panics are trapped and saved to crash-logs/crash.log in the working directory without terminating the daemon.
What ships with it
Read from the repository
Just SKILL.md. No reference files, no scripts.