toybridge
Control any BLE toy that has been reverse-engineered and connected via the ToyBridge server. Calls a local HTTP API to send vibrate/stop commands. Requires the ToyBridge server running on the same machine.
Install via CLI (Recommended)
clawhub install openclaw/skills/skills/amandaclarke61/toybridgeWhat This Skill Does
The ToyBridge skill provides OpenClaw with the capability to interface with custom or reverse-engineered Bluetooth Low Energy (BLE) toys that are not natively supported by standard industry protocols like Buttplug.io. By utilizing the local ToyBridge HTTP server, the agent can send precise vibration intensity commands or execute pre-defined patterns such as pulse, wave, and tease. This skill effectively bridges the gap between AI control and proprietary hardware, allowing for seamless integration of specialized devices into automated agent workflows.
Installation
To install this skill, use the command: clawhub install openclaw/skills/skills/amandaclarke61/toybridge. Before the skill will function, you must ensure that your hardware environment is prepared. This includes setting up your custom BLE configuration within 4-bridge/ble_worker.py and launching the bridge server using uv run 4-bridge/server.py. The skill acts as an HTTP client, so the server must be active on the same machine for the agent to communicate with the hardware successfully.
Use Cases
This skill is designed for advanced users who have reverse-engineered specific hardware. Typical use cases include creating time-based sessions that respond to user prompts or environmental triggers, integrating haptic feedback into AI storytelling, or setting up automated intensity sequences for testing custom device firmware. It is ideal for hobbyists who want to control niche devices that lack official SDK support.
Example Prompts
- "ToyBridge, set the vibration to a strong level 70 for the next five minutes, then stop."
- "Run the wave pattern on my device to help me relax."
- "Stop all activity on the device immediately and verify the current connection status."
Tips & Limitations
Always remember that intensity levels are clamped between 0 and 100; sending values outside this range may result in errors. If you are running OpenClaw outside of a Docker container, ensure you update your connection strings from host.docker.internal to localhost. As a rule, always include a command to stop the device (intensity 0) at the end of a session to ensure safety and power efficiency. If the agent reports a connection refused error, verify that the ToyBridge server script is actively running in your background terminal. This skill is strictly for proprietary BLE protocols; if your device supports Intiface, consider the intiface-control skill for a more streamlined experience.
Metadata
Not sure this is the right skill?
Describe what you want to build — we'll match you to the best skill from 16,000+ options.
Find the right skillPaste this into your clawhub.json to enable this plugin.
{
"plugins": {
"official-amandaclarke61-toybridge": {
"enabled": true,
"auto_update": true
}
}
}Tags(AI)
Flags: network-access, external-api
Related Skills
intiface-control
Control 750+ BLE intimate devices (Lovense, Kiiroo, We-Vibe, Satisfyer, etc.) from natural language via Intiface Central and buttplug-mcp. Works on macOS, Windows, and Linux. No protocol reverse-engineering required.
venus-ble-vibrator
Control a Venus (Cachito) BLE vibrator from natural language. Calls a local HTTP server that broadcasts BLE commands to the toy via macOS CoreBluetooth. Requires hardware setup — see the ToyBridge repo before installing.