360 Secure SkillHub
360 安全技能中心

Vector-Robot

用 curl 调用本地 wire-pod(127.0.0.1:8080)的 api-sdk 接口,让 Anki Vector 说话、抓取摄像头画面、移动头部/升降/轮子、调节音量与眼灯颜色、查询电量并触发动作意图;附带 OpenClaw 语音代理与 macOS LaunchAgent 自动启动脚本。

bogorman
bogorman
热度 85.93
最近更新 2026-05-18 11:57:22
分类:自动化依赖:代码执行 / 第三方 API / 读写文件应用场景:自动化脚本 / API 集成 / 工作流

安装技能

复制下面的话术发给你的 Agent,它会通过 secure-skills 检索并安装该技能。

执行命令安装此 skill: npx secure-skills-cli add vector-robot
Metadata
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

Quick Reference

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

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

Speech Output

# 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

# 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!

# 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

# 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

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:

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:

{"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.