skills$openclaw/voicemonkey
jayakumark6.4k

by jayakumark

voicemonkey – OpenClaw Skill

voicemonkey is an OpenClaw Skills integration for coding workflows. Control Alexa devices via VoiceMonkey API v2 - make announcements, trigger routines, start flows, and display media.

6.4k stars6.5k forksSecurity L1
Updated Feb 7, 2026Created Feb 7, 2026coding

Skill Snapshot

namevoicemonkey
descriptionControl Alexa devices via VoiceMonkey API v2 - make announcements, trigger routines, start flows, and display media. OpenClaw Skills integration.
ownerjayakumark
repositoryjayakumark/voicemonkey
languageMarkdown
licenseMIT
topics
securityL1
installopenclaw add @jayakumark/voicemonkey
last updatedFeb 7, 2026

Maintainer

jayakumark

jayakumark

Maintains voicemonkey in the OpenClaw Skills directory.

View GitHub profile
File Explorer
2 files
.
_meta.json
278 B
SKILL.md
6.5 KB
SKILL.md

name: voicemonkey description: Control Alexa devices via VoiceMonkey API v2 - make announcements, trigger routines, start flows, and display media. homepage: https://voicemonkey.io metadata: {"clawdbot":{"emoji":"🐒","requires":{"env":["VOICEMONKEY_TOKEN"]},"primaryEnv":"VOICEMONKEY_TOKEN"}}

VoiceMonkey

Control Alexa/Echo devices via VoiceMonkey API v2. Make TTS announcements, trigger Alexa routines, start flows, and display images/videos on Echo Show devices.

Setup

  1. Get your secret token from Voice Monkey Console → Settings → API Credentials
  2. Set environment variable:
    export VOICEMONKEY_TOKEN="your-secret-token"
    
    Or add to ~/.clawdbot/clawdbot.json:
    {
      "skills": {
        "entries": {
          "voicemonkey": {
            "env": { "VOICEMONKEY_TOKEN": "your-secret-token" }
          }
        }
      }
    }
    
  3. Find your Device IDs in the Voice Monkey Console → Settings → Devices

API Base URL

https://api-v2.voicemonkey.io

Announcement API

Make TTS announcements, play audio/video, or display images on Alexa devices.

Endpoint: https://api-v2.voicemonkey.io/announcement

curl -X GET "https://api-v2.voicemonkey.io/announcement?token=$VOICEMONKEY_TOKEN&device=YOUR_DEVICE_ID&text=Hello%20from%20Echo"

With Authorization Header (recommended)

curl -X POST "https://api-v2.voicemonkey.io/announcement" \
  -H "Authorization: $VOICEMONKEY_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "device": "YOUR_DEVICE_ID",
    "text": "Hello from Echo the Fox!"
  }'

With Voice and Chime

curl -X POST "https://api-v2.voicemonkey.io/announcement" \
  -H "Authorization: $VOICEMONKEY_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "device": "YOUR_DEVICE_ID",
    "text": "Dinner is ready!",
    "voice": "Brian",
    "chime": "soundbank://soundlibrary/alarms/beeps_and_bloops/bell_02"
  }'

Display Image on Echo Show

curl -X POST "https://api-v2.voicemonkey.io/announcement" \
  -H "Authorization: $VOICEMONKEY_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "device": "YOUR_DEVICE_ID",
    "text": "Check out this image",
    "image": "https://example.com/image.jpg",
    "media_width": "100",
    "media_height": "100",
    "media_scaling": "best-fit"
  }'

Play Audio File

curl -X POST "https://api-v2.voicemonkey.io/announcement" \
  -H "Authorization: $VOICEMONKEY_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "device": "YOUR_DEVICE_ID",
    "audio": "https://example.com/sound.mp3"
  }'

Play Video on Echo Show

curl -X POST "https://api-v2.voicemonkey.io/announcement" \
  -H "Authorization: $VOICEMONKEY_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "device": "YOUR_DEVICE_ID",
    "video": "https://example.com/video.mp4",
    "video_repeat": 1
  }'

Open Website on Echo Show

curl -X POST "https://api-v2.voicemonkey.io/announcement" \
  -H "Authorization: $VOICEMONKEY_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "device": "YOUR_DEVICE_ID",
    "website": "https://example.com",
    "no_bg": "true"
  }'

Announcement Parameters

