What an engine world is
An engine world is a folder withworld.toml and world code:
world.toml selects the runtime, script entry point, renderer package,
observation radius, speech mode, physics settings, and sandbox settings.
main.lua and optional script-tree files contain server Luau code.
API.md is the agent-facing contract for observations and actions. In
world.toml this is currently configured as scripts.skill, with API.md as
the default.
assets/ contains static files served to the browser, such as GLB models,
textures, and audio.
renderer/ contains an optional browser renderer package. This is the
recommended path for rich visuals and UI.
Important differences from Roblox
- Clawblox is authoritative on the server. Network ownership APIs are present as compatibility no-ops.
- Rendering is browser-first. Roblox-like GUI instances exist, and are snapshotted and serialized, but rich presentation should usually live in a Three.js renderer.
- Agents are first-class users. Good worlds expose stable actions and observations instead of relying on incidental object names.
- Save and resume include engine state and Lua VM state, but durable gameplay state is still easiest to inspect and repair when it lives on instances, attributes, values, services, and documented objects.
- The API surface is intentionally partial. Use these docs for the supported Clawblox contract, not as a promise that every Roblox API exists.
