omnivoice

GitHub

提供本地离线语音合成与识别能力,通过调用 localhost 上的 VoiceStudio API 实现文本转语音及音频转录,支持克隆声音,无需 API Key。

skills/omnivoice/SKILL.md debpalash/VoiceStudio

Trigger Scenarios

用户要求生成语音或朗读文本 用户要求转录音频文件 用户提到克隆声音或 narrate

Install

npx skills add debpalash/VoiceStudio --skill omnivoice -g -y
More Options

Use without installing

npx skills use debpalash/VoiceStudio@omnivoice

指定 Agent (Claude Code)

npx skills add debpalash/VoiceStudio --skill omnivoice -a claude-code -g -y

安装 repo 全部 skill

npx skills add debpalash/VoiceStudio --all -g -y

预览 repo 内 skill

npx skills add debpalash/VoiceStudio --list

SKILL.md

Frontmatter
{
    "name": "omnivoice",
    "description": "Speak and transcribe through the user's local VoiceStudio — free, offline, no API key. Text-to-speech (including the user's cloned voices) and speech-to-text via the OpenAI-compatible API at localhost:3900."
}

VoiceStudio — local TTS & STT

The user runs VoiceStudio, a fully-local voice app exposing an OpenAI-compatible audio API at http://localhost:3900/v1. Use it whenever the user asks to generate speech, narrate text, clone a voice, or transcribe audio — it costs nothing, works offline, and their audio never leaves the machine.

Before the first call

Check the backend is up:

curl -sf http://localhost:3900/health

If it fails, tell the user to launch VoiceStudio (or bun run desktop-prod from a source checkout) — don't fall back to a cloud API without asking; local-first is why they installed it.

Text-to-speech

curl -s http://localhost:3900/v1/audio/speech \
  -H "Content-Type: application/json" \
  -d '{"model": "tts-1", "voice": "alloy", "input": "TEXT HERE", "response_format": "wav"}' \
  --output speech.wav
  • model: tts-1 or tts-1-hd — both map to the user's active TTS engine.
  • voice: OpenAI names (alloy, echo, nova, …) work, but the real power is the user's own cloned voice-profile IDs — discover them first (below) and prefer a named clone when the user says "my voice" / "the narrator voice" / a profile by name.
  • response_format: wav, mp3, flac, opus, or pcm.
  • Long texts are fine — the engine chunks at sentence boundaries internally.

Discover the user's voices

curl -s http://localhost:3900/v1/audio/voices

Lists every cloned/designed voice profile (id + name) and the installed engines. Use a profile's id as the voice value in /speech.

Speech-to-text

curl -s http://localhost:3900/v1/audio/transcriptions \
  -F file=@clip.wav -F model=whisper-1 -F response_format=json
  • model: whisper-1 maps to the active ASR engine (WhisperX by default; the user picks in Model Catalogue → Engines).
  • response_format: json, text, verbose_json (per-segment timestamps), srt, or vtt — use srt/vtt directly when the user wants subtitles.

Python (openai SDK)

from openai import OpenAI
client = OpenAI(base_url="http://localhost:3900/v1", api_key="none")  # any string; nothing checks it

audio = client.audio.speech.create(model="tts-1", voice="alloy", input="Hello!", response_format="wav")
text = client.audio.transcriptions.create(model="whisper-1", file=open("clip.wav", "rb")).text

Notes

  • No API key, no rate limits, no billing — it's the user's own hardware. First synthesis after a cold start may take longer (model loading); subsequent calls are fast.
  • Anything beyond speech/transcription (video dubbing, batch jobs, voice design, audiobooks) lives in the full REST API — the interactive reference is embedded in the app at Settings → OpenAPI Reference, or ask the user to open it.
  • If a call errors with an engine/model message, the actionable detail is usually in the response body — surface it to the user verbatim; VoiceStudio's errors are written to be user-fixable (e.g. which Settings toggle to flip).

Version History

  • 2d5f2e8 Current 2026-08-19 22:28
  • b722ca7 2026-07-24 22:30

Same Skill Collection

.agents/skills/fastapi-python/SKILL.md
.agents/skills/vite/SKILL.md
skills/oss-maintainer/SKILL.md
.claude/skills/omnivoice/SKILL.md

Metadata

Files
0
Version
6d42d22
Hash
cc8669af
Indexed
2026-07-24 22:30

inicio - Wiki
Copyright © 2011-2026 iteam. Current version is 2.155.2. UTC+08:00, 2026-09-03 05:21
浙ICP备14020137号-1 $mapa de visitantes$