A production-ready desktop pet sprite run for OpenClaw.
Friendly lobster anatomy, compact Codex pet proportions, transparent frames, and validated sprite-sheet output.
OpenClaw Pet is the generated animation package for OpenClaw, a red/coral lobster desktop pet designed for readable 192 x 208 sprite cells. The set keeps the brand's raised claw silhouette, antennae, teal eye highlights, segmented body, and cheerful helper expression while staying small enough for desktop overlays and pet runtimes.
The repository includes the final atlas, individual extracted frames, prompt records, QA videos, reference art, layout guides, and validation metadata.
| Asset | Path | Notes |
|---|---|---|
| WebP atlas | final/spritesheet.webp |
Primary runtime asset, RGBA, 1536 x 1872 |
| PNG atlas | final/spritesheet.png |
Lossless fallback, RGBA, 1536 x 1872 |
| Contact sheet | qa/contact-sheet.png |
Quick visual review of all states |
| Extracted frames | frames/ |
57 transparent PNG frames at 192 x 208 |
| QA loops | qa/videos/ |
MP4 previews for every state |
| Validation report | final/validation.json |
Machine-readable atlas validation |
The final sheet uses an 8-column by 9-row atlas. Each cell is 192 x 208 pixels.
| Row | State | Frames | Purpose |
|---|---|---|---|
| 0 | idle |
6 | Neutral breathing and blinking loop |
| 1 | running-right |
8 | Rightward locomotion loop |
| 2 | running-left |
8 | Leftward locomotion loop |
| 3 | waving |
4 | Raised claw greeting and return |
| 4 | jumping |
5 | Anticipation, lift, peak, descent, settle |
| 5 | failed |
8 | Sad or deflated reaction |
| 6 | waiting |
6 | Patient waiting loop with small motion |
| 7 | running |
6 | Generic in-place running loop |
| 8 | review |
6 | Focused inspecting or review loop |
Unused trailing cells in shorter rows are transparent.
Use the row index for the animation state and the frame index for the column.
const CELL_WIDTH = 192;
const CELL_HEIGHT = 208;
const states = {
idle: { row: 0, frames: 6 },
"running-right": { row: 1, frames: 8 },
"running-left": { row: 2, frames: 8 },
waving: { row: 3, frames: 4 },
jumping: { row: 4, frames: 5 },
failed: { row: 5, frames: 8 },
waiting: { row: 6, frames: 6 },
running: { row: 7, frames: 6 },
review: { row: 8, frames: 6 },
};
function frameRect(state: keyof typeof states, frame: number) {
const meta = states[state];
const column = frame % meta.frames;
return {
x: column * CELL_WIDTH,
y: meta.row * CELL_HEIGHT,
width: CELL_WIDTH,
height: CELL_HEIGHT,
};
}For CSS sprite rendering, offset the background by -x and -y from the rectangle above.
The final validation report passes with no errors or warnings.
- Atlas format:
WEBP - Color mode:
RGBA - Atlas size:
1536 x 1872 - Cell size:
192 x 208 - Extracted frames:
57 - Chroma key source:
#FF00FF - Edge contact:
0edge pixels reported in reviewed frames
.
|-- decoded/ # Decoded generated strips and base image
|-- final/ # Runtime atlases and validation output
|-- frames/ # Per-state transparent PNG frames
|-- prompts/ # Base and row-level generation prompts
|-- qa/ # Contact sheet, review JSON, and MP4 previews
|-- references/ # Source references and layout guides
|-- imagegen-jobs.json # Generation job record
`-- pet_request.json # Pet identity, atlas spec, style notes, and rows
OpenClaw is built as a compact desktop companion rather than a glossy icon. The sprite style favors a thick dark outline, stepped pixel edges, flat cel shading, and a limited red/coral palette. The anatomy stays lobster-specific: elongated segmented body, tail fan, raised open claws, antennae, small walking legs, and black eyes with teal highlights.
Preview the state loops from qa/videos when tuning animation timing. Use qa/contact-sheet.png for a fast visual pass across the whole set. Use final/spritesheet.webp in production unless your target runtime requires PNG.
No license file is currently included. Add one before publishing these assets for third-party reuse.
