voicelens transcrição de áudio / entrada de voz
Condições de acionamento
- O usuário fornece um caminho de arquivo de áudio ou URL e solicita "transcrever / ditar / converter voz em texto / extrair conteúdo de áudio".
- O usuário pergunta como configurar o mecanismo ASR do voicelens (endpoint compatível com OpenAI / Groq / whisper.cpp).
- (Apenas DSH) O usuário clica no botão do microfone na caixa de entrada para falar — este caminho é tratado automaticamente pelo plugin do cliente e não requer a intervenção desta skill.
Regras principais
Quando o áudio está presente, mas o modelo atual "não consegue ouvir", não escreva scripts próprios de ffmpeg / OCR / transcrição. Primeiro, transcreva e cite o text retornado como prova.
Execução (de acordo com o host)
- DeepSeek Harness (possui ferramenta
transcribe_audio) → Chame a ferramenta diretamente, passandopathouurl. - Outros hosts (Claude Code / Codex / Pi / OpenClaw / OpenCode …) → Execute a CLI:
Saída JSON:voicelens transcribe <file-or-url> [--lang zh] [--provider groq]{ "text", "language", "provider" }. Cite otextcomo prova. - Diagnóstico (qualquer host):
voicelens doctor
Configuração (para o agente executar em nome do usuário)
A configuração segue a hierarquia: variáveis de ambiente VOICELENS_* > ~/.voicelens/config.json > padrões internos.
Opção A: Groq (camada gratuita, recomendado)
VOICELENS_PROVIDER=groq
VOICELENS_GROQ_API_KEY=<gsk_...>
Opção B: Endpoint compatível com OpenAI (qualquer gateway whisper)
VOICELENS_PROVIDER=openai
VOICELENS_OPENAI_API_KEY=<key>
VOICELENS_OPENAI_BASE_URL=https://api.openai.com/v1
VOICELENS_OPENAI_MODEL=whisper-1
Opção C: whisper.cpp local (sem chave)
VOICELENS_PROVIDER=whisper-local
VOICELENS_WHISPER_CPP=/path/to/whisper.cpp/build/bin/main
VOICELENS_WHISPER_MODEL=/path/to/ggml-base.bin
Ou escreva em ~/.voicelens/config.json:
{ "provider": "groq", "groqApiKey": "gsk_..." }
Contrato de saída
{ text, language?, provider } — toda transcrição do lado do modelo segue este formato (consistente entre ferramenta e CLI).
Limitações conhecidas
- O DSH atualmente não possui um pipeline de mensagens de áudio (
attachmentssuporta apenas imagens,ModelModalitysuporta apenas text|image), portanto a captura de voz no DSH é feita pelo botão do microfone no cliente; a transcrição de arquivos do lado do modelo usa esta skill/ferramenta. - O botão do microfone do DSH depende da
SpeechRecognitiondo Chrome/Edge (zero configuração); outros navegadores exigem troca.