stock-data-skill
OpenClaw Skill for stock data analysis
Full voice message setup (STT + TTS) for OpenClaw using faster-whisper and Edge TTS
Follow the repository instructions for this skill and your agent. Review the files and dependencies before adding it to your workflow.
SkillHub CLI
skillhub install aksenkin/voice-stt-ttsInspect the source and compatibility requirements, then follow its installation steps.
Give your agent the source link and ask it to inspect instructions and dependencies before explaining the installation steps.
Complete voice message setup using faster-whisper for transcription and Edge TTS for voice replies.
For Ubuntu create an isolated venv:
python3 -m venv ~/.openclaw/workspace/voice-messages
Install packages in venv:
~/.openclaw/workspace/voice-messages/bin/pip install faster-whisper
What gets installed:
faster-whisper — Python library for transcriptionctranslate2, onnxruntime, huggingface-hub, av, numpy, and others.File: ~/.openclaw/workspace/voice-messages/transcribe.py
#!/usr/bin/env python3
import argparse
from faster_whisper import WhisperModel
def transcribe(audio_path: str, model_name: str = "small", lang: str = "en", device: str = "cpu") -> str:
model = WhisperModel(
model_name,
device=device,
compute_type="int8" if device == "cpu" else "float16",
)
segments, _ = model.transcribe(audio_path, language=lang, vad_filter=True)
text = " ".join(seg.text.strip() for seg in segments if seg.text and seg.text.strip()).strip()
return text
def main():
p = argparse.ArgumentParser()
p.add_argument("--audio", required=True)
p.add_argument("--model", default="small")
p.add_argument("--lang", default="en")
p.add_argument("--device", default="cpu", choices=["cpu", "cuda"])
args = p.parse_args()
text = transcribe(args.audio, args.model, args.lang, args.device)
print(text if text else "")
if __name__ == "__main__":
main()
What the script does:
--audio)These signals come from indexed source analysis and may lag behind changes. Check the current source files.
# Voice Messages (STT + TTS) for OpenClaw 🎙️
Complete voice message setup using **faster-whisper** for transcription and **Edge TTS** for voice replies.
## What we configure
- ✅ **STT** (Speech-to-Text) — transcribe voice messages via faster-whisper
- ✅ **TTS** (Text-to-Speech) — voice replies via Edge TTS
- 🎯 **Result:** voice → text → reply with voice
---
## Installation
### 1. Create virtual environment (venv)
For Ubuntu create an isolated venv:
```bash
python3 -m venv ~/.openclaw/workspace/voice-messages
```
### 2. Install faster-whisper
Install packages in venv:
```bash
~/.openclaw/workspace/voice-messages/bin/pip install faster-whisper
```
**What gets installed:**
- `faster-whisper` — Python library for transcription
- Dependencies: `ctranslate2`, `onnxruntime`, `huggingface-hub`, `av`, `numpy`, and others.
- Size: ~250 MB
---
## Transcription Script
### Path and content
**File:** `~/.openclaw/workspace/voice-messages/transcribe.py`
```python
#!/usr/bin/env python3
import argparse
from faster_whisper import WhisperModel
def transcribe(audio_path: str, model_name: str = "small", lang: str = "en", device: str = "cpu") -> str:
model = WhisperModel(
model_name,
device=device,
compute_type="int8" if device == "cpu" else "float16",
)
segments, _ = model.transcribe(audio_path, language=lang, vad_filter=True)
text = " ".join(seg.text.strip() for seg in segments if seg.text and seg.text.strip()).strip()
return text
def main():
p = argparse.ArgumentParser()
p.add_argument("--audio", required=True)
p.add_argument("--model", default="small")
p.add_argument("--lang", default="en")
p.add_argument("--device", default="cpu", choices=["cpu", "cuda"])
args = p.parse_args()
text = transcribe(args.audio, args.model, args.lang, args.device)
print(text if text else "")
if __name__ == "__main__":
main()
```
**What the script does:**
1. Accepts audio file path (`--audio`)
2. Lo...OpenClaw Skill for stock data analysis
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 discove...
Access unsecured credit lines for AI agents on the Arc Network using the Credex Protocol. Use for borrowing USDC against reputation, repaying debt to grow credit limits, providing liquidity as an LP, or managin...
Control PhantomBuster automation agents via API. List agents, launch automations, get output/results, check status, and abort running agents. Use when the user needs to run LinkedIn scraping, Twitter automation...