Skip to content

Getting Started

m4bwav edited this page Oct 12, 2026 · 1 revision

polywright installs as a Claude Code plugin, or as plain skill folders for any agent that reads Agent Skills. The skills install nothing and spend nothing on their own: Blender, ComfyUI and its models, hosted generators and slicers are yours to install.

As a Claude Code plugin

/plugin marketplace add m4bwav/polywright
/plugin install polywright@polywright

Not run by the wiki's verification program; the plugin was installed from a local marketplace on the development machine.

As plain skills

Download polywright-0.1.2.zip from the release, or clone the repository, and link every folder under skills/ into your agent's skills folder: ~/.claude/skills (Claude Code), ~/.agents/skills (Copilot CLI and others), ~/.copilot/skills (VS Code Copilot). Keep all seven together: the siblings run the hub's skills/polywright/scripts/pw.py. The README has the junction and symlink loops for Windows and for macOS and Linux. Only Claude Code was tested.

What pw.py needs

Need For Without it
Python 3.9 or newer everything nothing runs
Blender 4.5 or newer (5.2.1 LTS tested) inspect in full, render, convert, lods, printable, union, bpy, the union step of place inspect falls back to trimesh or a counts-only reader; the others report "Blender not found"
trimesh 3mf, inspect without Blender 3mf reports what to install
numpy and Pillow texture, image padding in gen texture reports what to install
a ComfyUI host with 3D models gen gen reports which hosts it tried

pw.py finds Blender through POLYWRIGHT_BLENDER, then PATH, then the usual install folders (Program Files on any drive and Steam on Windows, /Applications on macOS, snap, /usr/bin and /opt on Linux), newest first; only the Windows folders were tested. POLYWRIGHT_BPY_PYTHON points at a Python that can import bpy instead (the PyPI bpy wheel needs exactly Python 3.13 for Blender 5.2). POLYWRIGHT_COMFYUI lists ComfyUI hosts, comma-separated; the default is http://127.0.0.1:8188.

First commands

pw.py lives at skills/polywright/scripts/pw.py; the commands on this wiki are written as python pw.py ....

python pw.py --version

prints:

0.1.2

Exit code 0.

python pw.py doctor reports Blender's path and version, which Python modules and command-line tools it found, each ComfyUI host and its 3D checkpoints, and a can object saying which commands will work. Its output depends on the machine, so it is not shown here.

Then scaffold an asset folder (The asset contract):

python pw.py new fountain --name Fountain --kind imagined --route generate --targets game-roblox,print-fdm --real-size-m 1.0
{
 "ok": true,
 "dir": "fountain",
 "manifest": "fountain\\manifest.json",
 "layout": {
  "refs/": "reference images, blueprints, textures (each listed in sources)",
  "work/": ".blend and intermediates",
  "out/": "deliverables, one per target",
  "renders/": "review sheets"
 }
}

Exit code 0.

Paths in the output are relative to the folder pw.py ran in, with the operating system's separator (backslashes on Windows, as here).

Clone this wiki locally