Skill flagged — suspicious patterns detected

ClawHub Security flagged this skill as suspicious. Review the scan results before using.

Vector-Robot

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.

MIT-0 · Free to use, modify, and redistribute. No attribution required.
0 · 1.6k · 2 current installs · 2 all-time installs
MIT-0
Security Scan
VirusTotalVirusTotal
Suspicious
View report →
OpenClawOpenClaw
Suspicious
medium confidence
Purpose & Capability
Name/description match the files and instructions: helper scripts invoke wire-pod endpoints for speech, camera, movements, and an included proxy server integrates wire-pod voice input with OpenClaw. No unrelated credentials or binaries are requested.
Instruction Scope
SKILL.md directs the agent (and the user) to run local helper scripts and the proxy server and to optionally install a macOS LaunchAgent. The instructions require writing/reading request.json and response.json in the scripts directory for voice flows (manual or automated). The skill explicitly warns about disabled cliff sensors (safety note). The instructions do not request unrelated files or credentials.
Install Mechanism
There is no remote download; code is bundled with the skill. The included install script writes a LaunchAgent plist and calls launchctl to load it (modifies user LaunchAgents). This is a local persistence mechanism — not a remote package fetch — but it does change system startup state and should be run only with care.
Credentials
The skill declares no required env vars or credentials. Script defaults allow setting VECTOR_SERIAL or WIREPOD_URL via env, which is appropriate for the stated task. No unrelated secret access is requested.
!
Persistence & Privilege
The optional install-launchagent.sh creates a LaunchAgent that auto-starts the proxy and keeps it alive on boot, giving the skill persistent background presence. The bundled proxy server binds with default Node semantics (no explicit host) and sets Access-Control-Allow-Origin: '*', which can expose the proxy beyond localhost on some systems — increasing network attack surface. Combined with file-based request/response handling, this raises risks if you install the LaunchAgent or run the server on a machine reachable from untrusted networks.
What to consider before installing
The skill appears to do what it says (local control of a wire-pod Vector), but take these precautions before installing or enabling the auto-start script: - Do not run the install-launchagent.sh unless you want a persistent background server. Installing it writes a plist into ~/Library/LaunchAgents and loads it immediately. - If you run the Node proxy, consider editing proxy-server.js to bind only to localhost (e.g., server.listen(PORT, '127.0.0.1')) and remove or restrict CORS (avoid Access-Control-Allow-Origin: '*') so it is not reachable from the network/LAN. - The proxy writes request.json and expects a response.json in the same directory; these files contain incoming questions and answers and may be readable by other users on the system — restrict file permissions or run in a dedicated directory. - The behavior-control endpoints disable safety checks (cliff sensors) while controlled — always supervise the robot while issuing movement commands. - Only run this skill on machines and networks you control, and inspect the included scripts yourself before running. If you need higher assurance, ask the publisher for source provenance or a signed release; if the developer identity or source cannot be verified, avoid installing the LaunchAgent and run the server only interactively and bound to localhost. Reason for 'suspicious': persistence + permissive network/CORS + file-based IPC increase attack surface; the code itself is coherent and there are no obvious exfiltration calls, but these operational issues warrant caution.

Like a lobster shell, security has layers — review code before you run it.

Current versionv1.0.0
Download zip
latestvk97bwz5bnnf7m4vjzq3r90390180eqzb

License

MIT-0
Free to use, modify, and redistribute. No attribution required.

SKILL.md

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.

Files

6 total
Select a file
Select a file to preview.

Comments

Loading comments…