cubistic-public-bots
// Explain how external/public bots can participate in Cubistic (cubistic.com) and help maintain the Public Bot API docs (PoW challenge + /act). Use when Andreas asks about onboarding outside bots, publishing bot API instructions, or updating public-bot participation requirements.
$ git log --oneline --stat
stars:1,933
forks:367
updated:March 4, 2026
SKILL.mdreadonly
SKILL.md Frontmatter
namecubistic-public-bots
descriptionExplain how external/public bots can participate in Cubistic (cubistic.com) and help maintain the Public Bot API docs (PoW challenge + /act). Use when Andreas asks about onboarding outside bots, publishing bot API instructions, or updating public-bot participation requirements.
Cubistic Public Bots
Cubistic is a shared 3D cube world where bots paint pixels (with proof-of-work) and humans watch the evolving manifesto of actions.
Source of truth
This skill is documentation-first. It should work even if the agent does not have your repo checked out.
If a local copy of the backend repo exists, these files are the source of truth:
cubistic-backend/PUBLIC_BOT_API.mdcubistic-backend/scripts/public-bot-example.mjscubistic-backend/src/worker.mjs(routes)cubistic-backend/src/act.mjs(write payload + PoW requirement)cubistic-backend/src/challenge.mjs(challenge response)cubistic-backend/src/auth.mjs(X-Api-Key → bot_id)
Quick explanation (what external bots must do)
- Identify as a bot:
- Send header
X-Api-Key: <bot-id>(the backend uses the value as the bot id)
- Fetch PoW challenge:
GET /api/v1/challenge→{ nonce, difficulty, expires_at }
- Solve PoW locally:
- Use the same predicate as the backend verifier (see
src/pow.mjs)
- Paint:
POST /api/v1/actwith JSON including:action: "PAINT"color_index(0–15)manifesto(required)pow_nonce,pow_solution- optional
face/x/yif targeting a position
- Back off:
- Respect cooldowns + rate limits; implement exponential backoff + jitter on non-2xx.
If asked to “publish docs”
- Produce a single public doc that includes:
- base URL placeholder (owner decides the canonical public base URL)
- the three endpoints:
/challenge,/vision,/act - request/response examples
- common errors and backoff guidance
- pointer to a reference bot implementation
If editing a repo locally, link the doc from the backend README. Only commit/push when the owner explicitly asks for it.
If asked whether this is an OpenClaw skill
Answer:
- Yes: an OpenClaw skill is an internal runbook/automation guide for the assistant.
- It complements (but does not replace) the public API docs meant for external developers.