ParameterRequiredDescription
tokenYes*Secret token (*or use Authorization header)
deviceYesDevice ID from Voice Monkey console
textNoTTS text (supports SSML)
voiceNoVoice for TTS (see API Playground for options)
languageNoLanguage code for better pronunciation
chimeNoSound URL or Alexa sound library reference
audioNoHTTPS URL of audio file to play
background_audioNoAudio to play behind TTS
imageNoHTTPS URL of image for Echo Show
videoNoHTTPS URL of MP4 video for Echo Show
video_repeatNoNumber of times to loop video
websiteNoURL to open on Echo Show
no_bgNoSet "true" to hide Voice Monkey branding
media_widthNoImage width
media_heightNoImage height
media_scalingNoImage scaling mode
media_alignNoImage alignment
media_radiusNoCorner radius for image clipping
var-[name]NoUpdate Voice Monkey variables

Routine Trigger API

Trigger Voice Monkey devices to start Alexa Routines.

Endpoint: https://api-v2.voicemonkey.io/trigger

curl -X POST "https://api-v2.voicemonkey.io/trigger" \
  -H "Authorization: $VOICEMONKEY_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "device": "YOUR_TRIGGER_DEVICE_ID"
  }'
ParameterRequiredDescription
tokenYes*Secret token (*or use Authorization header)
deviceYesTrigger Device ID from Voice Monkey console

Flows Trigger API

Start Voice Monkey Flows.

Endpoint: https://api-v2.voicemonkey.io/flows

curl -X POST "https://api-v2.voicemonkey.io/flows" \
  -H "Authorization: $VOICEMONKEY_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "device": "YOUR_DEVICE_ID",
    "flow": 12345
  }'
ParameterRequiredDescription
tokenYes*Secret token (*or use Authorization header)
deviceYesDevice ID
flowYesNumeric Flow ID from Voice Monkey console

Media Requirements

Images

  • Most common formats supported (JPG, PNG, etc.)
  • No animated GIFs
  • Optimize file size for faster loading
  • Must be hosted at HTTPS URL with valid SSL
  • CORS must allow wildcard: Access-Control-Allow-Origin: *

Videos

  • MP4 format only (MPEG-4 Part-14)
  • Audio codecs: AAC, MP3
  • Max resolution: 1080p @30fps or @60fps
  • Must be hosted at HTTPS URL with valid SSL

Audio

  • Formats: AAC, MP3, OGG, Opus, WAV
  • Bit rate: ≤ 1411.20 kbps
  • Sample rate: ≤ 48kHz
  • File size: ≤ 10MB
  • Total response length: ≤ 240 seconds

SSML Examples

Use SSML in the text parameter for richer announcements:

<speak>
  <amazon:emotion name="excited" intensity="high">
    This is exciting news!
  </amazon:emotion>
</speak>
<speak>
  The time is <say-as interpret-as="time">3:30pm</say-as>
</speak>

Notes

  • Keep your token secure; rotate via Console → Settings → API Credentials if compromised
  • Use the API Playground to test and explore options
  • Premium members can upload media directly in the Voice Monkey console
  • Always confirm before sending announcements to avoid unexpected noise
README.md

No README available.

Permissions & Security

Security level L1: Low-risk skills with minimal permissions. Review inputs and outputs before running in production.

Requirements

### Images - Most common formats supported (JPG, PNG, etc.) - **No animated GIFs** - Optimize file size for faster loading - Must be hosted at HTTPS URL with valid SSL - CORS must allow wildcard: `Access-Control-Allow-Origin: *` ### Videos - **MP4 format only** (MPEG-4 Part-14) - Audio codecs: AAC, MP3 - Max resolution: 1080p @30fps or @60fps - Must be hosted at HTTPS URL with valid SSL ### Audio - Formats: AAC, MP3, OGG, Opus, WAV - Bit rate: ≤ 1411.20 kbps - Sample rate: ≤ 48kHz - File size: ≤ 10MB - Total response length: ≤ 240 seconds

FAQ

How do I install voicemonkey?

Run openclaw add @jayakumark/voicemonkey in your terminal. This installs voicemonkey into your OpenClaw Skills catalog.

Does this skill run locally or in the cloud?

OpenClaw Skills execute locally by default. Review the SKILL.md and permissions before running any skill.

Where can I verify the source code?

The source repository is available at https://github.com/openclaw/skills/tree/main/skills/jayakumark/voicemonkey. Review commits and README documentation before installing.