Skip to content

Repository files navigation

Clawd Mascot — 3D Print Files

A 3D-printable desk figurine of Clawd, the pixel-art Claude Code mascot from the "Welcome, Claw'd" screen: blocky rectangular body, two square eyes, stubby side arms, and four legs (with the sprite's signature wider gap before the right-most leg).

Clawd preview

Files

File Description
clawd.stl Ready-to-slice binary STL (watertight, single manifold)
clawd_eye_inserts.stl Optional: two square plates to print in black and glue into the eye pockets
generate_clawd.py Parametric generator — edit and re-run to tweak the model
preview.png Rendered preview
clawd_wave.stl Variant: right arm raised in a pixel-staircase wave
clawd_wink.stl Variant: right eye winking (horizontal slit pocket)
clawd_chonk.stl Variant: bigger and twice as thick — a chunky desk piece
clawd_keychain.stl Variant: 37 mm wide, 4 mm thin, split-ring loop on top
generate_variants.py Parametric generator for all four variants
render_preview.py Renders preview_variants.png from the generators
preview_variants.png Rendered preview of the variants

Variants

Variants preview

All four are watertight and exported lying on their backs like the original, so they print flat with no supports:

  • wave (96 × 71 × 15 mm) — same scale as the original, right arm raised above the head as a staircase of pixel blocks.
  • wink (82 × 60 × 15 mm) — identical body, right eye pocket is a slit. The original clawd_eye_inserts.stl square still fits the open left eye.
  • chonk (112 × 82 × 34 mm) — scaled up 1.4× and more than twice as thick, with deeper 2 mm eye pockets. ~218 cm³, so keep infill low (8–10 %) unless you want a paperweight.
  • keychain (37 × 35 × 4 mm) — palm-sized with a fused hanging loop (5 mm ring hole, fits a standard split ring). Eyes are shallow 0.8 mm pockets — color them with a black marker.

Model stats

  • Standing size: 81.6 mm wide × 59.6 mm tall × 15 mm thick
  • Exported lying on its back (face up) — already in print orientation
  • Eyes are 1.2 mm recessed pockets, so they read as dark squares by shadow alone
  • Watertight, winding-consistent single shell — passes slicer sanity checks

Suggested print settings

  • Material: any (PLA is fine) — terracotta / burnt orange, obviously
  • Layer height: 0.2 mm
  • Infill: 10–15 %
  • Supports: none. The model prints flat on its back; every feature is in-plane. Stand it up on its legs after printing.
  • Black eyes: three easy options —
    1. leave the pockets as-is (shadow makes them read dark),
    2. color them in with a black paint marker (simplest), or
    3. print clawd_eye_inserts.stl in black and glue the two squares into the pockets (they have 0.15 mm clearance per side).
  • Scaling: scale freely — it's a solid slab, so any size prints fine.

Regenerating / customizing

pip install numpy trimesh manifold3d
python3 generate_clawd.py clawd.stl
python3 generate_variants.py

The sprite geometry is a handful of axis-aligned rectangles declared at the top of generate_clawd.py (traced from the welcome-screen artwork), plus SCALE, THICKNESS, and EYE_DEPTH knobs. The script asserts the mesh is watertight before exporting. generate_variants.py shares the same sprite constants; each variant is a parameter set in its VARIANTS dict (scale, thickness, eye style, wave arm, hanging loop), so new combinations — a chonk that waves, a winking keychain — are one-line edits. Re-render the preview grid with:

pip install matplotlib
python3 render_preview.py