Overview
- Skill Key
- fiberian1981/telegram-voice-to-voice-macos
- Author
- fiberian1981
- Source Repo
- openclaw/skills
- Version
- -
- Source Path
- skills/fiberian1981/telegram-voice-to-voice-macos
- Latest Commit SHA
- 86eb6d93a15fa8004b8dc4ee77b2c1abd1ec4234
Telegram voice-to-voice for macOS Apple Silicon: transcribe inbound .ogg voice notes with yap (Speech.framework) and reply with Telegram voice notes via say+ffmpeg. Not compatible with Linux/Windows.
Stars
0
Installs
0
Status
ACTIVE
Visibility
PUBLIC
直接复制以下提示词,发送给你的 AI 助手即可完成安装。
请先检查是否已安装 SkillHub 商店,若未安装,请根据 https://skillhub-1388575217.cos.ap-guangzhou.myqcloud.com/install/skillhub.md 安装 SkillHub 商店,然后安装 telegram-voice-to-voice-macos 技能。 若已安装,则直接安装 telegram-voice-to-voice-macos 技能。
# Telegram voice-to-voice (macOS Apple Silicon only)
This is an **OpenClaw skill**.
## Requirements
- macOS on Apple Silicon.
- `yap` CLI available in `PATH` (Speech.framework transcription).
- Project: https://github.com/finnvoor/yap (by finnvoor)
- `ffmpeg` available in `PATH`.
## Compatibility note (important)
This skill is **macOS-only** (uses `say` + Speech.framework). The skill registry cannot enforce OS restrictions, so installing/running it on Linux/Windows will result in runtime failures.
## Persistent reply mode (voice vs text)
Store a small per-user preference file in the workspace:
- State file: `voice_state/telegram.json`
- Key: Telegram sender user id (string)
- Values:
- `"voice"` (default): reply with a Telegram voice note
- `"text"`: reply with a single text message
If the file does not exist or the sender id is missing: assume `"voice"`.
### Toggle commands
If an inbound **text** message is exactly:
- `/audio off` → set state to `"text"` and confirm with a short text reply.
- `/audio on` → set state to `"voice"` and confirm with a short text reply.
## Getting the inbound audio (.ogg)
Telegram voice notes often show up as `<media:audio>` in message text.
OpenClaw saves the attachment to disk (typically `.ogg`) under:
- `~/.openclaw/media/inbound/`
Recommended approach:
1) If the inbound message context includes an attachment path, use it.
2) Otherwise, take the most recent `*.ogg` from `~/.openclaw/media/inbound/`.
## Transcription
Default locale: **macOS system locale**.
Optional env:
- `YAP_LOCALE` — override the transcription locale (e.g. `it-IT`, `en-US`).
Preferred:
- `yap transcribe --locale "${YAP_LOCALE:-<system>}" <path.ogg>`
- If `YAP_LOCALE` is not set, the helper script will use the macOS system locale (from `defaults read -g AppleLocale`).
If transcription fails or is empty: ask the user to repeat or send text.
Helper script:
- `scripts/transcribe_telegram_ogg.sh [path.ogg]`
## Reply behavior
### Mode...
# telegram-voice-to-voice-macos An **OpenClaw skill** for a Telegram voice-to-voice workflow on **macOS Apple Silicon only**. It handles inbound Telegram voice notes (`.ogg`), transcribes locally with `yap` (Speech.framework), generates a reply, and sends the reply back as a Telegram **voice note** using macOS `say` + `ffmpeg`. ## Requirements - macOS on Apple Silicon - `yap` in `PATH` (Speech.framework transcription) - https://github.com/finnvoor/yap - `ffmpeg` in `PATH` ## Compatibility This skill is **macOS-only** (uses `say` and Speech.framework). The registry cannot enforce OS restrictions, so running it on Linux/Windows will fail at runtime. ## Configuration ### Transcription locale - If `YAP_LOCALE` is set, it will be used (e.g. `it-IT`, `en-US`). - If `YAP_LOCALE` is not set, the helper script falls back to the **macOS system locale** (from `defaults read -g AppleLocale`). ### TTS voice - Default is `SYSTEM` (uses the current macOS system voice). - You can pass a specific voice name to the TTS helper script if needed. ## Files and paths - Inbound Telegram audio is typically saved by OpenClaw under: - `~/.openclaw/media/inbound/` - Per-user reply mode state: - `voice_state/telegram.json` ## Behavior - Default reply mode: `voice` - Toggle per user via Telegram text messages: - `/audio off` → reply in text - `/audio on` → reply with voice note ## Skill instructions See `SKILL.md` for the full, canonical behavior description used by OpenClaw.
heyixuan2
Bambu Lab 3D printer control and automation. Activate when user mentions: printer status, 3D printing, slice, analyze model, generate 3D, AMS filament, print monitor, Bambu Lab, or any 3D printing task. Full pipeline: search → generate → analyze → colorize → preview → open BS → user slice → print → monitor. Supports all 9 Bambu Lab printers (A1 Mini, A1, P1S, P2S, X1C, X1E, H2C, H2S, H2D).
capt-marbles
Generative Engine Optimization (GEO) for AI search visibility. Optimize content to appear in ChatGPT, Perplexity, Claude, and Google AI Overviews. Use when optimizing websites, pages, or content for LLM discoverability and citation.
carlulsoe
Local speech-to-text with NVIDIA Parakeet TDT 0.6B v3 (ONNX on CPU). 30x faster than Whisper, 25 languages, auto-detection, OpenAI-compatible API. Use when transcribing audio files, converting speech to text, or processing voice recordings locally without cloud APIs.
carlzhao007
飞书消息自动处理与进度反馈技能。安装后后台运行,监听飞书任务消息并自动创建独立进程处理。 在处理前后发送实时进度反馈(任务确认、进度百分比、完成通知)。 支持任务类型识别、智能解析、错误重试、并发控制、状态持久化。 使用场景:飞书自动化工作流、任务进度追踪、批量任务处理、需要实时反馈的场景。
cartoonitunes
BottyFans agent skill for autonomous creator monetization. Lets AI agents register, build a profile, publish posts (public, subscriber-only, or pay-to-unlock), upload media, accept USDC subscriptions and tips on Base, send and receive DMs, track earnings, and appear on the creator leaderboard. Use this skill when an agent needs to monetize content, interact with fans, manage a creator profile, handle payments in USDC, or operate as an autonomous creator on the BottyFans platform.
camopel
Local arXiv paper manager with semantic search. Crawls arXiv categories, downloads PDFs, chunks content, and indexes with FAISS + Ollama embeddings. No cloud API keys required — everything runs locally.