← Aholo Lux3DCONTENT HISTORYWHAT CHANGED · RULE-BASED ANALYSIS
Update to Aholo Lux3D
Snapshot Sep 30, 2026 · 23:15 UTC · version 0.1.1
Collection source: not recorded for this historical snapshot.
First saved snapshot
No earlier snapshot is available to establish a change.
Compare saved observations
Download comparison JSONFull technical diff · 0 changed fields
Full snapshot data
{
"name": "lux3d",
"description": "Use Lux3D to generate or process 3D assets, resume existing tasks, and deliver verified source files with an offline preview. Use when the user requests Lux3D creation, asset delivery or project integration; assemble scenes with local Blender or an available Blender MCP.",
"included_files": [
{
"relative_path": "agents/openai.yaml",
"size_in_bytes": 323
},
{
"relative_path": "body.md",
"size_in_bytes": 6479
},
{
"relative_path": "core/contracts/examples/delivery-spec.json",
"size_in_bytes": 547
},
{
"relative_path": "core/contracts/lux3d-commerce.v1.json",
"size_in_bytes": 12028
},
{
"relative_path": "core/contracts/lux3d-generation.v1.json",
"size_in_bytes": 12563
},
{
"relative_path": "core/contracts/lux3d-workflow.v2.json",
"size_in_bytes": 5485
},
{
"relative_path": "core/contracts/scene-delivery.md",
"size_in_bytes": 5124
},
{
"relative_path": "core/contracts/task-metadata.md",
"size_in_bytes": 1647
},
{
"relative_path": "core/runtime/artifact_delivery.py",
"size_in_bytes": 18595
},
{
"relative_path": "core/runtime/asset_uploader.py",
"size_in_bytes": 12853
},
{
"relative_path": "core/runtime/commerce_client.py",
"size_in_bytes": 17790
},
{
"relative_path": "core/runtime/delivery_bundle.py",
"size_in_bytes": 24665
},
{
"relative_path": "core/runtime/lux3d_client.py",
"size_in_bytes": 53861
},
{
"relative_path": "core/runtime/offline_preview.py",
"size_in_bytes": 2428
},
{
"relative_path": "core/runtime/requirements.txt",
"size_in_bytes": 20
},
{
"relative_path": "core/runtime/task_metadata.py",
"size_in_bytes": 3113
},
{
"relative_path": "core/runtime/workflow_contracts.py",
"size_in_bytes": 15627
},
{
"relative_path": "core/runtime/workflow_ports.py",
"size_in_bytes": 2174
},
{
"relative_path": "core/runtime/workflow_runner.py",
"size_in_bytes": 34418
},
{
"relative_path": "core/viewer/APACHE-2.0.txt",
"size_in_bytes": 11399
},
{
"relative_path": "core/viewer/THIRD_PARTY_NOTICES.txt",
"size_in_bytes": 12960
},
{
"relative_path": "core/viewer/decoders.json",
"size_in_bytes": 1114627
},
{
"relative_path": "core/viewer/locales/en.json",
"size_in_bytes": 4120
},
{
"relative_path": "core/viewer/locales/zh-CN.json",
"size_in_bytes": 4027
},
{
"relative_path": "core/viewer/lux3d-icon.png",
"size_in_bytes": 27175
},
{
"relative_path": "core/viewer/lux3d-logo.png",
"size_in_bytes": 214349
},
{
"relative_path": "core/viewer/style.css",
"size_in_bytes": 13443
},
{
"relative_path": "core/viewer/template.html",
"size_in_bytes": 3149
},
{
"relative_path": "core/viewer/viewer.bundle.js",
"size_in_bytes": 728861
},
{
"relative_path": "core/viewer/viewer.js",
"size_in_bytes": 14307
},
{
"relative_path": "references/assembly.md",
"size_in_bytes": 7218
},
{
"relative_path": "references/blender-collaboration.md",
"size_in_bytes": 3633
},
{
"relative_path": "references/execution.md",
"size_in_bytes": 16580
},
{
"relative_path": "references/planning.md",
"size_in_bytes": 17100
},
{
"relative_path": "references/results.md",
"size_in_bytes": 9477
},
{
"relative_path": "references/review.md",
"size_in_bytes": 14090
},
{
"relative_path": "scripts/commerce.py",
"size_in_bytes": 7576
},
{
"relative_path": "scripts/setup_runtime.py",
"size_in_bytes": 3426
}
],
"skill_md_contents": "---\nname: lux3d\ndescription: \"Use Lux3D to generate or process 3D assets, resume existing tasks, and deliver verified source files with an offline preview. Use when the user requests Lux3D creation, asset delivery or project integration; assemble scenes with local Blender or an available Blender MCP.\"\n---\n\n# Aholo Lux3D\n\nRead [the production workflow](body.md), then load the reference for the current\nstage. Use the bundled runtime from this installed Skill, resolving commands\nagainst its actual directory rather than another Lux3D checkout or cached Skill.\n\nKeep shipped instructions in English; communicate, clarify and summarize in the\nuser's language. Codex owns intent, project inspection and user authorization.\nCodex also records submissions and resumes their task IDs. The runtime provides\nAPI validation, generation calls, task queries and deterministic delivery.\n\n## Prepare Python before using tools\n\nThis is the `aholo-lux3d:lux3d` Skill. The older `lux3d-workflow` plugin is a\nseparate installation; use this Skill's files when the user selects this plugin.\n\nBefore the first Python tool call, run:\n\n```text\npython3 <installed-skill>/scripts/setup_runtime.py\n```\n\nOn Windows, use an available Python 3 launcher instead of `python3`. The setup\ncommand creates or reuses a private environment, installs the bundled runtime's\ndeclared dependencies, and returns its absolute `python` path as JSON. Use that\ninterpreter for bundled Lux3D scripts and Python API calls. Local Blender scripts\nrun inside Blender with its own embedded Python, as described in the assembly reference.\nReuse it while it remains available. Setup does not call Lux3D or require an API key.\n\nFor `CLI_DEPENDENCY_MISSING`, rerun setup and retry the original action with the\nreturned interpreter. If installation fails, report the dependency setup issue\nand preserve the request. A Python import failure does not mean the API key is\ninvalid or that generation tools are absent. Bundled command-line tools are\nusable tools even when there is no corresponding MCP tool. Check their actual\nentrypoints and errors before declaring a capability unavailable.\n\n## Account and quote tools\n\nRun the bundled `scripts/commerce.py` with an explicit region. Configure\n`LUX3D_CN_API_KEY` for `cn` or `LUX3D_GLOBAL_API_KEY` for `international` in secure\nenvironment configuration; never put keys in command arguments or quote files.\nThe Codex release unit's `adapter.json` fixes `source=1` and the CLI rejects\nsource overrides. Requests use public OpenAPI with raw API-key Authorization.\nThe runtime selects the regional domain and adds `/global` only to international\nHTTP request paths. Quote-item `endpoint.path` stays `/lux3d/v1/...` in both\nregions; see `core/contracts/lux3d-generation.v1.json` for endpoint definitions.\n\n```text\npython <installed-skill>/scripts/commerce.py balance --region cn\npython <installed-skill>/scripts/commerce.py quote --region cn --items <items.json>\n```\n\nThe quote file is the sequence-keyed `items` map described in\n[planning](references/planning.md), without a `source/uniqueId/items` envelope.\nParameter groups may be objects or serialized JSON Strings. The command checks\ninput, refreshes the balance, then quotes with the server-issued `uniqueId`.\nIt returns `{account, quote}`; balance alone returns the account snapshot.\nErrors are safe JSON on stderr with nonzero exit status, never zero-cost facts.\nThis tool does not submit generation tasks or approve spending. Before submitting,\nCodex checks that the successful quote is still valid and matches the actual work,\nthen applies the approval rules. Follow [execution](references/execution.md) to\ncall the existing client submission functions and save each task ID. This path\ndoes not require the unfinished workflow runner adapters; it also does not claim\nruntime-enforced approval, budget limits or duplicate-submission protection.\n\n## Delivery\n\nFor local outputs, follow [results and delivery](references/results.md).\nDeliver all items and an optional assembled scene in one self-contained\n`preview.html`, with originals and `lux3d-delivery.json`. For a scene request,\nread [model assembly](references/assembly.md) and\n[external Blender collaboration](references/blender-collaboration.md). Codex can\nrun local Blender with a Python script or use an available Blender MCP. This\nplugin supplies neither Blender nor an MCP server; MCP is not a prerequisite.\n\nProvide links or paths to the model files and final HTML; do not open the preview\nautomatically. When the user asks to view it, use an available file/browser viewer.\nReport only checks actually performed. A successful download, fixture test,\nsupplied tool record or generated HTML is not by itself full acceptance.\nKeep already completed assets available if an external capability is missing.\n"
}SHA-256: 6d0bd05ad7ed6dd42be5baac8637265815e75c07c11c5145a9619ec5050a811d