Voice
Plugin Aws
OpenClaw plugin for AWS services: Amazon Polly TTS, Transcribe STT, Nova Sonic realtime voice
Install
openclaw plugin install openclaw-plugin-aws
Configuration Example
{
"plugins": {
"entries": {
"aws": {
"enabled": true,
"config": {
"polly": {
"enabled": true,
"voice": "Ruth",
"engine": "generative",
"region": "us-east-1"
},
"transcribe": {
"enabled": true,
"region": "us-east-1"
},
"novaSonic": {
"enabled": true,
"voice": "tiffany",
"region": "us-east-1"
}
}
}
}
}
}
README
# openclaw-plugin-aws
OpenClaw plugin for AWS AI services — **Amazon Polly** (TTS), **Amazon Transcribe** (STT), and **Amazon Nova Sonic** (realtime voice).
All services authenticate via the standard [AWS IAM credential chain](https://docs.aws.amazon.com/sdkref/latest/guide/standardized-credentials.html) — no separate API key required.
## Install
```bash
openclaw plugin install openclaw-plugin-aws
```
## Configuration
Add to your OpenClaw `config.json`:
```json
{
"plugins": {
"entries": {
"aws": {
"enabled": true,
"config": {
"polly": {
"enabled": true,
"voice": "Ruth",
"engine": "generative",
"region": "us-east-1"
},
"transcribe": {
"enabled": true,
"region": "us-east-1"
},
"novaSonic": {
"enabled": true,
"voice": "tiffany",
"region": "us-east-1"
}
}
}
}
}
}
```
## Services
### Amazon Polly (Text-to-Speech)
Provides high-quality speech synthesis with generative, neural, and standard engines.
| Key | Default | Description |
|----------------|--------------|-------------|
| `enabled` | `true` | Enable/disable |
| `voice` | `Ruth` | Voice ID ([full list](https://docs.aws.amazon.com/polly/latest/dg/voicelist.html)) |
| `engine` | `generative` | generative, neural, standard, long-form |
| `region` | `us-east-1` | AWS region |
| `sampleRate` | `24000` | Output Hz (8000/16000/22050/24000) |
### Amazon Transcribe (Speech-to-Text)
Streaming speech-to-text transcription with automatic language detection.
| Key | Default | Description |
|----------------|--------------|-------------|
| `enabled` | `true` | Enable/disable |
| `region` | `us-east-1` | AWS region |
| `languageCode` | `en-US` | Default language |
### Amazon Nova Sonic (Realtime Voice)
Full-duplex bidirectional voice conversations via Bedrock's Nova Sonic model. Supports tool calling, barge-in, and automatic turn detection.
| Key | Default | Description |
|---------------|--------------------------|-------------|
| `enabled` | `true` | Enable/disable |
| `model` | `amazon.nova-sonic-v1:0` | Model ID (also supports `amazon.nova-2-sonic-v1:0`) |
| `voice` | `tiffany` | Voice (tiffany, matthew, amy) |
| `region` | `us-east-1` | AWS region |
| `temperature` | `0.7` | Sampling temperature |
| `maxTokens` | `4096` | Max output tokens |
## AWS Credentials
The plugin uses the standard AWS SDK credential chain:
1. Environment variables (`AWS_ACCESS_KEY_ID` / `AWS_SECRET_ACCESS_KEY`)
2. Shared credentials file (`~/.aws/credentials`)
3. SSO credentials (`aws sso login`)
4. EC2/ECS instance role (IAM)
5. IMDSv2 instance profile
If you already have Bedrock working, these services will authenticate automatically.
## Audio Pipeline
Nova Sonic handles sample rate conversion at the bridge boundary:
- **Telephony input** (mu-law 8kHz) → upsample to PCM 16kHz → Nova Sonic
- **Browser Talk input** (PCM 24kHz) → resample to PCM 16kHz → Nova Sonic
- **Nova Sonic output** (PCM 24kHz) → downsample/encode to match caller format
## Requirements
- OpenClaw ≥ 2026.6.0
- AWS credentials with appropriate permissions:
- `polly:SynthesizeSpeech`, `polly:DescribeVoices`
- `transcribe:StartStreamTranscription`
- `bedrock:InvokeModelWithBidirectionalStream` (for Nova Sonic)
## License
MIT
voice
Comments
Sign in to leave a comment