Skip to main content

Lux3D

Use Lux3D to generate 3D models from images or text (image-to-3D, text-to-3D). Suited for single-object assets; complements AHOLO world-scale 3DGS reconstruction and generation. Trigger when the user asks for image to 3D, text to 3D, prompt to 3D, or creating a 3D model from a description (with or without a reference image).

ItemDescription
PackageLux3d — ClawHub
CapabilitiesImage-to-3D, text-to-3D (optional reference image); async task, poll, download ZIP (GLB, PBR textures, etc.)
Source of truth

This page mirrors the ClawHub skill page; the bundled skill and version updates are authoritative on ClawHub.

What This Skill Does

Lux3D generates 3D assets through two documented asynchronous workflows:

  • Image to 3D: submit an input image, poll the task, then download the ZIP result.
  • Text to 3D: submit a prompt plus style, optionally with a reference image, poll the task, then download the ZIP result.

Both workflows require LUX3D_API_KEY, from labs.aholo3d.com/api-keys.

Install

With OpenClaw installed:

openclaw skills install lux3d

Setup

Apply for an API key:

Set the environment variable before use:

export LUX3D_API_KEY="your_api_key"

Optional API root override:

export LUX3D_BASE_URL="https://api.aholo3d.com/global"

Requirements

pip install Pillow requests

Python Usage

Image to 3D:

from lux3d_client import generate_3d_model

result = generate_3d_model("path/to/input.jpg")
print(result)

Text to 3D:

from lux3d_client import generate_text_to_3d

result = generate_text_to_3d(
"Generate a high-quality 3D wooden chair",
style="photorealistic",
)
print(result)

Text plus reference image:

from lux3d_client import generate_text_to_3d

result = generate_text_to_3d(
"Generate a premium ceramic vase with a glossy glaze",
style="glass",
image_path="path/to/reference.png",
)
print(result)

Low-level task APIs:

from lux3d_client import (
create_task,
create_text_to_3d_task,
query_task_status,
download_model,
)

image_task_id = create_task("path/to/input.jpg")
text_task_id = create_text_to_3d_task(
"Generate a stylized toy robot",
style="cartoon",
image_path="path/to/reference.png",
)

image_model_url = query_task_status(image_task_id)
text_model_url = query_task_status(text_task_id)

download_model(image_model_url, "image_to_3d.zip")
download_model(text_model_url, "text_to_3d.zip")

Command Line Usage

Historical image-to-3D form:

python lux3d_client.py input.jpg output.zip

Explicit image-to-3D command:

python lux3d_client.py image input.jpg output.zip

Text-to-3D command:

python lux3d_client.py text "Generate a high-quality 3D wooden chair" output.zip --style photorealistic

Text-to-3D with a reference image:

python lux3d_client.py text "Generate a futuristic desk lamp" output.zip --style cyberpunk --image ref.png

Text-to-3D Styles

Supported documented styles:

  • photorealistic
  • cartoon
  • anime
  • hand_painted
  • cyberpunk
  • fantasy
  • glass

Output

The result URL typically points to a ZIP file. The package commonly contains:

  • a GLB model file
  • PBR texture assets

The documented result URL validity window is 2 hours.

Notes

  • Authentication uses the Authorization header: Authorization: <apiKey>
  • Image-to-3D and text-to-3D use different create endpoints
  • Both workflows share the same task query endpoint
  • prompt and style are required for text-to-3D
  • img is optional for text-to-3D and should be a full data URL after encoding

References