picoclaw/pkg
Orkun Manap dd9adf8a04
feat: add ElevenLabs Scribe STT transcriber and Telegram SendVoice support (#1905)
* feat: add ElevenLabs Scribe STT transcriber and Telegram SendVoice support

Add ElevenLabsTranscriber as an alternative speech-to-text provider using
the ElevenLabs Scribe API (scribe_v1). This enables voice message
transcription for users who already have an ElevenLabs API key, without
requiring a separate Groq account.

Changes:
- Add ElevenLabsTranscriber implementing the Transcriber interface
- Update DetectTranscriber to check providers.elevenlabs.api_key first,
  falling back to Groq for backward compatibility
- Add ElevenLabs to ProvidersConfig
- Add "voice" media type for OGG files with "voice" in filename
- Add SendVoice support in Telegram channel for voice bubble messages
- Add comprehensive tests for ElevenLabs transcriber

Configuration:
  "providers": {
    "elevenlabs": {
      "api_key": "sk_your_key_here"
    }
  }

Closes #1503 (partial)

* fix: move voice-bubble detection into Telegram channel to avoid regression in other channels

Address review feedback: keep inferMediaType returning "audio" for all
OGG files. Voice-bubble detection (SendVoice vs SendAudio) is now done
inside the Telegram channel based on filename, so other channels that
map "audio" explicitly are unaffected.

* fix: align VoiceConfig struct tags to pass golines formatter

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>

* fix(agent): use ModelName in loop test added by upstream

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>

---------

Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-23 22:11:10 +01:00
..
agent feat: add ElevenLabs Scribe STT transcriber and Telegram SendVoice support (#1905) 2026-03-23 22:11:10 +01:00
auth Merge branch 'main' into version 2026-03-19 18:04:58 +08:00
bus feat(telegram): stream LLM responses via sendMessageDraft (#1101) 2026-03-20 21:04:14 +08:00
channels feat: add ElevenLabs Scribe STT transcriber and Telegram SendVoice support (#1905) 2026-03-23 22:11:10 +01:00
commands Merge branch 'main' into feat/skill-channel-commands 2026-03-22 20:51:16 +01:00
config feat: add ElevenLabs Scribe STT transcriber and Telegram SendVoice support (#1905) 2026-03-23 22:11:10 +01:00
constants refactor: replace bool map with set-style map for internal channels (#472) 2026-02-19 11:48:17 +01:00
credential refactor: centralize environment variable key constants (#1730) 2026-03-18 18:03:24 +08:00
cron feat(cron): refactor scheduler to event-driven model and add unit tests (#1313) 2026-03-18 00:02:51 +08:00
devices refactor: cleanup dead code and turn on dead code detection in CI (#515) 2026-02-24 21:52:25 +08:00
fileutil refactor(pkg): move atomic file write to dedicated fileutil package 2026-02-24 23:57:13 +08:00
gateway implement panic log for gateway and launcher 2026-03-23 15:40:30 +08:00
health feat: add /reload to gateway api and command (#1725) 2026-03-19 13:42:36 +08:00
heartbeat fix(heartbeat): ignore untouched default template 2026-03-15 21:58:21 +08:00
identity fix(identity): support negative integers in isNumeric for Telegram group IDs 2026-03-21 17:09:02 +07:00
logger feat(security): add sensitive data filtering for tool results sent to 2026-03-23 20:55:41 +08:00
mcp Feat/add tool enable or disable configuration (#1071) 2026-03-05 14:53:26 +08:00
media Fix 1886 media cleanup policy (#1887) 2026-03-23 12:13:59 +08:00
memory refactor Config to add Version and migratable 2026-03-12 13:52:55 +08:00
migrate refactor: seperate security.yml for store keys 2026-03-22 01:55:00 +08:00
providers feat(providers): add AWS Bedrock provider (#1903) 2026-03-24 01:10:56 +08:00
routing refactor Config to add Version and migratable 2026-03-12 13:52:55 +08:00
session refactor Config to add Version and migratable 2026-03-12 13:52:55 +08:00
skills enhance skill installer (#1252) 2026-03-13 14:04:02 +08:00
state refactor Config to add Version and migratable 2026-03-12 13:52:55 +08:00
tools Fix 1886 media cleanup policy (#1887) 2026-03-23 12:13:59 +08:00
utils Merge pull request #1891 from RussellLuo/audio-transcription 2026-03-23 00:23:30 +01:00
voice feat: add ElevenLabs Scribe STT transcriber and Telegram SendVoice support (#1905) 2026-03-23 22:11:10 +01:00
env.go Merge branch 'main' into version 2026-03-19 18:04:58 +08:00