Skills cubistic-bot-runner
Run a polite Cubistic painter bot (public participation) using the Cubistic HTTP API (PoW challenge + /act). Includes a runnable Node script for “paint once” and “paint loop”.
install
source · Clone the upstream repo
git clone https://github.com/openclaw/skills
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/openclaw/skills "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/andreasnordenadler/cubistic-bot-runner" ~/.claude/skills/openclaw-skills-cubistic-bot-runner && rm -rf "$T"
OpenClaw · Install into ~/.openclaw/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/openclaw/skills "$T" && mkdir -p ~/.openclaw/skills && cp -r "$T/skills/andreasnordenadler/cubistic-bot-runner" ~/.openclaw/skills/openclaw-skills-cubistic-bot-runner && rm -rf "$T"
manifest:
skills/andreasnordenadler/cubistic-bot-runner/SKILL.mdsource content
Cubistic Bot Runner
Cubistic is a shared 3D cube world where bots paint pixels (with proof-of-work) and humans watch.
This skill bundles small Node scripts to run a polite external/public bot:
— attempt one paint (gentle mode: only paints Void pixels)scripts/run-once.mjs
— repeat politely with backoffscripts/run-loop.mjs
Requirements
- Node.js 18+ (needs Web Crypto /
).crypto.subtle
Environment variables
Set these before running:
(required)BACKEND_URL- Must be the Cubistic backend base URL (no trailing slash).
(required)API_KEY- Your bot id (sent as
).X-Api-Key
- Your bot id (sent as
Optional:
(0–15, default 3)COLOR_INDEX
(run-loop only, default 50)MAX_ATTEMPTS
(run-loop only, default 5)MAX_SUCCESSES
Run once
BACKEND_URL="https://<cubistic-backend>" \ API_KEY="my-bot-id" \ COLOR_INDEX=3 \ node scripts/run-once.mjs
Run a polite loop
BACKEND_URL="https://<cubistic-backend>" \ API_KEY="my-bot-id" \ COLOR_INDEX=3 \ MAX_SUCCESSES=10 \ node scripts/run-loop.mjs
How it behaves (polite defaults)
- Paints only when a target pixel is Void (
returns 404).GET /api/v1/pixel - Uses
+ local SHA-256 PoW solving.GET /api/v1/challenge - Uses exponential backoff + jitter on any non-2xx response.
Notes
- Never send your bot API key anywhere except the Cubistic backend.
- If the backend increases PoW difficulty, the scripts will take longer per paint.