Multilingual TTS via Typecast CLI with emotion control. Plays audio aloud or saves to file.
Security Analysis
high confidenceThe skill's requirements and instructions are consistent with a CLI TTS integration: it needs the 'cast' binary and a TYPECAST_API_KEY and otherwise stays within expected scope.
Name/description (Typecast TTS) match the declared requirement for the 'cast' binary and a TYPECAST_API_KEY; requested binaries and env vars are appropriate for a CLI TTS client.
SKILL.md only instructs use of the 'cast' CLI, its flags, config file (~/.typecast/config.yaml), and TYPECAST_* env vars; examples that read local files or pipe from curl are user-driven and expected for a CLI tool.
Install uses a Homebrew formula from the neosapience/tap tap which is reasonable for a third-party CLI but slightly higher risk than an official core formula — you should review the tap/formula source before installing.
Only TYPECAST_API_KEY is required (declared as primaryEnv). Additional TYPECAST_* variables are documented as optional CLI/config overrides. Requesting a single API key is proportionate for a cloud TTS client; note saved credentials reside in ~/.typecast/config.yaml if 'cast login' is used.
Skill is not always-enabled and does not request elevated agent/system privileges. It relies on an external binary and standard per-user config file — no system-wide modifications are indicated.
Guidance
This appears to be a straightforward wrapper for the Typecast CLI. Before installing, verify the Homebrew tap/formula (neosapience/tap) to ensure it comes from the official vendor, and only provide a TYPECAST_API_KEY you trust (or a scoped key). Be aware the CLI may store the key in ~/.typecast/config.yaml if you use 'cast login'. If you want extra caution, inspect the brew formula source or install the 'cast' binary manually from the vendor's official release page. Autonomous agent invocation is allowed by default — consider whether you want the agent to call this skill without your confirmation.
Latest Release
v1.0.2
# Changelog ## 1.0.2 (2026-04-03) ### Added - `cast voices pick` — interactive voice picker with keyboard controls (P/E/S/C/Enter/Esc) - `cast voices tournament` — head-to-head voice selection with `--size` option - `cast voices random` — random voice selection - `cast logout` — remove saved credentials - `cast config unset <key>` — remove a config setting - Voice filtering: `--age`, `--use-case` options for `voices list` and `voices tournament` - Use-case list: Announcer, Anime, Audiobook, Conversational, Documentary, E-learning, Rapper, Game, Tiktok/Reels, News, Podcast, Voicemail, Ads - `--language` flag in key flags table (ISO 639-3, auto-detected) - `--seed` flag for reproducible output - `--prev-text` / `--next-text` context flags for smart emotion - Model specs: ssfm-v30 (37 langs, 7 presets + smart), ssfm-v21 (27 langs, 4 presets) - Emotion intensity range documented (0.0–2.0) - Config file location: `~/.typecast/config.yaml` - Config priority: CLI flags > env vars > config file > defaults - Pipe input recipes (`echo ... | cast`, `curl ... | cast`) - Multilingual and reproducible output recipes ### Changed - `--voice-id` default value explicitly documented (`tc_60e5426de8b95f1d3000d7b5`) - `--model` description expanded with language/emotion counts per model - `cast login` now supports interactive prompt (no args) in addition to `cast login <api_key>` ## 0.1.0 (initial) - Basic TTS: `cast "text"`, `--out`, `--format` - Voice management: `cast voices list`, `cast voices get` - Emotion: `--emotion smart/preset`, `--emotion-preset`, `--emotion-intensity` - Key flags: `--voice-id`, `--model`, `--tempo`, `--pitch`, `--volume` - Auth: `cast login`, `cast config list/set` - Environment variables (TYPECAST_ prefix)
Popular Skills
Published by @jaebong-human on ClawHub