One-time bootstrap for Kokoro TTS, Telegram bot, and BotFather setup. TRIGGERS - tts setup, kokoro install, telegram bot setup, tts bootstrap, voice synthesis setup.
From tts-tg-syncnpx claudepluginhub terrylica/cc-skills --plugin tts-tg-syncThis skill is limited to using the following tools:
references/evolution-log.mdGuides Next.js Cache Components and Partial Prerendering (PPR) with cacheComponents enabled. Implements 'use cache', cacheLife(), cacheTag(), revalidateTag(), static/dynamic optimization, and cache debugging.
Migrates code, prompts, and API calls from Claude Sonnet 4.0/4.5 or Opus 4.1 to Opus 4.5, updating model strings on Anthropic, AWS, GCP, Azure platforms.
Optimizes cloud costs on AWS, Azure, GCP via rightsizing, tagging strategies, reserved instances, spot usage, and spending analysis. Use for expense reduction and governance.
Full-stack bootstrap: Kokoro TTS engine, Telegram bot, BotFather token, secrets, symlinks.
Self-Evolving Skill: This skill improves through use. If instructions are wrong, parameters drifted, or a workaround was needed — fix this file immediately, don't defer. Only update for real, reproducible issues.
| Component | Required | Check |
|---|---|---|
| Bun | Yes | bun --version |
| mise | Yes | mise --version |
| uv | Yes | uv --version |
| Python 3.13 | Yes | uv run --python 3.13 python --version |
| Homebrew | Yes | brew --version |
/usr/bin/env bash << 'PREFLIGHT_EOF'
echo "=== TTS Telegram Sync Preflight ==="
for cmd in bun mise uv brew; do
if command -v "$cmd" &>/dev/null; then
echo " [OK] $cmd: $($cmd --version 2>&1 | head -1)"
else
echo " [FAIL] $cmd not found"
fi
done
PREFLIGHT_EOF
Run the Kokoro TTS engine installer:
PLUGIN_DIR="${CLAUDE_PLUGIN_ROOT:-$HOME/.claude/plugins/marketplaces/cc-skills/plugins/tts-tg-sync}"
bash "$PLUGIN_DIR/scripts/kokoro-install.sh" --install
This creates a Python 3.13 venv at ~/.local/share/kokoro/, installs MLX-Audio deps, downloads the Kokoro-82M-bf16 MLX model, and verifies MLX Metal acceleration.
Guide the user through Telegram BotFather setup:
/newbot (or verify existing bot with /mybots)mkdir -p ~/.claude/.secrets
echo "BOT_TOKEN=<token>" > ~/.claude/.secrets/ccterrybot-telegram
echo "CHAT_ID=<chat_id>" >> ~/.claude/.secrets/ccterrybot-telegram
chmod 600 ~/.claude/.secrets/ccterrybot-telegram
Use AskUserQuestion to ask if user has an existing bot token or needs to create one.
Create symlinks in ~/.local/bin/ for all TTS shell scripts:
PLUGIN_DIR="${CLAUDE_PLUGIN_ROOT:-$HOME/.claude/plugins/marketplaces/cc-skills/plugins/tts-tg-sync}"
mkdir -p ~/.local/bin
for script in tts_kokoro.sh tts_kokoro_audition.sh tts_read_clipboard.sh tts_read_clipboard_wrapper.sh tts_speed_up.sh tts_speed_down.sh tts_speed_reset.sh; do
ln -sf "$PLUGIN_DIR/scripts/$script" ~/.local/bin/"$script"
done
# Test Kokoro health
PLUGIN_DIR="${CLAUDE_PLUGIN_ROOT:-$HOME/.claude/plugins/marketplaces/cc-skills/plugins/tts-tg-sync}"
bash "$PLUGIN_DIR/scripts/kokoro-install.sh" --health
# Test bot connectivity
source ~/.claude/.secrets/ccterrybot-telegram
curl -s "https://api.telegram.org/bot${BOT_TOKEN}/getMe" | jq .ok
| Issue | Cause | Solution |
|---|---|---|
| uv not found | Not installed | brew install uv |
| Not Apple Silicon | Intel Mac or Linux | Requires M1+ Mac (MLX Metal) |
| Model download slow | Large first download | ~400MB, wait for completion |
| Token invalid | Typo or expired | Re-verify with /mybots in BotFather |
| Symlinks broken | Plugin path changed | Re-run symlink creation step |
After this skill completes, reflect before closing the task:
Do NOT defer. The next invocation inherits whatever you leave behind.