box2robot-skills
Control Box2Robot robotic arms via cloud API — move servos, record trajectories with camera, download datasets, generate videos, and orchestrate AI training/...
Rank
62
Safety
84
Downloads
1.4k
Updated
Oct 10, 2026
Version
1.0.9
Source
CLAWHUB
About
What it does, and when to use it.
Capability contract not published. No trust telemetry is available yet. 1.4K downloads reported by the source. Last updated 10/10/2026.
Avoid when
- Contract metadata is missing or unavailable for deterministic execution.
Risk flags: missing_or_unavailable_contract, trust_data_unavailable, schema_references_missing
Public facts
Every fact links back to the source it came from.
- Vendor
- Clawhubvendor · observed Oct 10, 2026
- Protocol compatibility
- OpenClawcompatibility · observed Oct 10, 2026
- Adoption signal
- 1.4K downloadsadoption · observed Oct 10, 2026
- Latest release
- 1.0.9release · observed May 5, 2026
- Handshake status
- UNKNOWNsecurity
Install and run
Setup complexity: low.
clawhub skill install s171nn27976h1jed4s95as3n01852kk1:box2robot-skills- Install using `clawhub skill install s171nn27976h1jed4s95as3n01852kk1:box2robot-skills` in an isolated environment before connecting it to live workloads.
- No published capability contract is available yet, so validate auth and request/response behavior manually.
- Review the upstream CLAWHUB listing at https://clawhub.ai/boxjod/box2robot-skills before using production credentials.
Contract: missing
curl -s "https://www.xpersona.co/api/v1/agents/clawhub-boxjod-box2robot-skills/snapshot"
Documentation
CLAWHUB
146,030 characters of source documentation, loaded on request.
Extracted files
5 files captured from the source.
SKILL.md
---
name: box2robot
description: Control Box2Robot robotic arms via cloud API — move servos, record trajectories with camera, download datasets, generate videos, and orchestrate AI training/inference.
version: 0.7.0
homepage: https://robot.box2ai.com
emoji: "\U0001F916"
metadata:
openclaw:
requires:
anyBins: [python3, python]
config: [~/.b2r_token]
primaryEnv: B2R_TOKEN
install:
- kind: uv
package: aiohttp
bins: []
---
# Box2Robot — Robotic Arm Control Skill
Control ESP32-based robotic arms through a cloud server API. Move servos, record trajectories with camera, download datasets, generate replay videos, and orchestrate AI training/inference — all from a single CLI (`b2r.py`).
> **Official skill** published by the Box2Robot team (https://robot.box2ai.com).
## Safety & Supervision
> **This skill controls physical robotic hardware and camera/microphone peripherals.**
>
> - **Human supervision required**: Do NOT run autonomously without operator oversight. Servo torque and motion commands cause physical movement that could injure people or damage objects.
> - **Destructive operations** (`calibrate`) modify hardware state and require explicit user confirmation.
> - **Privacy-sensitive operations** (`snapshot`, `frame`, `record start --cam`) access camera hardware — only invoke with user consent.
> - **No OS shell access**: All operations are HTTP requests to `B2R_SERVER`. No arbitrary OS commands are executed. The only local subprocess is `ffmpeg` (optional, for video generation from downloaded JPEG frames).
> - **Token sensitivity**: `~/.b2r_token` stores a JWT that grants device control. Created with mode 0600 (owner-only). Treat like an SSH key. Delete when no longer needed.
## Credential Flow
```
login → POST /api/auth/login → JWT token
→ saved to ~/.b2r_token (mode 0600, owner-only)
→ all subsequent commands use this token automatically
→ override with B2R_TOKEN env var
→ delete ~/.b2r_token to revoke
```
All network calls go exclusively to `B2R_SERVER` (default: `https://robot.box2ai.com`). No other endpoints are contacted.
## Environment Variables
| Variable | Required | Description | Default |
|----------|----------|-------------|---------|
| `B2R_SERVER` | No | Server URL | `https://robot.box2ai.com` |
| `B2R_TOKEN` | No | JWT token (overrides ~/.b2r_token) | — |
| `B2R_DEVICE` | No | Default device ID (overrides auto-select) | — |
None are strictly required at install time. The `login` command handles authentication interactively and persists the token to `~/.b2r_token`. `B2R_TOKEN` is the primary credential variable and can be set to skip interactive login.
## Setup
```bash
# Install dependency
pip install aiohttp
# Login (one-time, token cached to ~/.b2r_token)
python b2r.py login <username> <password>
```
## Commands
### Device & Status
```bash
b2r.py devices # List devices (* = online)
b2r.py status # Servo positions, load, README.md
# Box2Robot Skills CLI
Standalone single-file CLI for controlling Box2Robot robotic arms. Talks directly to the server HTTP API — no monorepo dependency required.
## Install
### Via ClawHub (recommended for AI agents)
```bash
claw install box2robot
```
### Manual
```bash
pip install aiohttp
```
## Quick Start
```bash
# Login (token saved to ~/.b2r_token)
python b2r.py login <username> <password>
# List devices
python b2r.py devices
# Control
python b2r.py home # Go to home position
python b2r.py move 1 2048 # Move servo #1 to position 2048
python b2r.py move 1 2048 500 # With speed
python b2r.py torque off # Release torque
python b2r.py status # Servo positions/load/temp
python b2r.py snapshot # Camera snapshot
python b2r.py calibrate # Auto-calibrate all servos
```
## Commands
| Command | Description | Example |
|---------|-------------|---------|
| `login [user] [pass]` | Login and save token | `b2r.py login user pass` |
| `devices` | List all devices | `b2r.py devices` |
| `status [device_id]` | Servo status | `b2r.py status` |
| `move <id> <pos> [speed]` | Move a servo | `b2r.py move 1 2048 500` |
| `home` | Go to home position | `b2r.py home` |
| `torque on/off` | Toggle torque | `b2r.py torque off` |
| `record start/stop [name]` | Recording control | `b2r.py record start` |
| `play [traj_id]` | Play trajectory (no args = list) | `b2r.py play` |
| `snapshot [cam_id]` | Camera snapshot | `b2r.py snapshot` |
| `calibrate [servo_id]` | Auto-calibrate (0 = all) | `b2r.py calibrate` |
## Environment Variables
| Variable | Description | Default |
|----------|-------------|---------|
| `B2R_SERVER` | Server URL | `https://robot.box2ai.com` |
| `B2R_TOKEN` | JWT token (overrides ~/.b2r_token) | — |
| `B2R_DEVICE` | Default device ID (overrides auto-select) | — |
## Authentication & Credential Storage
```
login → POST /api/auth/login → JWT token → ~/.b2r_token (JSON)
```
- **`~/.b2r_token`** stores `{ "token": "...", "server": "...", "device": "..." }`.
- Created with owner-only permissions (0600).
- Subsequent commands read this file automatically — no repeated login.
- Override with `B2R_TOKEN` env var. Delete file to revoke.
> **Security note:** The token grants device control access. Treat it like an SSH key.
## API Endpoints Used
| Command | Method | Endpoint |
|---------|--------|----------|
| login | POST | `/api/auth/login` |
| devices | GET | `/api/devices` |
| status | GET | `/api/device/{id}/servos` |
| move | POST | `/api/device/{id}/command` |
| home | POST | `/api/device/{id}/go_home` |
| torque | POST | `/api/device/{id}/torque` |
| record | POST/GET | `/api/device/{id}/record/start\|stop\|status` |
| play | GET/POST | `/api/device/{id}/trajectories`, `.../trajectory/{id}/play` |
| snapshot | POST | `/api/camera/{id}/snapshot` |
| calibrate | POST | `/api/device/{id}/calibrate` |
## Documentation
- `SKILLS.md` — AI Agen_meta.json
{
"ownerId": "kn777etwfpf26jc93enns6ewrd82jp3y",
"slug": "box2robot-skills",
"version": "1.0.9",
"publishedAt": 1777953708832
}skill-card.md
## Description: Control Box2Robot robotic arms through a cloud API for servo movement, camera-assisted trajectory recording, dataset download, video generation, and AI training or inference orchestration. This skill is ready for commercial/non-commercial use. ## Publisher: [boxjod](https://clawhub.ai/user/boxjod) ### License/Terms of Use: MIT-0 ## Use Case: Developers and operators use this skill to let an agent operate Box2Robot robotic arms, collect camera-linked trajectory data, prepare datasets and videos, and coordinate training or deployed inference. It is intended for supervised hardware workflows where the operator approves motion, calibration, camera use, deployment, purchases, and third-party task execution. ### Deployment Geography for Use: Global ## Known Risks and Mitigations: Risk: Physical robot control can move servos, run calibration, and deploy inference in ways that may injure people or damage objects. Mitigation: Use only with human supervision, a cleared workspace, trusted device selection, and explicit approval before motion, calibration, or inference deployment. Risk: The B2R_TOKEN environment variable and ~/.b2r_token file grant device-control access. Mitigation: Treat the token as a sensitive credential, prefer HTTPS server settings, avoid command-line password exposure, and delete or rotate the token when no longer needed. Risk: Camera and microphone related operations can capture private information. Mitigation: Run camera, microphone, recording, and dataset commands only with informed user consent and in an approved environment. Risk: Purchases and third-party task execution may have financial or operational consequences. Mitigation: Require explicit human approval before purchases, store execution, or other third-party task actions. ## Reference(s): - [ClawHub skill page](https://clawhub.ai/boxjod/skills/box2robot-skills) - [Box2Robot homepage](https://robot.box2ai.com) - [README.md](README.md) - [SKILLS.md](SKILLS.md) ## Skill Output: **Output Type(s):** [Guidance, Shell commands, Configuration, API calls, Files] **Output Format:** [Markdown guidance with CLI examples, configuration notes, and JSON-compatible API responses] **Output Parameters:** [1D] **Other Properties Related to Output:** [May create or read local token, dataset, image, and video files during agent-directed Box2Robot workflows.] ## Skill Version(s): 1.0.9 (source: ClawHub release metadata; artifact frontmatter and pyproject.toml list 0.7.0) ## Ethical Considerations: Users should evaluate whether this skill is appropriate for their environment, review any generated or modified files before relying on them, and apply their organization's safety, security, and compliance requirements before deployment.
SKILLS.md
# Box2Robot Skills — AI Agent Reference Manual
> This document is for LLM Agents (Claude / GPT / CLAW etc.) to reference when orchestrating Box2Robot.
> Agents control the robotic arm via the `b2r.py` CLI or HTTP API.
---
## Authentication
```bash
# Login (one-time, token cached to ~/.b2r_token)
python b2r.py login <username> <password>
# Or set environment variables directly
export B2R_SERVER="https://robot.box2ai.com"
export B2R_TOKEN="<jwt_token>"
export B2R_DEVICE="B2R-XXXXXXXXXXXX"
```
Once logged in, all commands carry the token automatically — no repeated authentication needed.
---
## CLI Quick Reference
### Devices
```bash
b2r.py devices # List devices (* = online)
b2r.py status # Current servo positions and torque
```
### Servo Control
```bash
b2r.py torque on # Lock servos
b2r.py torque off # Release (allows manual dragging)
b2r.py home # Safe return to home position
b2r.py move <servo_id> <pos> [spd] # Move a single servo
# Position: 0-4095 (center 2048), Speed: 0-4000 (default 1000)
# 10 degrees ~ 114 counts
```
### Recording & Playback
```bash
b2r.py record start # Start recording
b2r.py record stop [name] # Stop recording
b2r.py record status # Recording status
b2r.py play # List all trajectories
b2r.py play <traj_id> # Play a trajectory
```
### Advanced
```bash
b2r.py exec <action> [params] # Call any Action directly
b2r.py say "natural language" # Natural language execution
b2r.py shell # Interactive shell
```
---
## Action System (79 Actions)
Invoke via `b2r.py exec <action_name>`. Parameters in JSON or key=value format.
### device (Device Management)
| Action | Description |
|--------|-------------|
| `device.list` | List devices |
| `device.status` | Device status (control mode + servos) |
| `device.bind` | Bind device (requires bind_code) |
| `device.unbind` | Unbind device |
| `device.rename` | Rename device |
| `device.wifi_add` | Add WiFi network |
| `device.wifi_clear` | Clear WiFi config |
| `device.factory_reset` | Factory reset |
### servo (Servo Control)
| Action | Parameters | Description |
|--------|------------|-------------|
| `servo.status` | device_id | Read position/load/temperature |
| `servo.move` | device_id, servo_id, position, [speed] | Move single servo |
| `servo.move_batch` | device_id, commands:[{id,position,speed}] | Batch move |
| `servo.torque` | device_id, enable:bool | Toggle torque |
| `servo.go_home` | device_id | Return to home position |
| `servo.release_control` | device_id | Release current control |
| `servo.control_mode` | device_id | Query control mode |
| `servo.set_id` | device_id, old_id, new_id | Burn servo ID |
### recording (Recording & Playback)
| Action | Parameters | Description |
|--------|------------|-------------|
| `record.start` | device_id, [mode], [camerAionUi
Free, local, open-source 24/7 Cowork app and OpenClaw for Gemini CLI, Claude Code, Codex, OpenCode, Qwen Code, Goose CLI, Auggie, and more | 🌟 Star if you like it!
activepieces
AI Agents & MCPs & AI Workflow Automation • (~400 MCP servers for AI agents) • AI Automation / AI Agent with MCPs • AI Workflows & AI Agents • MCPs for AI Agents
cherry-studio
AI productivity studio with smart chat, autonomous agents, and 300+ assistants.
CopilotKit
The Frontend for Agents & Generative UI. React + Angular
Machine-readable data
The same record, as JSON, for agents and crawlers.
{
"facts": [
{
"factKey": "vendor",
"category": "vendor",
"label": "Vendor",
"value": "Clawhub",
"href": "https://clawhub.ai/boxjod/skills/box2robot-skills",
"sourceUrl": "https://clawhub.ai/boxjod/skills/box2robot-skills",
"sourceType": "profile",
"confidence": "medium",
"observedAt": "2026-10-10T11:58:28.239Z",
"isPublic": true
},
{
"factKey": "protocols",
"category": "compatibility",
"label": "Protocol compatibility",
"value": "OpenClaw",
"href": "https://www.xpersona.co/api/v1/agents/clawhub-boxjod-box2robot-skills/contract",
"sourceUrl": "https://www.xpersona.co/api/v1/agents/clawhub-boxjod-box2robot-skills/contract",
"sourceType": "contract",
"confidence": "medium",
"observedAt": "2026-10-10T11:58:28.239Z",
"isPublic": true
},
{
"factKey": "traction",
"category": "adoption",
"label": "Adoption signal",
"value": "1.4K downloads",
"href": "https://clawhub.ai/boxjod/box2robot-skills",
"sourceUrl": "https://clawhub.ai/boxjod/box2robot-skills",
"sourceType": "profile",
"confidence": "medium",
"observedAt": "2026-10-10T11:58:28.239Z",
"isPublic": true
},
{
"factKey": "latest_release",
"category": "release",
"label": "Latest release",
"value": "1.0.9",
"href": "https://clawhub.ai/boxjod/box2robot-skills",
"sourceUrl": "https://clawhub.ai/boxjod/box2robot-skills",
"sourceType": "release",
"confidence": "medium",
"observedAt": "2026-05-05T04:01:48.832Z",
"isPublic": true
},
{
"factKey": "handshake_status",
"category": "security",
"label": "Handshake status",
"value": "UNKNOWN",
"href": "https://www.xpersona.co/api/v1/agents/clawhub-boxjod-box2robot-skills/trust",
"sourceUrl": "https://www.xpersona.co/api/v1/agents/clawhub-boxjod-box2robot-skills/trust",
"sourceType": "trust",
"confidence": "medium",
"observedAt": null,
"isPublic": true
}
],
"events": [
{
"eventType": "release",
"title": "Release 1.0.9",
"description": "- Removed the ACT Skill Store commands and related documentation from the skill description. - Dropped the 'stream' camera command details from the documentation. - Removed reference to the `CHANGELOG.md` file from the project. - No changes to code functionality; only documentation clarified and simplified.",
"href": "https://clawhub.ai/boxjod/box2robot-skills",
"sourceUrl": "https://clawhub.ai/boxjod/box2robot-skills",
"sourceType": "release",
"confidence": "medium",
"observedAt": "2026-05-05T04:01:48.832Z",
"isPublic": true
}
]
}Record generated Oct 10, 2026.
