MoneyPrinterTurbo Video Generator
harry0703/MoneyPrinterTurbo
Installs and runs MoneyPrinterTurbo to turn a topic or script into a finished short video with voice-over, subtitles, stock footage and music.
Auto-speak every Hermes response via AgentVibes TTS on a remote machine over SSH.
The automated check flagged lines worth reading first. See the safety section below.
$ npx skills add paulpreibisch/AgentVibes --skill hermes-agentvibes-hook -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install paulpreibisch/AgentVibes hermes-agentvibes-hook --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/paulpreibisch/AgentVibes.git skills-src && mkdir -p .claude/skills && cp -r skills-src/docs/hermes/skills/tts/hermes-agentvibes-hook .claude/skills/hermes-agentvibes-hook && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "hermes-agentvibes-hook" agent skill from https://github.com/paulpreibisch/AgentVibes/tree/master/docs/hermes/skills/tts/hermes-agentvibes-hook into .claude/skills/hermes-agentvibes-hook/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "hermes-agentvibes-hook", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/paulpreibisch/AgentVibes/tree/master/docs/hermes/skills/tts/hermes-agentvibes-hookType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add paulpreibisch/AgentVibes --skill hermes-agentvibes-hook -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install paulpreibisch/AgentVibes hermes-agentvibes-hook --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/paulpreibisch/AgentVibes.git skills-src && mkdir -p .agents/skills && cp -r skills-src/docs/hermes/skills/tts/hermes-agentvibes-hook .agents/skills/hermes-agentvibes-hook && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "hermes-agentvibes-hook" agent skill from https://github.com/paulpreibisch/AgentVibes/tree/master/docs/hermes/skills/tts/hermes-agentvibes-hook into .agents/skills/hermes-agentvibes-hook/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "hermes-agentvibes-hook", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add paulpreibisch/AgentVibes --skill hermes-agentvibes-hook -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install paulpreibisch/AgentVibes hermes-agentvibes-hook --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/paulpreibisch/AgentVibes.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/docs/hermes/skills/tts/hermes-agentvibes-hook .cursor/skills/hermes-agentvibes-hook && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "hermes-agentvibes-hook" agent skill from https://github.com/paulpreibisch/AgentVibes/tree/master/docs/hermes/skills/tts/hermes-agentvibes-hook into .cursor/skills/hermes-agentvibes-hook/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "hermes-agentvibes-hook", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/paulpreibisch/AgentVibes.git --path docs/hermes/skills/tts/hermes-agentvibes-hook--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add paulpreibisch/AgentVibes --skill hermes-agentvibes-hook -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install paulpreibisch/AgentVibes hermes-agentvibes-hook --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/paulpreibisch/AgentVibes.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/docs/hermes/skills/tts/hermes-agentvibes-hook .gemini/skills/hermes-agentvibes-hook && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "hermes-agentvibes-hook" agent skill from https://github.com/paulpreibisch/AgentVibes/tree/master/docs/hermes/skills/tts/hermes-agentvibes-hook into .gemini/skills/hermes-agentvibes-hook/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "hermes-agentvibes-hook", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install paulpreibisch/AgentVibes hermes-agentvibes-hookInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add paulpreibisch/AgentVibes --skill hermes-agentvibes-hook -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/paulpreibisch/AgentVibes.git skills-src && mkdir -p .github/skills && cp -r skills-src/docs/hermes/skills/tts/hermes-agentvibes-hook .github/skills/hermes-agentvibes-hook && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "hermes-agentvibes-hook" agent skill from https://github.com/paulpreibisch/AgentVibes/tree/master/docs/hermes/skills/tts/hermes-agentvibes-hook into .github/skills/hermes-agentvibes-hook/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "hermes-agentvibes-hook", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add paulpreibisch/AgentVibes --skill hermes-agentvibes-hook -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install paulpreibisch/AgentVibes hermes-agentvibes-hook --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/paulpreibisch/AgentVibes.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/docs/hermes/skills/tts/hermes-agentvibes-hook .opencode/skills/hermes-agentvibes-hook && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "hermes-agentvibes-hook" agent skill from https://github.com/paulpreibisch/AgentVibes/tree/master/docs/hermes/skills/tts/hermes-agentvibes-hook into .opencode/skills/hermes-agentvibes-hook/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "hermes-agentvibes-hook", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
hermes-agentvibes-hookAuto-speak every Hermes response via AgentVibes TTS on a remote machine over SSH.
Hermes Agentvibes Hook is an agent skill from paulpreibisch/AgentVibes. Auto-speak every Hermes response via AgentVibes TTS on a remote machine over SSH. Portable skill — works with any AgentVibes setup.
Its SKILL.md is about 2.3k tokens, which your agent loads only when the skill is triggered. The skill folder holds 2 other files (for example `HOOK.yaml` and `handler.py`).
It sits in Media & Creative, covering Text to speech and voice. The repository describes itself as: 🎭 TTS for Claude Code. The licence is Apache-2.0.
5 steps, taken from the step headings in SKILL.md.
Read from SKILL.md and the folder at commit f62c8ff. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
Ships script files (Python), which the agent can run.
Shell commands in SKILL.md call:
npxFrom the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md. Its commands use npx, which can reach the network depending on how they are called.
From URLs in SKILL.md, links to its own repository left out.
Names these keys or tokens, usually read from environment variables:
AGENTVIBES_SSH_KEYFrom names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Hermes Agentvibes Hook loads about 2.3k tokens when it runs. Until then it costs about 39 tokens; SKILL.md has 414 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found patterns that need a careful read before installing.
GENTVIBES_SSH_KEY = "/absolute/path/to/id_ed25519" # no tilde — subprocess won't expand itAutomated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.
The full file from paulpreibisch/AgentVibes at commit f62c8ff, republished under its Apache-2.0 licence (© paulpreibisch). 414 words, ~2,335 tokens.
.claude/skills/hermes-agentvibes-hook/SKILL.md (or your agent's skills folder). This skill also uses 2 other files; get the full folder from GitHub.Send every Hermes response as spoken audio to a remote machine via the AgentVibes SSH receiver.
Hermes (server/Docker)
└── agent:end event fires
└── hooks/agentvibes-tts/handler.py
└── strip markdown, truncate at word boundary
└── JSON payload → base64-encode
└── SSH → agentvibes-receiver@<host>:<port>
└── Remote machine queues & plays via Piper TTSnpx agentvibes installssh-keygen -t ed25519 -f /absolute/path/to/id_ed25519_agentvibes -N ""Use an absolute path — tilde (~) expansion does not work inside Python subprocess argument lists.
Register the public key on the target machine's agentvibes-receiver user.
Create <hermes_home>/hooks/agentvibes-tts/HOOK.yaml:
name: agentvibes-tts
description: Send agent responses to AgentVibes TTS remotely
events:
- agent:endCreate <hermes_home>/hooks/agentvibes-tts/handler.py — update the four config constants at the top:
"""
AgentVibes TTS Hook — fires on agent:end to speak the agent's response.
Sends the response via SSH to the AgentVibes receiver using the full JSON
payload format (supports voice, project, effects metadata).
"""
import asyncio
import base64
import json
import logging
import os
import re
import subprocess
import time
# ---------------------------------------------------------------------------
# Configuration
# ---------------------------------------------------------------------------
AGENTVIBES_SSH_KEY = "/absolute/path/to/id_ed25519" # no tilde — subprocess won't expand it
AGENTVIBES_HOST = "<target-ip-or-hostname>"
AGENTVIBES_PORT = "<receiver-port>"
AGENTVIBES_USER = "agentvibes-receiver"
AGENTVIBES_VOICE = "en_US-libritts-high::Leo-8"
AGENTVIBES_PROJECT = "hermes"
MAX_CONTENT_LEN = 200 # chars of spoken content (prefix NOT counted)
PREFIX = "Hermes here, "
_KNOWN_HOSTS = "/absolute/path/to/known_hosts" # persistent across restarts
_LOG_FILE = os.path.join(os.path.dirname(os.path.abspath(__file__)), "tts-hook.log")
# ---------------------------------------------------------------------------
# File logger — writes to tts-hook.log next to handler.py, never to stdout
# ---------------------------------------------------------------------------
_log = logging.getLogger("agentvibes-tts")
if not _log.handlers:
try:
_h = logging.FileHandler(_LOG_FILE, encoding="utf-8")
_h.setFormatter(logging.Formatter("%(asctime)s %(levelname)s %(message)s"))
_log.addHandler(_h)
except OSError:
_log.addHandler(logging.NullHandler())
_log.setLevel(logging.INFO)
# ---------------------------------------------------------------------------
# Rate limiting — prevent queue flooding on rapid consecutive turns
# ---------------------------------------------------------------------------
_last_sent: float = 0.0
_MIN_INTERVAL_S: float = 3.0
def _tts_speak(text: str) -> None:
"""Build JSON payload and send to AgentVibes receiver over SSH."""
global _last_sent
if not text or not text.strip():
return
now = time.monotonic()
if now - _last_sent < _MIN_INTERVAL_S:
_log.info("rate-limited: %.1fs since last send — skipping", now - _last_sent)
return
_last_sent = now
# Truncate at word boundary so the spoken text never cuts mid-syllable
full_text = PREFIX + text.strip()
max_len = len(PREFIX) + MAX_CONTENT_LEN
if len(full_text) > max_len:
truncated = full_text[:max_len].rsplit(" ", 1)[0]
full_text = truncated + "..."
payload = base64.b64encode(
json.dumps({
"text": full_text,
"voice": AGENTVIBES_VOICE,
"project": AGENTVIBES_PROJECT,
"provider": "piper",
"pretext": "", # prefix already prepended above
"effects": "",
"music": "",
"volume": "",
"speed": "",
}).encode()
).decode()
cmd = [
"ssh",
"-i", AGENTVIBES_SSH_KEY,
"-o", "ConnectTimeout=5",
# accept-new: trust the host key on first connection, reject changes
# (MITM protection without interactive prompts)
"-o", "StrictHostKeyChecking=accept-new",
"-o", f"UserKnownHostsFile={_KNOWN_HOSTS}",
"-o", "BatchMode=yes",
"-p", AGENTVIBES_PORT,
f"{AGENTVIBES_USER}@{AGENTVIBES_HOST}",
payload,
]
try:
result = subprocess.run(cmd, capture_output=True, timeout=15)
if result.returncode != 0:
stderr = result.stderr.decode(errors="replace").strip()
_log.warning("ssh exit %d: %s", result.returncode, stderr or "(no stderr)")
else:
stdout = result.stdout.decode(errors="replace").strip()
_log.info("queued OK: %s", stdout)
except subprocess.TimeoutExpired:
_log.warning("ssh timed out after 15s to %s:%s", AGENTVIBES_HOST, AGENTVIBES_PORT)
except Exception as exc:
_log.warning("ssh error: %s", exc)
async def handle(event_type: str, context: dict) -> None:
"""Async handler — only processes agent:end events."""
if event_type != "agent:end":
return
response = (context.get("response") or "").strip()
if not response:
return
response = _strip_markdown(response)
loop = asyncio.get_running_loop()
await loop.run_in_executor(None, _tts_speak, response)
def _strip_markdown(text: str) -> str:
"""Remove markdown artifacts that sound unnatural in TTS."""
# Fenced code blocks — always unlistenable
text = re.sub(r"```[\s\S]*?```", "", text)
# Inline code — unwrap
text = re.sub(r"`([^`]+)`", r"\1", text)
# Bold / italic markers
text = re.sub(r"\*{1,2}([^\*]+)\*{1,2}", r"\1", text)
# Links — keep label, drop URL
text = re.sub(r"\[([^\]]+)\]\([^\)]+\)", r"\1", text)
# Emoji — strip everywhere, not just line-start
text = re.sub(
r"[\U0001F300-\U0001F9FF"
r"\U00002600-\U000027FF"
r"\U0000FE00-\U0000FE0F"
r"•→↓↑]+",
"",
text,
)
text = re.sub(r"\s+", " ", text).strip()
return texthermes gateway restartCheck hooks/agentvibes-tts/tts-hook.log after the next agent turn. Every SSH call logs its result (exit code, receiver ACK, or error message).
| Constant | Description | Notes |
|---|---|---|
AGENTVIBES_SSH_KEY | Absolute path to SSH private key | No ~ — subprocess will not expand it |
AGENTVIBES_HOST | Hostname or IP of target machine | Tailscale IP recommended |
AGENTVIBES_PORT | SSH port of AgentVibes receiver | Set during npx agentvibes install |
AGENTVIBES_USER | SSH user on target machine | agentvibes-receiver |
AGENTVIBES_VOICE | Voice in voiceId::SpeakerName format | e.g. en_US-libritts-high::Leo-8 |
AGENTVIBES_PROJECT | Project tag shown in receiver log | hermes |
MAX_CONTENT_LEN | Max chars of spoken content | Prefix length NOT counted |
PREFIX | Spoken intro before each response | Hermes here, |
_KNOWN_HOSTS | Absolute path to persistent known_hosts | Required for accept-new to survive restarts |
_MIN_INTERVAL_S | Seconds between TTS calls | Prevents queue flooding on rapid turns |
event_type == "agent:end" — ignores all other hook eventsPREFIX, truncates at last word boundary before MAX_CONTENT_LEN chars, appends ...tts-hook.logStrictHostKeyChecking=accept-new + explicit UserKnownHostsFile protects against MITM after first connecttts-hook.log: Check HERMES_HOME env var so the hook file is found; check directory write permissionsagentvibes-receiver user_KNOWN_HOSTS file and reconnect oncetts-watcher.ps1) is running on the target machinetts-hook.log — SSH errors are now logged with full detailAgentVibes ships with an MCP server (npx -y -p agentvibes@beta agentvibes-mcp-server) with tools for voice selection, effects, background music, and mute/unmute. Install it in your Hermes MCP config to control AgentVibes with natural language commands. The MCP server must run on the target machine where speakers live.
© paulpreibisch, Apache-2.0. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
SKILL.md and 2 other files in docs/hermes/skills/tts/hermes-agentvibes-hook of paulpreibisch/AgentVibes.
Open the folder on GitHubat commit f62c8ff
Hermes Agentvibes Hook next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Hermes Agentvibes Hook this skillpaulpreibisch/AgentVibes | 155 | — | ~2.3k | Automated safety check: Warn | Apache-2.0 | |
| MoneyPrinterTurbo Video Generatorharry0703/MoneyPrinterTurbo | 129k | — | ~2.1k | Automated safety check: Warn | MIT | |
| HyperFrames Media Useheygen-com/hyperframes | 60k | — | ~2.4k | Automated safety check: Pass | Apache-2.0 | |
| Openspec OnboardSAP/e-mobility-charging-stations-simulator | 227 | 25 repos | ~3.5k | Automated safety check: Pass | MIT | |
| Blog AudioAgriciDaniel/claude-blog | 2.3k | 1 repos | ~2.2k | Automated safety check: Notes | MIT | |
| Musictadaspetra/loop | 296 | 2 repos | ~827 | Automated safety check: Pass | MIT |
harry0703/MoneyPrinterTurbo
Installs and runs MoneyPrinterTurbo to turn a topic or script into a finished short video with voice-over, subtitles, stock footage and music.
heygen-com/hyperframes
Finds, generates and edits media for HyperFrames video projects: music, sound effects, images, icons, logos, voiceovers, captions and color grades.
SAP/e-mobility-charging-stations-simulator
Guided onboarding for OpenSpec - walk through a complete workflow cycle with narration and real codebase work.
AgriciDaniel/claude-blog
Generate audio narration of blog posts using Google Gemini TTS.
tadaspetra/loop
Generate music using ElevenLabs Music API. An agent skill from tadaspetra/loop.
hoquanghai/Auto-Create-Video
Tạo video tin tức ngắn 9:16 (~60s) từ URL bài báo hoặc file .txt tiếng Việt.
paulpreibisch/AgentVibes
QA engineer for test automation and coverage. An agent skill from paulpreibisch/AgentVibes.
paulpreibisch/AgentVibes
Install AgentVibes TTS voice system for BMAD agents. An agent skill from paulpreibisch/AgentVibes.
paulpreibisch/AgentVibes
Scrum master for sprint planning and story preparation. An agent skill from paulpreibisch/AgentVibes.
paulpreibisch/AgentVibes
🎤 AgentVibes Voice Management - Manage your text-to-speech voices across multiple providers (Piper TTS, Piper, macOS Say).
paulpreibisch/AgentVibes
Send TTS text from Hermes to a Windows laptop or Android device via AgentVibes queue-based player over SSH
Categories
Auto-speak every Hermes response via AgentVibes TTS on a remote machine over SSH. Hermes Agentvibes Hook is an agent skill from paulpreibisch/AgentVibes. Auto-speak every Hermes response via AgentVibes TTS on a remote machine over SSH.
Hermes Agentvibes Hook fits situations like: tasks that involve Text to speech and voice.
Run `npx skills add paulpreibisch/AgentVibes --skill hermes-agentvibes-hook -a claude-code`. Or copy the skill folder (docs/hermes/skills/tts/hermes-agentvibes-hook in paulpreibisch/AgentVibes) into .claude/skills/hermes-agentvibes-hook in your project. Claude Code loads it when a task matches its description.
Run `npx skills add paulpreibisch/AgentVibes --skill hermes-agentvibes-hook -a codex`. Or copy the skill folder (docs/hermes/skills/tts/hermes-agentvibes-hook in paulpreibisch/AgentVibes) into .agents/skills/hermes-agentvibes-hook in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add paulpreibisch/AgentVibes --skill hermes-agentvibes-hook -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/hermes-agentvibes-hook, .gemini/skills/hermes-agentvibes-hook, .github/skills/hermes-agentvibes-hook and .opencode/skills/hermes-agentvibes-hook in your project.
Going by SKILL.md and its folder, Hermes Agentvibes Hook needs Python for the scripts in its folder, the command-line tools its instructions call (npx) and credentials named AGENTVIBES_SSH_KEY. Our summary lists: Python 3; Node.js; Docker; A credential in AGENTVIBES_SSH_KEY.
SKILL.md contains no URLs. Its commands use npx, which can reach the network depending on how they are called. This is read from the text; nothing was executed.
Our automated static check of SKILL.md flagged 1 warning(s): mentions a credentials file (ssh keys, cloud or package-manager tokens). Read the flagged lines before installing; the check is not a guarantee either way.
Hermes Agentvibes Hook is published under the Apache-2.0 licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 2.3k tokens (SKILL.md is roughly 9.3k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
Skills that share tags, products or a category with Hermes Agentvibes Hook: MoneyPrinterTurbo Video Generator (harry0703/MoneyPrinterTurbo, 129k stars), HyperFrames Media Use (heygen-com/hyperframes, 60k stars), Openspec Onboard (SAP/e-mobility-charging-stations-simulator, 227 stars) and Blog Audio (AgriciDaniel/claude-blog, 2.3k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
paulpreibisch (a GitHub user) maintains it in paulpreibisch/AgentVibes, which has 155 GitHub stars. The repository holds 6 skills in this directory. The repository was last updated on October 10, 2026.
Source: paulpreibisch/AgentVibes on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.