Skip to content
Back to skills

Vector Robot

BSecurity

Control Anki Vector robot via wire-pod. Speak through Vector, see through its camera, move head/lift/wheels, change eye colors, trigger animations. Use when user mentions Vector robot, wants to speak through a robot, control a physical robot, or interact with wire-pod.

  • 10 stars
  • 0 votes
  • 0 copies
  • 1 view
  • Added May 30, 2026
toolspythonbashnodegitapidocumentation

Works with

  • cli
  • api

Security analysis

B75/100
  • criticalModifies startup scripts or system services for persistence

Pro scans all 7 files and shows the line behind each finding

Scanned May 30, 2026

npx -y skills add Demerzels-lab/elsamultiskillagent --skill vector-robot --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Vector Robot?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Vector Robot
[![Security: B — Skills Directory](https://www.skillsdirectory.com/api/skills/demerzels-lab-vector-robot/badge)](https://www.skillsdirectory.com/skills/demerzels-lab-vector-robot)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: vector-robot
description: Control Anki Vector robot via wire-pod. Speak through Vector, see through its camera, move head/lift/wheels, change eye colors, trigger animations. Use when user mentions Vector robot, wants to speak through a robot, control a physical robot, or interact with wire-pod.
---

# Vector Robot Control

Control an Anki Vector robot running wire-pod.

## Prerequisites

- Anki Vector robot with escape pod firmware
- wire-pod running (https://github.com/kercre123/wire-pod)
- OpenClaw proxy server for voice input (optional)

## Quick Reference

All API calls require `&serial=SERIAL` parameter. Default: `00501a68`.

```bash
SERIAL="00501a68"
WIREPOD="http://127.0.0.1:8080"
```

### Speech Output

```bash
# Make Vector speak (URL encode the text)
curl -s -X POST "$WIREPOD/api-sdk/assume_behavior_control?priority=high&serial=$SERIAL"
curl -s -X POST "$WIREPOD/api-sdk/say_text?text=Hello%20world&serial=$SERIAL"
curl -s -X POST "$WIREPOD/api-sdk/release_behavior_control?serial=$SERIAL"
```

Or use the helper script: `scripts/vector-say.sh "Hello world"`

### Camera

```bash
# Capture frame from MJPEG stream
timeout 2 curl -s "$WIREPOD/cam-stream?serial=$SERIAL" > /tmp/stream.mjpeg
# Extract JPEG with Python (see scripts/vector-see.sh)
```

### Movement

**⚠️ SAFETY: Cliff sensors are DISABLED during behavior control. Be careful with wheel movements!**

```bash
# Head: speed -2 to 2
curl -s -X POST "$WIREPOD/api-sdk/move_head?speed=2&serial=$SERIAL"  # up
curl -s -X POST "$WIREPOD/api-sdk/move_head?speed=-2&serial=$SERIAL" # down
curl -s -X POST "$WIREPOD/api-sdk/move_head?speed=0&serial=$SERIAL"  # stop

# Lift: speed -2 to 2  
curl -s -X POST "$WIREPOD/api-sdk/move_lift?speed=2&serial=$SERIAL"  # up
curl -s -X POST "$WIREPOD/api-sdk/move_lift?speed=-2&serial=$SERIAL" # down

# Wheels: lw/rw -200 to 200 (USE WITH CAUTION)
curl -s -X POST "$WIREPOD/api-sdk/move_wheels?lw=100&rw=100&serial=$SERIAL"  # forward
curl -s -X POST "$WIREPOD/api-sdk/move_wheels?lw=-50&rw=50&serial=$SERIAL"   # turn left
curl -s -X POST "$WIREPOD/api-sdk/move_wheels?lw=0&rw=0&serial=$SERIAL"      # stop
```

### Settings

```bash
# Volume: 0-5
curl -s -X POST "$WIREPOD/api-sdk/volume?volume=5&serial=$SERIAL"

# Eye color: 0-6
curl -s -X POST "$WIREPOD/api-sdk/eye_color?color=4&serial=$SERIAL"

# Battery status
curl -s "$WIREPOD/api-sdk/get_battery?serial=$SERIAL"
```

### Actions/Intents

```bash
curl -s -X POST "$WIREPOD/api-sdk/cloud_intent?intent=intent_imperative_dance&serial=$SERIAL"
```

Available intents: `intent_imperative_dance`, `intent_system_sleep`, `intent_system_charger`, `intent_imperative_fetchcube`, `explore_start`

## Voice Input (OpenClaw Integration)

To receive voice commands from Vector, run the proxy server:

```bash
node scripts/proxy-server.js
```

Configure wire-pod Knowledge Graph (http://127.0.0.1:8080 → Server Settings):
- Provider: Custom
- API Key: `openclaw`
- Endpoint: `http://localhost:11435/v1`
- Model: `openclaw`

The proxy writes incoming questions to `request.json`. Respond by writing to `response.json`:

```json
{"timestamp": 1234567890000, "answer": "Your response here"}
```

## LaunchAgent (Auto-start on macOS)

Install to `~/Library/LaunchAgents/com.openclaw.vector-proxy.plist` for auto-start. See `scripts/install-launchagent.sh`.

## API Reference

See `references/api.md` for complete endpoint documentation.

Files in this skill

  • SKILL.md3.3 KB
  • _meta.json286 B
  • references/api.md2.5 KB
  • scripts/install-launchagent.sh1.1 KB
  • scripts/proxy-server.js5.1 KB
  • scripts/vector-say.sh623 B
  • scripts/vector-see.sh929 B

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.