Skip to content

MeshCue 1.5.0

Choose a tag to compare

@github-actions github-actions released this 11 Oct 00:26
· 30 commits to main since this release

A minor release with one deliberate behaviour change: every format is now drawn +Z up.

Viewing

  • All formats display +Z up, -Y front, +X right by default. GLB/glTF exported Y-up (the glTF convention) must now be published with up: "y". This is the one approved break in 1.5; everything else below is additive.
  • Orthographic views, CAD-style navigation, a view cube and a Pan tool; reworked Home and fit-to-selection, mouse and touch.
  • Five display styles, source edges and transparency; some view preferences persist.
  • Section view clips picking and mark overlays, with part colours and constant screen-space hatching (open surfaces are not promised a closed cap).
  • Smart measurement picks and pairs objects by default; explicit measurement types stay under Advanced. Readings are review data, not edit targets.
  • Reorganised toolbar menus, tabs, marks/parts sidebar and settings; fixes for narrow screens, menu overlap and consecutive picks.
  • Feature-edge marks and whole-part/group marks, with per-mark colour/letter display, leaders and surface anchors.
  • Interactive assembly explode with cached, two-level collision-free targets; marks keep their own geometry frame.
  • Optional performance overlay, first-use hints and update notices; consistent short labels across six languages.

Import and parts

  • Offline decoding of Draco, Meshopt and quantized GLB; a glTF with local resources in its folder is packed into one immutable GLB.
  • Triangle strips and fans are accepted; skipped lines and points are reported to the Agent. The texture budget counts decoded GPU bytes, not compressed file size.
  • STEP assembly hierarchy is preserved, with part visibility and transparency, and optional Agent-supplied part groups shown alongside the file's own tree.

Agent interface

  • OpenClaw, MCP and CLI share one contract source. Action and field references in AGENT-INTERFACE.md are generated from it, gaps such as retain on OpenClaw are filled, and discovery schemas are about two thirds smaller while the runtime still validates strictly. Unknown fields are now refused on every entry.
  • open prechecks the mesh and refuses an over-limit file before starting or changing anything, with a structured remediation (decimate, smaller file, fewer textures, re-export geometry). Limits are unchanged.
  • status.viewer reports whether a client has loaded the current version since this open (for STEP, by the converted mesh's SHA). This proves loading, not that a person has looked or agreed.
  • read.gates states whether a batch was sealed by the system, refers to an older version, has notes, and whether confirmation is required before any change.
  • The rule everywhere is now the same: echo what you understood and wait for the user's confirmation before changing the model; once confirmed, publish the next version normally. The batch push no longer says "do not replace the model".
  • status.state distinguishes running, stopped and idle-stopped, with what to do next; idle-stop records are bound to the service launch that wrote them.
  • On Windows, an npm-installed openclaw.cmd is run through Node and its verified JS entry point, never through cmd, so arguments containing & | ^ % ", < > or newlines arrive unchanged. An unrecognised shim fails closed.
  • New CLI/MCP reviews bind to loopback unless a host is given.

Coordinates and rotated review copies

  • Every position in read is labelled with its coordinateSpace. Pins and painted patches, which are mesh-local, also return filePosition, fileNormal and fileVertices, so nested GLB nodes no longer need converting by hand. Existing fields and values, including space: "model", are unchanged.
  • open.sourceTransform registers a rigid rotation (and optional translation) from a source model to the review copy. read then returns source* fields for editing the original. Scale, shear and mirroring are refused. The same bytes with a different registration are a separate version.
  • AGENT-INTERFACE.md now says how to decide which way is up from what the model is, not from export axes, and how to publish a rotated review copy.

Agent guide and help

  • The Skill is now a rule card (R1-R10) plus publish / receive / revise / recovery flows, about 10k characters instead of 18k. MCP initialize sends only the card and document paths (about 2.4k); set MESHCUE_FULL_INSTRUCTIONS=1 to get the full text.
  • Reviewer help in all six languages matches the contract: the Agent explains and waits for confirmation before changing the model; tabs list the versions currently visible (old ones can be hidden, never deleted); STEP originals are delivered by the Agent in conversation; limits are 80 MiB and 600,000 triangles.
  • open.reviewLifetime describes the idle policy actually in force.

Unchanged

  • Claude Code, Codex and the CLI still cannot be woken by a submission: the page offers a sentence to paste into the conversation. OpenClaw delivers it automatically.

Tested

  • macOS: Node 24 and 22 unit/integration suites, the full real-Chromium suite, package build and package smoke test.
  • Real Windows 11: the full Chromium suite (one screenshot comparison failed once and passed when run alone), and a real npm-generated openclaw.cmd passing 11 metacharacter arguments unchanged. Several Node tests still assume POSIX and fail on Windows, as in 1.4.2; they do not affect the product.
  • Cold sessions with two agent models across seven review scenarios: the stronger model completed publish, echo, confirmation and revision, with exact source-coordinate conversion; the weaker one did not finish the multi-turn flow. No wording or interface conflict was found.

Not claimed: an installed OpenClaw 1.5 acceptance run before this tag, real old MCP clients, generic STEP placement and unit correctness, 3MF, animated or skinned models.

This release is commit d436f35.