Yandex SpeechKit for an AI agent: voice replies and voice message recognition
yandex-speechkit
A skill with two scripts: text to an .ogg voice message and voice to text through Yandex SpeechKit, with ten voices and three emotions
- 2 ★ on the repository
- Last commit
Extended access
Why this level
- Texts and audio are sent to an external Yandex service, and the key is stored on disk in plain text
- Synthesis and recognition are paid after the starter grant: a loop of agent replies spends the balance
Install
- Works in
- Services
In your terminal, with SkillFoxx CLI
npx skillfoxx add skills/yandex-speechkitDetects the agents on your machine, shows the access level and pins the version.
Other ways to install
Access and checks
How we reviewExtended accessThe tool runs code or makes network calls and only reads external data.
- Texts and audio are sent to an external Yandex service, and the key is stored on disk in plain text
- Synthesis and recognition are paid after the starter grant: a loop of agent replies spends the balance
This is third-party code. Review the repository files before installing.
What it does
The skill connects Yandex SpeechKit to the Hermes agent and works with OpenClaw. The tts.py script sends text to speech synthesis (tts.api.cloud.yandex.net/speech/v1/tts:synthesize) and saves a voice message as .ogg, while stt.py recognizes incoming audio files. There are ten voices (alena, filipp, ermil, jane, oksana and others) and three emotions: neutral, good and evil. Text longer than 250 characters is split by the skill because of the API limit. The key comes from the YANDEX_SPEECHKIT_API_KEY variable, credentials.json or the agent workspace. In Telegram a voiced reply goes out as a MEDIA: marker at the end of a normal message.
Who it is for. People running a Telegram agent on Hermes or OpenClaw who want it to reply with a Russian voice and understand voice messages.
Good fit when
- Subscribers send voice messages and the agent has to understand them and answer
- A reply should be voiced in a Russian voice with the right emotion, for example kind or neutral
- A long text must be split to fit the 250-character synthesis limit
- A Yandex key is already in the environment and you do not want another speech provider
Not a fit when
- You need telephony and calls: the author states the skill is pure, with no telephony
- The agent runs in Claude Code or Cursor: the skill is written for Hermes profiles and the MEDIA: marker in Telegram
- You need streaming synthesis or live recognition: the scripts work with finished files
Example request
Voice this reply with the alena voice and the good emotion and put the MEDIA: marker at the end of the messageLimitations
The skill is written for Hermes and OpenClaw with Telegram: in Claude Code or Cursor you port the commands yourself, and nothing was tested there. A Yandex AI Studio API key is required; the README mentions a 4000 ruble starter grant, after which synthesis and recognition are billed at Yandex rates. Synthesis text is limited to 250 characters per request and longer text is split. The repository is small: two scripts, two stars and the last commit in June 2026. The key sits in plain text in credentials.json, so the file should stay out of git.
How to disable. Delete the yandex-speechkit folder from the agent profile skills directory, then remove credentials.json and the YANDEX_SPEECHKIT_API_KEY variable, and revoke the key in the Yandex console.
FAQ
Which voices are available?
Ten: alena (the default), filipp, ermil, jane, oksana, omazh, zahar, marina, masha and tatyana; marina and masha are marked premium.
Where do I get the key?
At aistudio.yandex.ru: after registration an API key is created in the profile, and it is sent in the Authorization: Api-Key header.
How do I send a voice message to Telegram?
In a single message: the MEDIA: marker with the full path to the .ogg goes at the end of a normal reply. A separate send_message would duplicate it.
What about long texts?
The API accepts up to 250 characters per request, so the skill splits text into parts automatically.
Does the skill handle telephony?
No, it is a pure skill for voice messages and has no call support.
Discussion
No questions or reviews yet.
Related
All SpeechKit toolsA skill and scripts for transcribing audio through Yandex SpeechKit: audio preparation, Object Storage upload and asynchronous v3 recognition
yandex-stt: long recordings to text with SpeechKit
yandex-speechkit-talk-recognition
A Node.js command-line tool that turns long conversation recordings into text through Yandex SpeechKit asynchronous recognition
Four single-file MCP servers for YandexGPT, text recognition, SpeechKit speech synthesis and Yandex search
A skill collection for the Russian stack: GigaChat, YandexGPT, Yandex 360, Yandex Cloud, Metrika and marketplace orders
A set of MCP servers and skills for the OpenClaw assistant: YandexGPT, OCR, speech synthesis and image generation
Five cache-first shell skills for Direct, Metrika, Webmaster, Wordstat and Search API, with Claude choosing which one to run
README in short
The README covers features (TTS, STT, ten voices, three emotions, text auto-splitting, key from the environment), a five-step quick start, the one-message rule with the MEDIA: marker, a voice table and example calls of tts.py and stt.py.