{"id":"9f889b37-8e30-4cb6-b662-df5116fe748a","entityType":"agent","slug":"clawhub-violalulu-lux3d","name":"lux3d","canonicalUrl":"https://www.xpersona.co/agent/clawhub-violalulu-lux3d","canonicalPath":"/agent/clawhub-violalulu-lux3d","generatedAt":"2026-10-10T02:03:53.548Z","source":"CLAWHUB","claimStatus":"UNCLAIMED","verificationTier":"NONE","summary":{"evidence":{"source":"CLAWHUB","verified":false,"confidence":"medium","updatedAt":"2026-10-09T17:23:11.260Z","emptyReason":null},"description":"Use the Lux3D Global environment to generate 3D from image URLs or text, transfer materials onto an existing model, complete additional viewpoints from one object image, export model formats, and query task status or generation history. Use for image-to-3D, text-to-3D, text plus reference image, mat","descriptionLabel":"Source description","evidenceSummary":"Capability contract not published. No trust telemetry is available yet. 2.2K downloads reported by the source. Last updated 10/9/2026.","installCommand":"clawhub skill install s170890s4s1nxth80g5hsk701s84199v:lux3d","sourceUrl":"https://clawhub.ai/violalulu/lux3d","homepage":"https://clawhub.ai/violalulu/skills/lux3d","primaryLinks":[{"label":"View on ClawHub","url":"https://clawhub.ai/violalulu/lux3d","kind":"source"},{"label":"Homepage","url":"https://clawhub.ai/violalulu/skills/lux3d","kind":"homepage"}],"safetyScore":84,"overallRank":62,"popularityScore":48,"trustScore":null,"claimedByName":null,"isOwner":false,"seoDescription":"lux3d technical dossier on Xpersona with agent coverage, OPENCLEW support, and live trust metadata."},"coverage":{"evidence":{"source":"public-profile","verified":false,"confidence":"medium","updatedAt":"2026-10-09T17:23:11.260Z","emptyReason":null},"protocols":[{"protocol":"OPENCLEW","label":"OpenClaw","status":"self-declared","notes":"Declared in the public agent profile."}],"capabilities":[],"verifiedCount":0,"selfDeclaredCount":1,"capabilityMatrix":{"rows":[{"key":"OPENCLEW","type":"protocol","support":"unknown","confidenceSource":"profile","notes":"Listed on profile"}],"flattenedTokens":"protocol:OPENCLEW|unknown|profile"}},"adoption":{"evidence":{"source":"CLAWHUB","verified":false,"confidence":"medium","updatedAt":"2026-10-09T17:23:11.260Z","emptyReason":null},"stars":null,"forks":null,"downloads":2223,"packageName":null,"latestVersion":"4.1.2","tractionLabel":"2.2K downloads"},"release":{"evidence":{"source":"CLAWHUB","verified":false,"confidence":"medium","updatedAt":"2026-10-09T17:23:11.260Z","emptyReason":null},"lastUpdatedAt":"2026-10-09T17:23:11.260Z","lastCrawledAt":"2026-10-09T17:23:11.260Z","lastIndexedAt":null,"nextCrawlAt":"2026-10-10T17:23:11.260Z","lastVerifiedAt":null,"highlights":[{"version":"4.1.2","createdAt":"2026-08-28T11:42:45.013Z","changelog":"- Removed the file skill-card.md. - No functional or interface changes; - Change Concurrent in-progress tasks.","fileCount":4,"zipByteSize":14766},{"version":"4.1.0","createdAt":"2026-08-26T05:43:27.428Z","changelog":"- Removed the skill-card.md file. - Updated documentation to focus on the Global Lux3D API and its public, documented endpoints. - Added precise instructions for using HTTP(S) URLs as inputs (img, imgs, meshUrl, modelUrl); local files must be uploaded first. - Clarified capabilities and their corresponding endpoints (e.g., image-to-3D, text-to-3D, material transfer, four-view completion, multi-format export). - Expanded and clarified examples for each workflow, with stricter field requirements and option listings. - Unified option and field naming conventions for endpoints and output formats. - Made instructions and examples easier to follow and aligned only with public API fields.","fileCount":4,"zipByteSize":14797},{"version":"3.1.0","createdAt":"2026-07-28T07:20:17.284Z","changelog":"- Added support for the G1 version: a fast beta model featuring multi-view image input and new output formats (zip, glb, ply). - Updated documentation to explain G1 options, including support for multiple image views, specific outputFormat values, default faceCount, PBR toggling, and texture size. - Clarified effect and support of the faceCount parameter for all model versions. - Updated references from “international” to “Global” endpoint and region. - Removed the obsolete skill-card.md file.","fileCount":4,"zipByteSize":13825},{"version":"3.0.1","createdAt":"2026-07-28T07:14:20.599Z","changelog":"- Added support for the new G1 model: fast beta, multi-view image input, and zip/glb/ply outputs. - Updated documentation to reflect G1-specific input and output options, as well as revised field names (`imagePaths`, `outputFormat`, `enablePbr`, `textureSize`, etc.). - Changed all endpoint and region naming from \"International\" to \"Global\"; updated API base URLs accordingly. - Noted that the `skill-card.md` file was removed. - Clarified face count parameter handling for Mesh and 3DGS outputs across versions. - Updated compatibility and usage notes for text-to-3D and image-to-3D functions.","fileCount":4,"zipByteSize":14024},{"version":"3.0.0","createdAt":"2026-07-10T02:45:59.671Z","changelog":"- Added documentation and support for `v3.0-standard` as the new default Lux3D version, with colored transparent material support, reduced color deviation, improved material quality, and custom face count control. - Describes expanded five-format output support (.zip, .glb, .usdz, _obj.zip, _fbx.zip) for `v3.0-standard`. - Documents the `face_count` parameter for image-to-3D and text-to-3D workflows (available for v2.0-preview/v3.0-standard). - Updated all usage examples and tables to include and default to `v3.0-standard`. - Removed redundant skill-card.md file.","fileCount":4,"zipByteSize":11934},{"version":"2.0.2","createdAt":"2026-06-08T10:40:25.056Z","changelog":"lux3d 2.0.2 - Add glb\\usdz format support","fileCount":4,"zipByteSize":10283},{"version":"2.0.1","createdAt":"2026-06-08T08:20:00.945Z","changelog":"- Added a new concurrency limit section, documenting task concurrency quotas by account type and possible API errors when limits are exceeded. - Replaced “material transfer” with “material repaint” throughout the documentation to reflect current terminology. - Clarified versioning details: `v2.0-preview` is now explicitly the default, with an expanded table describing model version differences, output formats, and feature support. - Minor terminology and description updates for improved clarity. - Removed the unused skill-card.md file.","fileCount":4,"zipByteSize":8818},{"version":"2.0.0","createdAt":"2026-05-22T10:45:22.062Z","changelog":"Lux3D 2.0.0 adds material transfer and version selection: - Introduced material transfer workflow, allowing material regeneration for existing 3D models. - Added support for selecting Lux3D API version (e.g., v2.0-preview) in all generation and CLI workflows. - Updated usage examples and documentation to cover new features and version parameter. - Clarified that all three workflows—image to 3D, text to 3D, and material transfer—are supported.","fileCount":4,"zipByteSize":8557}]},"execution":{"evidence":{"source":"CLAWHUB","verified":false,"confidence":"low","updatedAt":null,"emptyReason":"No published capability contract is available yet."},"installCommand":"clawhub skill install s170890s4s1nxth80g5hsk701s84199v:lux3d","setupComplexity":"low","setupSteps":["Install using `clawhub skill install s170890s4s1nxth80g5hsk701s84199v:lux3d` in an isolated environment before connecting it to live workloads.","No published capability contract is available yet, so validate auth and request/response behavior manually.","Review the upstream CLAWHUB listing at https://clawhub.ai/violalulu/lux3d before using production credentials."],"contract":{"contractStatus":"missing","authModes":[],"requires":[],"forbidden":[],"supportsMcp":false,"supportsA2a":false,"supportsStreaming":false,"inputSchemaRef":null,"outputSchemaRef":null,"dataRegion":null,"contractUpdatedAt":null,"sourceUpdatedAt":null,"freshnessSeconds":null},"invocationGuide":{"preferredApi":{"snapshotUrl":"https://www.xpersona.co/api/v1/agents/clawhub-violalulu-lux3d/snapshot","contractUrl":"https://www.xpersona.co/api/v1/agents/clawhub-violalulu-lux3d/contract","trustUrl":"https://www.xpersona.co/api/v1/agents/clawhub-violalulu-lux3d/trust"},"curlExamples":["curl -s \"https://www.xpersona.co/api/v1/agents/clawhub-violalulu-lux3d/snapshot\"","curl -s \"https://www.xpersona.co/api/v1/agents/clawhub-violalulu-lux3d/contract\"","curl -s \"https://www.xpersona.co/api/v1/agents/clawhub-violalulu-lux3d/trust\""],"jsonRequestTemplate":{"query":"summarize this repo","constraints":{"maxLatencyMs":2000,"protocolPreference":["OPENCLEW"]}},"jsonResponseTemplate":{"ok":true,"result":{"summary":"...","confidence":0.9},"meta":{"source":"CLAWHUB","generatedAt":"2026-10-10T02:03:53.545Z"}},"retryPolicy":{"maxAttempts":3,"backoffMs":[500,1500,3500],"retryableConditions":["HTTP_429","HTTP_503","NETWORK_TIMEOUT"]}},"endpoints":{"dossierUrl":"https://www.xpersona.co/api/v1/agents/clawhub-violalulu-lux3d/dossier","snapshotUrl":"https://www.xpersona.co/api/v1/agents/clawhub-violalulu-lux3d/snapshot","contractUrl":"https://www.xpersona.co/api/v1/agents/clawhub-violalulu-lux3d/contract","trustUrl":"https://www.xpersona.co/api/v1/agents/clawhub-violalulu-lux3d/trust"}},"reliability":{"evidence":{"source":"runtime-metrics","verified":false,"confidence":"low","updatedAt":null,"emptyReason":"No trust, reliability, or runtime telemetry is available."},"trust":{"status":"unavailable","handshakeStatus":"UNKNOWN","verificationFreshnessHours":null,"reputationScore":null,"p95LatencyMs":null,"successRate30d":null,"fallbackRate":null,"attempts30d":null,"trustUpdatedAt":null,"trustConfidence":"unknown","sourceUpdatedAt":null,"freshnessSeconds":null},"decisionGuardrails":{"doNotUseIf":["Contract metadata is missing or unavailable for deterministic execution."],"safeUseWhen":[],"riskFlags":["missing_or_unavailable_contract","trust_data_unavailable","schema_references_missing"],"operationalConfidence":"low"},"executionMetrics":{"observedLatencyMsP50":null,"observedLatencyMsP95":null,"estimatedCostUsd":null,"uptime30d":null,"rateLimitRpm":null,"rateLimitBurst":null,"lastVerifiedAt":null,"verificationSource":null},"runtimeMetrics":{"successRate":null,"avgLatencyMs":null,"avgCostUsd":null,"hallucinationRate":null,"retryRate":null,"disputeRate":null,"p50Latency":null,"p95Latency":null,"lastUpdated":null}},"benchmarks":{"evidence":{"source":"no-benchmark-data","verified":false,"confidence":"low","updatedAt":null,"emptyReason":"No benchmark suites or observed failure patterns are available."},"suites":[],"failurePatterns":[]},"artifacts":{"evidence":{"source":"CLAWHUB","verified":false,"confidence":"medium","updatedAt":"2026-10-09T17:23:11.260Z","emptyReason":null},"readme":"Skill: lux3d\n\nOwner: violalulu\n\nSummary: Use the Lux3D Global environment to generate 3D from image URLs or text, transfer materials onto an existing model, complete additional viewpoints from one object image, export model formats, and query task status or generation history. Use for image-to-3D, text-to-3D, text plus reference image, mat\n\nTags: latest:4.1.2\n\nVersion history:\n\nv4.1.2 | 2026-08-28T11:42:45.013Z | user\n\n- Removed the file skill-card.md.\n- No functional or interface changes; \n- Change Concurrent in-progress tasks.\n\nv4.1.0 | 2026-08-26T05:43:27.428Z | user\n\n- Removed the skill-card.md file.\n- Updated documentation to focus on the Global Lux3D API and its public, documented endpoints.\n- Added precise instructions for using HTTP(S) URLs as inputs (img, imgs, meshUrl, modelUrl); local files must be uploaded first.\n- Clarified capabilities and their corresponding endpoints (e.g., image-to-3D, text-to-3D, material transfer, four-view completion, multi-format export).\n- Expanded and clarified examples for each workflow, with stricter field requirements and option listings.\n- Unified option and field naming conventions for endpoints and output formats.\n- Made instructions and examples easier to follow and aligned only with public API fields.\n\nv3.1.0 | 2026-07-28T07:20:17.284Z | user\n\n- Added support for the G1 version: a fast beta model featuring multi-view image input and new output formats (zip, glb, ply).\n- Updated documentation to explain G1 options, including support for multiple image views, specific outputFormat values, default faceCount, PBR toggling, and texture size.\n- Clarified effect and support of the faceCount parameter for all model versions.\n- Updated references from “international” to “Global” endpoint and region.\n- Removed the obsolete skill-card.md file.\n\nv3.0.1 | 2026-07-28T07:14:20.599Z | user\n\n- Added support for the new G1 model: fast beta, multi-view image input, and zip/glb/ply outputs.\n- Updated documentation to reflect G1-specific input and output options, as well as revised field names (`imagePaths`, `outputFormat`, `enablePbr`, `textureSize`, etc.).\n- Changed all endpoint and region naming from \"International\" to \"Global\"; updated API base URLs accordingly.\n- Noted that the `skill-card.md` file was removed.\n- Clarified face count parameter handling for Mesh and 3DGS outputs across versions.\n- Updated compatibility and usage notes for text-to-3D and image-to-3D functions.\n\nv3.0.0 | 2026-07-10T02:45:59.671Z | user\n\n- Added documentation and support for `v3.0-standard` as the new default Lux3D version, with colored transparent material support, reduced color deviation, improved material quality, and custom face count control.\n- Describes expanded five-format output support (.zip, .glb, .usdz, _obj.zip, _fbx.zip) for `v3.0-standard`.\n- Documents the `face_count` parameter for image-to-3D and text-to-3D workflows (available for v2.0-preview/v3.0-standard).\n- Updated all usage examples and tables to include and default to `v3.0-standard`.\n- Removed redundant skill-card.md file.\n\nv2.0.2 | 2026-06-08T10:40:25.056Z | user\n\nlux3d 2.0.2\n\n- Add glb\\usdz format support\n\nv2.0.1 | 2026-06-08T08:20:00.945Z | user\n\n- Added a new concurrency limit section, documenting task concurrency quotas by account type and possible API errors when limits are exceeded.\n- Replaced “material transfer” with “material repaint” throughout the documentation to reflect current terminology.\n- Clarified versioning details: `v2.0-preview` is now explicitly the default, with an expanded table describing model version differences, output formats, and feature support.\n- Minor terminology and description updates for improved clarity.\n- Removed the unused skill-card.md file.\n\nv2.0.0 | 2026-05-22T10:45:22.062Z | user\n\nLux3D 2.0.0  adds material transfer and version selection:\n\n- Introduced material transfer workflow, allowing material regeneration for existing 3D models.\n- Added support for selecting Lux3D API version (e.g., v2.0-preview) in all generation and CLI workflows.\n- Updated usage examples and documentation to cover new features and version parameter.\n- Clarified that all three workflows—image to 3D, text to 3D, and material transfer—are supported.\n\nv1.3.1 | 2026-05-21T10:10:42.754Z | user\n\n- Improved documentation to clarify support for international users.\n- Added explicit instructions for applying for an API key.\n- Documented the use of region selection via the `--region` flag and environment variable.\n- Updated sample code to use the `skill.lux3d_client` import path.\n- Expanded descriptions for supported text-to-3D styles in a table.\n- Minor formatting and wording enhancements for better usability.\n\nv1.3.0 | 2026-05-19T02:48:26.453Z | user\n\nLux3D 1.3.0 changelog:\n\n- Updated documentation to reflect new API key registration and authentication process at https://labs.aholo3d.com/\n- Changed setup instructions to use the new API root: https://api.aholo3d.com/global\n- Authentication now uses the Authorization header with the API key (was previously a base64 invitation code and custom MD5 sign).\n- Updated links and contact details to match new API provider information.\n- Cleaned up legacy details for improved clarity and accuracy.\n\nv1.2.0 | 2026-04-30T06:55:30.875Z | user\n\nAdd text-to-3D workflow and update skill documentation\n\nv1.1.0 | 2026-04-13T10:57:31.618Z | user\n\nSecurity enhancements: API key validation, input/output validation, secure requests with retry logic, timeout protection, and comprehensive documentation\n\nv1.0.1 | 2026-04-02T07:16:59.531Z | user\n\nRemove redundant lux3dToken parameter, add error handling, split code into lux3d_client.py\n\nv1.0.0 | 2026-03-13T08:48:10.275Z | user\n\nLux3D 1.0.0 - Initial Release\n\n- Introduces the ability to generate 3D models from 2D images using Lux3D.\n- Provides detailed setup and usage instructions, including API key application process.\n- Includes example Python code for individual image-to-3D conversion.\n- Adds optional batch 3D asset generation capability.\n- Ensures QIZHEN Engine compatibility for generated PBR models.\n\nArchive index:\n\nArchive v4.1.2: 4 files, 14766 bytes\n\nFiles: lux3d_client.py (40405b), skill-card.md (2327b), SKILL.md (12439b), _meta.json (124b)\n\nFile v4.1.2:SKILL.md\n\n---\nname: lux3d\ndescription: \"Use the Lux3D Global environment to generate 3D from image URLs or text, transfer materials onto an existing model, complete additional viewpoints from one object image, export model formats, and query task status or generation history. Use for image-to-3D, text-to-3D, text plus reference image, material transfer, four-view completion, USDZ/OBJ/FBX export, task queries, or task lists.\"\n---\n\n# Lux3D Global\n\nUse **lux3d_client.py** in this directory to call the public Lux3D API. Before running a command, change to this Skill directory or replace the script name in the examples with its absolute path. This package defaults to the Global environment:\n\n~~~text\nhttps://api.aholo3d.com/global\n~~~\n\nUse only the public endpoints and fields listed here. Do not add business-type fields or internal versions.\n\n## Before Calling\n\n1. Apply for a key on the [Global API Key page](https://labs.aholo3d.com/api-keys).\n2. Set the environment:\n\n   ~~~bash\n   export LUX3D_API_KEY=\"your_api_key\"\n   export LUX3D_REGION=\"international\"\n   ~~~\n\n3. **img**, **imgs**, **meshUrl**, and **modelUrl** must be HTTP(S) URLs accessible to Lux3D. For a local file, upload it first with the [Asset upload APIs](https://labs.aholo3d.com/api-docs/en/api-reference#tag/asset), then use the returned URL.\n4. Global and China API Keys are not interchangeable. This Skill defaults to Global; do not mix it with the China endpoint.\n5. Pass the API Key directly in the authentication header, without a Bearer prefix:\n\n   ~~~text\n   Authorization: <API Key>\n   ~~~\n\nInstall the dependency:\n\n~~~bash\npip install requests\n~~~\n\n## Choose a Capability\n\nSelect one creation endpoint for the request:\n\n| Need | Capability |\n| --- | --- |\n| One or more object images and a 3D model | Image-to-3D |\n| A text description, optionally with one reference image | Text-to-3D |\n| An existing GLB that needs material transfer from an image | Material transfer |\n| Optional multi-view completion before a G1-Turbo generation request | Image-to-four-view -> G1-Turbo image-to-3D |\n| Additional formats from a Lux3D ZIP or GLB | Multi-format export |\n\nFor image-to-3D and text-to-3D, pass the input directly to **G1** without assembling other capabilities around it. **G1-Turbo** can run as a lightweight atomic capability on its own; when the user wants more control through multi-view input, they may optionally complete viewpoints first and pass the results as **imgs**. If the user did not specify a version and the request does not distinguish them, ask before creating the task.\n\nA create endpoint returns a **taskid**. Query that task afterward; poll every 10-15 seconds.\n\n## 1. Image-to-3D\n\n**version** is required. Pass **img** for a single image or **imgs** for multiple images, never both. **imgs** accepts 1-32 URLs of the same subject; put the clearest and most complete view first.\n\n### G1\n\nPass only these fields:\n\n| Field | Required | How to pass it |\n| --- | :---: | --- |\n| **img** | Conditional | One image URL; omit when using **imgs** |\n| **imgs** | Conditional | 1-32 image URLs; omit when using **img** |\n| **version** | Yes | Pass **G1** |\n| **faceCount** | No | Mesh face count in [10000, 300000]; default 200000; does not affect PLY |\n| **outputFormat** | No | A non-duplicated list of **zip**, **glb**, and **ply**. Omission, an empty list, or a list without **ply** returns ZIP + GLB; including **ply** returns ZIP + GLB + PLY |\n| **aiPredictSize** | No | Omit or pass **true** to predict and scale size; pass **false** to disable |\n\nDo not pass **enablePbr** for G1. Output order is always ZIP, GLB, optional PLY. Even [\"ply\"] returns all three outputs.\n\n~~~bash\npython lux3d_client.py image \\\n  \"https://example.com/object.jpg\" \\\n  --version G1\n~~~\n\nMultiple images:\n\n~~~bash\npython lux3d_client.py image \\\n  \"https://example.com/front.jpg\" \\\n  --image-view \"https://example.com/side.jpg\" \\\n  --version G1 --format ply\n~~~\n\n### G1-Turbo\n\nPass only these fields:\n\n| Field | Required | How to pass it |\n| --- | :---: | --- |\n| **img** | Conditional | One image URL; omit when using **imgs** |\n| **imgs** | Conditional | 1-32 image URLs; omit when using **img** |\n| **version** | Yes | Pass **G1-Turbo** |\n| **faceCount** | No | Mesh face count in [10000, 300000]; default 200000; does not affect PLY |\n| **outputFormat** | No | Any non-duplicated individual or combined **zip**, **glb**, and **ply** values; omission or an empty list is treated as [\"zip\"] |\n| **enablePbr** | No | For ZIP/GLB, omit or pass **true** for a textured Mesh and **false** for a white Mesh; omit for PLY-only |\n| **aiPredictSize** | No | Omit or pass **true** to predict and scale size; pass **false** to disable |\n\n~~~bash\npython lux3d_client.py image \\\n  \"https://example.com/object.jpg\" \\\n  --version G1-Turbo --format glb --no-pbr\n~~~\n\nPLY-only:\n\n~~~bash\npython lux3d_client.py image \\\n  \"https://example.com/object.jpg\" \\\n  --version G1-Turbo --format ply\n~~~\n\n## 2. Text-to-3D\n\n**prompt** and **version** are required. **style** is optional. For visual guidance, pass one **img** URL; do not pass **imgs**.\n\nSupported **style** values:\n\n~~~text\nphotorealistic, cartoon, anime, hand_painted, cyberpunk, fantasy, glass\n~~~\n\nThe default style is **photorealistic**.\n\n### G1\n\n| Field | Required | How to pass it |\n| --- | :---: | --- |\n| **prompt** | Yes | Non-empty text describing the subject, material, style, and key details |\n| **style** | No | Use one value from the list above |\n| **img** | No | One accessible reference-image URL |\n| **version** | Yes | Pass **G1** |\n| **faceCount** | No | Mesh face count in [10000, 300000]; default 200000; does not affect PLY |\n| **outputFormat** | No | A non-duplicated list of **zip**, **glb**, and **ply**. A list without **ply** returns ZIP + GLB; including **ply** appends PLY |\n| **aiPredictSize** | No | Omit or pass **true** to predict and scale size; pass **false** to disable |\n\nDo not pass **enablePbr**.\n\n~~~bash\npython lux3d_client.py text \\\n  \"A modern dining chair with visible wood grain\" \\\n  --style photorealistic --version G1\n~~~\n\n### G1-Turbo\n\n| Field | Required | How to pass it |\n| --- | :---: | --- |\n| **prompt** | Yes | Non-empty text describing the subject, material, style, and key details |\n| **style** | No | Use one value from the list above |\n| **img** | No | One accessible reference-image URL |\n| **version** | Yes | Pass **G1-Turbo** |\n| **faceCount** | No | Mesh face count in [10000, 300000]; default 200000; does not affect PLY |\n| **outputFormat** | No | Any non-duplicated individual or combined **zip**, **glb**, and **ply** values; omission or an empty list is treated as [\"zip\"] |\n| **enablePbr** | No | For ZIP/GLB, omit or pass **true** for a textured Mesh and **false** for a white Mesh; omit for PLY-only |\n| **aiPredictSize** | No | Omit or pass **true** to predict and scale size; pass **false** to disable |\n\n~~~bash\npython lux3d_client.py text \\\n  \"A futuristic desk lamp\" \\\n  --image \"https://example.com/reference.png\" \\\n  --version G1-Turbo --format glb\n~~~\n\n## 3. Material Transfer\n\nThis endpoint uses only **v3.0-standard**:\n\n| Field | Required | How to pass it |\n| --- | :---: | --- |\n| **img** | Yes | Material reference-image URL |\n| **meshUrl** | Yes | URL of the GLB to retexture |\n| **version** | Yes | Pass **v3.0-standard** |\n| **outputFormat** | No | A non-duplicated list of **zip**, **glb**, **usdz**, **obj_zip**, and **fbx_zip**. Omission or an empty list returns ZIP + GLB; include other values when needed |\n| **aiPredictSize** | No | Pass **true** for automatic size prediction and omit **customSize**; pass **false** or omit to preserve size or set a height |\n| **customSize** | No | Model height in millimetres, greater than 0; set **aiPredictSize** to **false** or omit it |\n\n~~~bash\npython lux3d_client.py material \\\n  \"https://example.com/material.png\" \\\n  --mesh-url \"https://example.com/model.glb\" \\\n  --version v3.0-standard --format usdz\n~~~\n\n## 4. Image-to-Four-View\n\nPass one object image URL to complete additional viewpoints. This endpoint does not generate a 3D model and accepts only **img**.\n\n~~~bash\npython lux3d_client.py four-view \"https://example.com/object.jpg\"\n~~~\n\nOn success, it returns four image URLs. The API stores them as a JSON-array string in one output item; the client parses that value into a list.\n\nG1-Turbo accepts either one image or multiple images directly. Check the input first: when it has a plain background, or its background has been removed and it contains only the target object to generate, pass the single image directly as **img**. Viewpoints and structural details that are not visible in the image are inferred from the available information. Offer the following composition when the user wants to reduce that inference, gain more control over unseen viewpoints, or provide missing viewpoint information:\n\n~~~text\nSingle image -> Image-to-four-view -> Review and approve -> imgs -> G1-Turbo image-to-3D\n~~~\n\n~~~python\nfrom lux3d_client import generate_four_views\n\nfour_view_urls = generate_four_views(\"https://example.com/object.jpg\")\nprint(four_view_urls)\n~~~\n\nShow the four images or their URLs to the user and confirm that the subject structure, orientation, and viewpoints match expectations. Do not create the G1-Turbo task until the user explicitly approves the results. After approval, continue with:\n\n~~~python\nfrom lux3d_client import create_image_to_3d_task\n\ntask_id = create_image_to_3d_task(\n    imgs=four_view_urls,\n    version=\"G1-Turbo\",\n)\n~~~\n\nIf the order needs adjustment, put the clearest and most complete view first in **imgs**.\n\nThis is only a recommended optional enhancement, not a prerequisite for G1-Turbo. If the user asks to call G1-Turbo directly, pass the single image as **img**; do not force multi-view completion or block the call because four-view results are absent. For G1, pass the original input directly and do not add a four-view task to the workflow.\n\n## 5. Multi-Format Export\n\n**modelUrl** must be an accessible .zip or .glb URL. A ZIP input must come from a Lux3D generation task.\n\n| Input | **outputFormat** rule |\n| --- | --- |\n| GLB | Pass at least one of **usdz**, **obj_zip**, or **fbx_zip** |\n| ZIP | Omit or pass an empty list to return GLB, or request one or more export formats above |\n\n~~~bash\npython lux3d_client.py export \\\n  \"https://example.com/model.glb\" \\\n  --format usdz --format obj_zip\n~~~\n\n## 6. Query One Task\n\nQuery once:\n\n~~~bash\npython lux3d_client.py query 1256173\n~~~\n\nPoll from Python:\n\n~~~python\nfrom lux3d_client import query_task_status\n\noutputs = query_task_status(\"1256173\")\n~~~\n\nPublic statuses:\n\n| Status | Meaning |\n| --- | --- |\n| 0 | Initialized |\n| 1 | Running |\n| 3 | Succeeded |\n| 4 | Failed |\n| 6 | Cancelled |\n\nAfter success, read results from **d.outputs[].content**. Result URLs expire after 2 hours, so save them promptly.\n\n## 7. List Generation Tasks\n\n~~~bash\npython lux3d_client.py list \\\n  --page 1 --pagesize 20 --status 3 \\\n  --starttime 1786590000000 --endtime 1786600000000\n~~~\n\n- **page** is one-based and defaults to 1\n- **pagesize** is 1-100 and defaults to 20\n- **status** may be 0, 1, 3, 4, or 6\n- Times are Unix milliseconds and use the interval [starttime, endtime)\n- Omit unused filters\n\n## Python Creation Functions\n\nUse the functions in endpoint order:\n\n~~~python\nfrom lux3d_client import (\n    create_image_to_3d_task,\n    create_text_to_3d_task,\n    create_material_transfer_task,\n    create_image_to_four_view_task,\n    create_multi_format_export_task,\n    get_task,\n    list_tasks,\n)\n~~~\n\nPass only the fields listed for the selected version. For example:\n\n~~~python\ntask_id = create_image_to_3d_task(\n    img=\"https://example.com/object.jpg\",\n    version=\"G1\",\n    outputFormat=[\"ply\"],\n)\n~~~\n\n## Tasks and Credits\n\nImage-to-3D, text-to-3D, and material transfer share the account concurrency limit:\n\n| Account | Concurrent in-progress tasks |\n| --- | :---: |\n| Free | 2 |\n| Pro | 5 |\n\nIf the API returns **GENERATION_CONCURRENCY_LIMIT_EXCEEDED**, wait for an existing task to finish before retrying. The rejected request does not create a task or consume credits. See [Lux3D Pricing](https://www.aholo3d.com/pricing) for plans and credits.\n\n## References\n\n- [API Key](https://labs.aholo3d.com/api-keys)\n- [Asset upload APIs](https://labs.aholo3d.com/api-docs/en/api-reference#tag/asset)\n- [Lux3D Pricing](https://www.aholo3d.com/pricing)\n- Contact: lux3d@qunhemail.com\n\nFile v4.1.2:_meta.json\n\n{\n  \"ownerId\": \"kn7fftn66sw2cx9v5ndbryhxvh82tj8m\",\n  \"slug\": \"lux3d\",\n  \"version\": \"4.1.2\",\n  \"publishedAt\": 1787917365013\n}\n\nFile v4.1.2:skill-card.md\n\n## Description:\n\nUse the Lux3D Global environment to generate 3D from image URLs or text, transfer materials onto an existing model, complete additional viewpoints from one object image, export model formats, and query task status or generation history.\n\nThis skill is ready for commercial/non-commercial use.\n\n## Publisher:\n\n[violalulu](https://clawhub.ai/user/violalulu)\n\n### License/Terms of Use:\n\nMIT-0\n\n## Use Case:\n\nDevelopers and technical creators use this skill to call Lux3D APIs for image-to-3D, text-to-3D, material transfer, four-view completion, model export, task status checks, and generation history queries.\n\n### Deployment Geography for Use:\n\nGlobal\n\n## Known Risks and Mitigations:\n\nRisk: Authenticated Lux3D API requests can be redirected to an arbitrary endpoint if LUX3D_BASE_URL or --base-url is set.\n\nMitigation: Use only approved Lux3D endpoints and avoid setting LUX3D_BASE_URL or --base-url unless the endpoint has been reviewed.\n\nRisk: Downloaded model outputs can overwrite the selected output path.\n\nMitigation: Choose output paths deliberately and run the skill in a controlled working directory.\n\nRisk: Runtime dependencies and API behavior are supplied by third-party services.\n\nMitigation: Install in a virtual environment, consider pinning dependencies, and use the skill only when the publisher and runtime environment are trusted.\n\n## Reference(s):\n\n- [Lux3D Global API Key](https://labs.aholo3d.com/api-keys)\n- [Lux3D Asset Upload APIs](https://labs.aholo3d.com/api-docs/en/api-reference#tag/asset)\n- [Lux3D Pricing](https://www.aholo3d.com/pricing)\n- [ClawHub Skill Page](https://clawhub.ai/violalulu/skills/lux3d)\n\n## Skill Output:\n\n**Output Type(s):** [guidance, shell commands, code, configuration]\n\n**Output Format:** [Markdown with inline bash and Python code blocks]\n\n**Output Parameters:** [1D]\n\n**Other Properties Related to Output:** [May initiate Lux3D API tasks and return task IDs, status data, generated asset URLs, or downloaded model files.]\n\n## Skill Version(s):\n\n4.1.2 (source: server release metadata)\n\n## Ethical Considerations:\n\nUsers should evaluate whether this skill is appropriate for their environment, review any generated or modified files before relying on them, and apply their organization's safety, security, and compliance requirements before deployment.\n\nArchive v4.1.0: 4 files, 14797 bytes\n\nFiles: lux3d_client.py (40405b), skill-card.md (2377b), SKILL.md (12439b), _meta.json (124b)\n\nFile v4.1.0:SKILL.md\n\n---\nname: lux3d\ndescription: \"Use the Lux3D Global environment to generate 3D from image URLs or text, transfer materials onto an existing model, complete additional viewpoints from one object image, export model formats, and query task status or generation history. Use for image-to-3D, text-to-3D, text plus reference image, material transfer, four-view completion, USDZ/OBJ/FBX export, task queries, or task lists.\"\n---\n\n# Lux3D Global\n\nUse **lux3d_client.py** in this directory to call the public Lux3D API. Before running a command, change to this Skill directory or replace the script name in the examples with its absolute path. This package defaults to the Global environment:\n\n~~~text\nhttps://api.aholo3d.com/global\n~~~\n\nUse only the public endpoints and fields listed here. Do not add business-type fields or internal versions.\n\n## Before Calling\n\n1. Apply for a key on the [Global API Key page](https://labs.aholo3d.com/api-keys).\n2. Set the environment:\n\n   ~~~bash\n   export LUX3D_API_KEY=\"your_api_key\"\n   export LUX3D_REGION=\"international\"\n   ~~~\n\n3. **img**, **imgs**, **meshUrl**, and **modelUrl** must be HTTP(S) URLs accessible to Lux3D. For a local file, upload it first with the [Asset upload APIs](https://labs.aholo3d.com/api-docs/en/api-reference#tag/asset), then use the returned URL.\n4. Global and China API Keys are not interchangeable. This Skill defaults to Global; do not mix it with the China endpoint.\n5. Pass the API Key directly in the authentication header, without a Bearer prefix:\n\n   ~~~text\n   Authorization: <API Key>\n   ~~~\n\nInstall the dependency:\n\n~~~bash\npip install requests\n~~~\n\n## Choose a Capability\n\nSelect one creation endpoint for the request:\n\n| Need | Capability |\n| --- | --- |\n| One or more object images and a 3D model | Image-to-3D |\n| A text description, optionally with one reference image | Text-to-3D |\n| An existing GLB that needs material transfer from an image | Material transfer |\n| Optional multi-view completion before a G1-Turbo generation request | Image-to-four-view -> G1-Turbo image-to-3D |\n| Additional formats from a Lux3D ZIP or GLB | Multi-format export |\n\nFor image-to-3D and text-to-3D, pass the input directly to **G1** without assembling other capabilities around it. **G1-Turbo** can run as a lightweight atomic capability on its own; when the user wants more control through multi-view input, they may optionally complete viewpoints first and pass the results as **imgs**. If the user did not specify a version and the request does not distinguish them, ask before creating the task.\n\nA create endpoint returns a **taskid**. Query that task afterward; poll every 10-15 seconds.\n\n## 1. Image-to-3D\n\n**version** is required. Pass **img** for a single image or **imgs** for multiple images, never both. **imgs** accepts 1-32 URLs of the same subject; put the clearest and most complete view first.\n\n### G1\n\nPass only these fields:\n\n| Field | Required | How to pass it |\n| --- | :---: | --- |\n| **img** | Conditional | One image URL; omit when using **imgs** |\n| **imgs** | Conditional | 1-32 image URLs; omit when using **img** |\n| **version** | Yes | Pass **G1** |\n| **faceCount** | No | Mesh face count in [10000, 300000]; default 200000; does not affect PLY |\n| **outputFormat** | No | A non-duplicated list of **zip**, **glb**, and **ply**. Omission, an empty list, or a list without **ply** returns ZIP + GLB; including **ply** returns ZIP + GLB + PLY |\n| **aiPredictSize** | No | Omit or pass **true** to predict and scale size; pass **false** to disable |\n\nDo not pass **enablePbr** for G1. Output order is always ZIP, GLB, optional PLY. Even [\"ply\"] returns all three outputs.\n\n~~~bash\npython lux3d_client.py image \\\n  \"https://example.com/object.jpg\" \\\n  --version G1\n~~~\n\nMultiple images:\n\n~~~bash\npython lux3d_client.py image \\\n  \"https://example.com/front.jpg\" \\\n  --image-view \"https://example.com/side.jpg\" \\\n  --version G1 --format ply\n~~~\n\n### G1-Turbo\n\nPass only these fields:\n\n| Field | Required | How to pass it |\n| --- | :---: | --- |\n| **img** | Conditional | One image URL; omit when using **imgs** |\n| **imgs** | Conditional | 1-32 image URLs; omit when using **img** |\n| **version** | Yes | Pass **G1-Turbo** |\n| **faceCount** | No | Mesh face count in [10000, 300000]; default 200000; does not affect PLY |\n| **outputFormat** | No | Any non-duplicated individual or combined **zip**, **glb**, and **ply** values; omission or an empty list is treated as [\"zip\"] |\n| **enablePbr** | No | For ZIP/GLB, omit or pass **true** for a textured Mesh and **false** for a white Mesh; omit for PLY-only |\n| **aiPredictSize** | No | Omit or pass **true** to predict and scale size; pass **false** to disable |\n\n~~~bash\npython lux3d_client.py image \\\n  \"https://example.com/object.jpg\" \\\n  --version G1-Turbo --format glb --no-pbr\n~~~\n\nPLY-only:\n\n~~~bash\npython lux3d_client.py image \\\n  \"https://example.com/object.jpg\" \\\n  --version G1-Turbo --format ply\n~~~\n\n## 2. Text-to-3D\n\n**prompt** and **version** are required. **style** is optional. For visual guidance, pass one **img** URL; do not pass **imgs**.\n\nSupported **style** values:\n\n~~~text\nphotorealistic, cartoon, anime, hand_painted, cyberpunk, fantasy, glass\n~~~\n\nThe default style is **photorealistic**.\n\n### G1\n\n| Field | Required | How to pass it |\n| --- | :---: | --- |\n| **prompt** | Yes | Non-empty text describing the subject, material, style, and key details |\n| **style** | No | Use one value from the list above |\n| **img** | No | One accessible reference-image URL |\n| **version** | Yes | Pass **G1** |\n| **faceCount** | No | Mesh face count in [10000, 300000]; default 200000; does not affect PLY |\n| **outputFormat** | No | A non-duplicated list of **zip**, **glb**, and **ply**. A list without **ply** returns ZIP + GLB; including **ply** appends PLY |\n| **aiPredictSize** | No | Omit or pass **true** to predict and scale size; pass **false** to disable |\n\nDo not pass **enablePbr**.\n\n~~~bash\npython lux3d_client.py text \\\n  \"A modern dining chair with visible wood grain\" \\\n  --style photorealistic --version G1\n~~~\n\n### G1-Turbo\n\n| Field | Required | How to pass it |\n| --- | :---: | --- |\n| **prompt** | Yes | Non-empty text describing the subject, material, style, and key details |\n| **style** | No | Use one value from the list above |\n| **img** | No | One accessible reference-image URL |\n| **version** | Yes | Pass **G1-Turbo** |\n| **faceCount** | No | Mesh face count in [10000, 300000]; default 200000; does not affect PLY |\n| **outputFormat** | No | Any non-duplicated individual or combined **zip**, **glb**, and **ply** values; omission or an empty list is treated as [\"zip\"] |\n| **enablePbr** | No | For ZIP/GLB, omit or pass **true** for a textured Mesh and **false** for a white Mesh; omit for PLY-only |\n| **aiPredictSize** | No | Omit or pass **true** to predict and scale size; pass **false** to disable |\n\n~~~bash\npython lux3d_client.py text \\\n  \"A futuristic desk lamp\" \\\n  --image \"https://example.com/reference.png\" \\\n  --version G1-Turbo --format glb\n~~~\n\n## 3. Material Transfer\n\nThis endpoint uses only **v3.0-standard**:\n\n| Field | Required | How to pass it |\n| --- | :---: | --- |\n| **img** | Yes | Material reference-image URL |\n| **meshUrl** | Yes | URL of the GLB to retexture |\n| **version** | Yes | Pass **v3.0-standard** |\n| **outputFormat** | No | A non-duplicated list of **zip**, **glb**, **usdz**, **obj_zip**, and **fbx_zip**. Omission or an empty list returns ZIP + GLB; include other values when needed |\n| **aiPredictSize** | No | Pass **true** for automatic size prediction and omit **customSize**; pass **false** or omit to preserve size or set a height |\n| **customSize** | No | Model height in millimetres, greater than 0; set **aiPredictSize** to **false** or omit it |\n\n~~~bash\npython lux3d_client.py material \\\n  \"https://example.com/material.png\" \\\n  --mesh-url \"https://example.com/model.glb\" \\\n  --version v3.0-standard --format usdz\n~~~\n\n## 4. Image-to-Four-View\n\nPass one object image URL to complete additional viewpoints. This endpoint does not generate a 3D model and accepts only **img**.\n\n~~~bash\npython lux3d_client.py four-view \"https://example.com/object.jpg\"\n~~~\n\nOn success, it returns four image URLs. The API stores them as a JSON-array string in one output item; the client parses that value into a list.\n\nG1-Turbo accepts either one image or multiple images directly. Check the input first: when it has a plain background, or its background has been removed and it contains only the target object to generate, pass the single image directly as **img**. Viewpoints and structural details that are not visible in the image are inferred from the available information. Offer the following composition when the user wants to reduce that inference, gain more control over unseen viewpoints, or provide missing viewpoint information:\n\n~~~text\nSingle image -> Image-to-four-view -> Review and approve -> imgs -> G1-Turbo image-to-3D\n~~~\n\n~~~python\nfrom lux3d_client import generate_four_views\n\nfour_view_urls = generate_four_views(\"https://example.com/object.jpg\")\nprint(four_view_urls)\n~~~\n\nShow the four images or their URLs to the user and confirm that the subject structure, orientation, and viewpoints match expectations. Do not create the G1-Turbo task until the user explicitly approves the results. After approval, continue with:\n\n~~~python\nfrom lux3d_client import create_image_to_3d_task\n\ntask_id = create_image_to_3d_task(\n    imgs=four_view_urls,\n    version=\"G1-Turbo\",\n)\n~~~\n\nIf the order needs adjustment, put the clearest and most complete view first in **imgs**.\n\nThis is only a recommended optional enhancement, not a prerequisite for G1-Turbo. If the user asks to call G1-Turbo directly, pass the single image as **img**; do not force multi-view completion or block the call because four-view results are absent. For G1, pass the original input directly and do not add a four-view task to the workflow.\n\n## 5. Multi-Format Export\n\n**modelUrl** must be an accessible .zip or .glb URL. A ZIP input must come from a Lux3D generation task.\n\n| Input | **outputFormat** rule |\n| --- | --- |\n| GLB | Pass at least one of **usdz**, **obj_zip**, or **fbx_zip** |\n| ZIP | Omit or pass an empty list to return GLB, or request one or more export formats above |\n\n~~~bash\npython lux3d_client.py export \\\n  \"https://example.com/model.glb\" \\\n  --format usdz --format obj_zip\n~~~\n\n## 6. Query One Task\n\nQuery once:\n\n~~~bash\npython lux3d_client.py query 1256173\n~~~\n\nPoll from Python:\n\n~~~python\nfrom lux3d_client import query_task_status\n\noutputs = query_task_status(\"1256173\")\n~~~\n\nPublic statuses:\n\n| Status | Meaning |\n| --- | --- |\n| 0 | Initialized |\n| 1 | Running |\n| 3 | Succeeded |\n| 4 | Failed |\n| 6 | Cancelled |\n\nAfter success, read results from **d.outputs[].content**. Result URLs expire after 2 hours, so save them promptly.\n\n## 7. List Generation Tasks\n\n~~~bash\npython lux3d_client.py list \\\n  --page 1 --pagesize 20 --status 3 \\\n  --starttime 1786590000000 --endtime 1786600000000\n~~~\n\n- **page** is one-based and defaults to 1\n- **pagesize** is 1-100 and defaults to 20\n- **status** may be 0, 1, 3, 4, or 6\n- Times are Unix milliseconds and use the interval [starttime, endtime)\n- Omit unused filters\n\n## Python Creation Functions\n\nUse the functions in endpoint order:\n\n~~~python\nfrom lux3d_client import (\n    create_image_to_3d_task,\n    create_text_to_3d_task,\n    create_material_transfer_task,\n    create_image_to_four_view_task,\n    create_multi_format_export_task,\n    get_task,\n    list_tasks,\n)\n~~~\n\nPass only the fields listed for the selected version. For example:\n\n~~~python\ntask_id = create_image_to_3d_task(\n    img=\"https://example.com/object.jpg\",\n    version=\"G1\",\n    outputFormat=[\"ply\"],\n)\n~~~\n\n## Tasks and Credits\n\nImage-to-3D, text-to-3D, and material transfer share the account concurrency limit:\n\n| Account | Concurrent in-progress tasks |\n| --- | :---: |\n| Free | 1 |\n| Pro | 2 |\n\nIf the API returns **GENERATION_CONCURRENCY_LIMIT_EXCEEDED**, wait for an existing task to finish before retrying. The rejected request does not create a task or consume credits. See [Lux3D Pricing](https://www.aholo3d.com/pricing) for plans and credits.\n\n## References\n\n- [API Key](https://labs.aholo3d.com/api-keys)\n- [Asset upload APIs](https://labs.aholo3d.com/api-docs/en/api-reference#tag/asset)\n- [Lux3D Pricing](https://www.aholo3d.com/pricing)\n- Contact: lux3d@qunhemail.com\n\nFile v4.1.0:_meta.json\n\n{\n  \"ownerId\": \"kn7fftn66sw2cx9v5ndbryhxvh82tj8m\",\n  \"slug\": \"lux3d\",\n  \"version\": \"4.1.0\",\n  \"publishedAt\": 1787723007428\n}\n\nFile v4.1.0:skill-card.md\n\n## Description:\n\nUse the Lux3D Global environment to generate 3D from image URLs or text, transfer materials onto an existing model, complete additional viewpoints from one object image, export model formats, and query task status or generation history.\n\nThis skill is ready for commercial/non-commercial use.\n\n## Publisher:\n\n[violalulu](https://clawhub.ai/user/violalulu)\n\n### License/Terms of Use:\n\nMIT-0\n\n## Use Case:\n\nDevelopers and technical artists use this skill to call the Lux3D Global API for image-to-3D, text-to-3D, material transfer, four-view completion, model export, task status queries, and generation history workflows.\n\n### Deployment Geography for Use:\n\nGlobal\n\n## Known Risks and Mitigations:\n\nRisk: Authenticated Lux3D requests send the API key, prompts, and public asset URLs to the Lux3D service.\n\nMitigation: Confirm the user is comfortable using Lux3D before execution, keep LUX3D_API_KEY in the environment, and avoid sending sensitive prompts or private asset URLs.\n\nRisk: Overriding LUX3D_BASE_URL changes where authenticated requests are sent.\n\nMitigation: Leave LUX3D_BASE_URL unset unless the user intentionally selects a trusted Lux3D API host.\n\nRisk: Local files are not valid direct inputs for Lux3D task fields.\n\nMitigation: Upload local assets through the documented Lux3D asset upload API first, then use the returned HTTP(S) URL.\n\n## Reference(s):\n\n- [ClawHub lux3d Skill Page](https://clawhub.ai/violalulu/skills/lux3d)\n- [Lux3D Global API Key Page](https://labs.aholo3d.com/api-keys)\n- [Lux3D Asset Upload APIs](https://labs.aholo3d.com/api-docs/en/api-reference#tag/asset)\n- [Lux3D Pricing](https://www.aholo3d.com/pricing)\n\n## Skill Output:\n\n**Output Type(s):** [Text, Markdown, Code, Shell commands, Configuration, Guidance]\n\n**Output Format:** [Markdown with inline bash and Python code blocks]\n\n**Output Parameters:** [1D]\n\n**Other Properties Related to Output:** [May include Lux3D task IDs, task status JSON, result URLs, and optional downloaded model artifacts when the provided commands are run.]\n\n## Skill Version(s):\n\n4.1.0 (source: server release metadata)\n\n## Ethical Considerations:\n\nUsers should evaluate whether this skill is appropriate for their environment, review any generated or modified files before relying on them, and apply their organization's safety, security, and compliance requirements before deployment.\n\nArchive v3.1.0: 4 files, 13825 bytes\n\nFiles: lux3d_client.py (36029b), skill-card.md (1934b), SKILL.md (13677b), _meta.json (124b)\n\nFile v3.1.0:SKILL.md\n\n---\nname: lux3d\ndescription: \"Use Lux3D to generate 3D models from images or text, or perform material repaint. Trigger when the user asks for image to 3D, text to 3D, prompt to 3D, create a 3D model from a description, create a 3D model from a description plus a reference image, or regenerate materials for an existing 3D model. Supports v1.0-pro, v2.0-preview, v3.0-standard, and G1. G1 is the fast beta model with multi-view image input and zip/glb/ply output. For Global users.\"\n---\n\n## What This Skill Does\n\nLux3D generates 3D assets through three documented asynchronous workflows:\n\n- **Image to 3D**: submit an input image, poll the task, then download the ZIP result.\n- **Text to 3D**: submit a prompt plus style, optionally with a reference image, poll the task, then download the ZIP result.\n- **Material Repaint**: submit a reference image and a model URL, poll the task, then download the regenerated model result.\n\nAll workflows require `LUX3D_API_KEY`, which is the API key obtained from https://labs.aholo3d.com/api-keys.\n\n## API Endpoint\n\n- **Global Endpoint**: `https://api.aholo3d.com/global`\n\n## Concurrency Limits\n\nLux3D limits the number of generation tasks that can be in progress at the same time based on the account plan. Image-to-3D, text-to-3D, and material repaint tasks share the same account-level concurrency quota.\n\n| Account Type | Maximum Concurrent In-progress Tasks |\n| --- | :--: |\n| Free account | 1 |\n| Pro account | 2 |\n\nIf a task creation endpoint returns `GENERATION_CONCURRENCY_LIMIT_EXCEEDED`, the account has reached its concurrency limit. No new task is created and no credits are consumed. Wait for an existing task to finish before retrying, or upgrade the account for higher concurrency.\n\n## Setup\n\n### Apply for an API Key\n\n- Register at: https://labs.aholo3d.com/api-keys\n\n### Set Environment Variables\n\n**Required:**\n\n```bash\nexport LUX3D_API_KEY=\"your_api_key\"\n```\n\n**Optional - Override Base URL:**\n\n```bash\nexport LUX3D_BASE_URL=\"https://api.aholo3d.com/global\"\n```\n\n**Optional - Specify Region:**\n\n```bash\nexport LUX3D_REGION=\"international\"\n```\n\n## Python Usage\n\n### G1 Image-to-3D\n\nG1 accepts one local image through `image_path` and additional views through\n`imagePaths`, for a total of 1-32 images. The client encodes local images as\ncomplete Base64 Data URLs. Multiple views are sent in `imgs`; one view uses `img`.\n\n```python\nfrom skill.lux3d_client import generate_3d_model\n\nresult = generate_3d_model(\n    \"path/to/view-1.png\",\n    imagePaths=[\"path/to/view-2.png\"],\n    version=\"G1\",\n    outputFormat=[\"zip\"],\n    faceCount=200000,\n    enablePbr=True,\n    textureSize=1000,\n)\n```\n\nG1 supports `outputFormat=[\"zip\"]`, `[\"glb\"]`, and `[\"ply\"]`. `glb` returns\n`tex_mesh.glb` when PBR is enabled and `mesh.glb` when `enablePbr=False`;\n`ply` returns `gaussian.ply`; `zip` or an empty or omitted list returns\n`results.zip`; a combined request returns and downloads multiple artifacts in\nformat order. `faceCount` affects Mesh only and does not affect\nPLY 3DGS. G1 defaults are `faceCount=200000`, `enablePbr=True`, and\n`textureSize=1000`.\n\n### Image to 3D\n\n```python\nfrom skill.lux3d_client import generate_3d_model\n\nresult = generate_3d_model(\"path/to/input.jpg\", version=\"v2.0-preview\")\nprint(result)\n```\n\nSpecify the target face count (optional; affects Mesh outputs only and does not affect 3DGS outputs; supported by v2.0-preview, v3.0-standard, and G1 in the range [10000, 500000]; when omitted, v2.0-preview and v3.0-standard use 60000, while G1 uses 200000; v1.0-pro ignores this parameter):\n\n```python\nresult = generate_3d_model(\"path/to/input.jpg\", version=\"v3.0-standard\", faceCount=100000)\nprint(result)\n```\n\nOr explicitly select the Global endpoint with the `international` region value:\n\n```python\nresult = generate_3d_model(\"path/to/input.jpg\", region=\"international\", version=\"v2.0-preview\")\nprint(result)\n```\n\n### Text to 3D\n\n```python\nfrom skill.lux3d_client import generate_text_to_3d\n\nresult = generate_text_to_3d(\n    \"Generate a high-quality 3D wooden chair\",\n    style=\"photorealistic\",\n    version=\"v2.0-preview\",\n)\nprint(result)\n```\n\nSpecify target face count (affects Mesh only, not 3DGS; effective for v2.0-preview / v3.0-standard / G1):\n\n```python\nresult = generate_text_to_3d(\n    \"Generate a high-quality 3D wooden chair\",\n    style=\"photorealistic\",\n    version=\"v3.0-standard\",\n    faceCount=100000,\n)\nprint(result)\n```\n\n### Text plus Reference Image\n\nG1 text-to-3D uses the same `outputFormat`, `faceCount`, `enablePbr`, and\n`textureSize` options:\n\n```python\nresult = generate_text_to_3d(\n    \"Generate a modern wooden dining chair\",\n    version=\"G1\",\n    outputFormat=[\"glb\"],\n    enablePbr=False,\n)\n```\n\n```python\nfrom skill.lux3d_client import generate_text_to_3d\n\nresult = generate_text_to_3d(\n    \"Generate a premium ceramic vase with a glossy glaze\",\n    style=\"glass\",\n    image_path=\"path/to/reference.png\",\n    version=\"v2.0-preview\",\n)\nprint(result)\n```\n\n### Low-level Task APIs\n\n```python\nfrom skill.lux3d_client import (\n    create_task,\n    create_text_to_3d_task,\n    create_material_transfer_task,\n    query_task_status,\n    download_model,\n)\n\nimage_task_id = create_task(\"path/to/input.jpg\")\ntext_task_id = create_text_to_3d_task(\n    \"Generate a stylized toy robot\",\n    style=\"cartoon\",\n    image_path=\"path/to/reference.png\",\n)\nmaterial_task_id = create_material_transfer_task(\n    \"path/to/reference.png\",\n    meshUrl=\"https://qhstaticssl.kujiale.com/application/octetstream/1784776896628/material_transfer_model.glb\",\n)\n\nimage_model_url = query_task_status(image_task_id)\ntext_model_url = query_task_status(text_task_id)\nmaterial_model_url = query_task_status(material_task_id)\n\ndownload_model(image_model_url, \"image_to_3d.zip\")\ndownload_model(text_model_url, \"text_to_3d.zip\")\ndownload_model(material_model_url, \"material_transfer.zip\")\n```\n\n### Material Repaint\n\n```python\nfrom skill.lux3d_client import generate_material_transfer\n\nresult = generate_material_transfer(\n    \"path/to/reference.png\",\n    meshUrl=\"https://qhstaticssl.kujiale.com/application/octetstream/1784776896628/material_transfer_model.glb\",\n    version=\"v2.0-preview\",\n)\nprint(result)\n```\n\n## Command Line Usage\n\n### Region Selection\n\nUse `--region` or `-r` to select the Global endpoint with the `international` region value (default):\n\n```bash\npython lux3d_client.py --region international image input.jpg output.zip\n```\n\nOr omit the region flag; Global is the default endpoint (`international` region value):\n\n```bash\npython lux3d_client.py image input.jpg output.zip\n```\n\n### Image to 3D\n\n```bash\n# Historical form (default region)\npython lux3d_client.py input.jpg output.zip --version v3.0-standard\n\n# Explicit command\npython lux3d_client.py image input.jpg output.zip --version v3.0-standard\n```\n\n### Text to 3D\n\n```bash\npython lux3d_client.py text \"Generate a high-quality 3D wooden chair\" output.zip --style photorealistic --version v3.0-standard\n```\n\n### Text to 3D with Reference Image\n\n```bash\npython lux3d_client.py text \"Generate a futuristic desk lamp\" output.zip --style cyberpunk --image ref.png --version v3.0-standard\n```\n\n### Material Repaint\n\n```bash\npython lux3d_client.py material reference.png output.zip --mesh-url https://qhstaticssl.kujiale.com/application/octetstream/1784776896628/material_transfer_model.glb --version v3.0-standard\n```\n\n## Text-to-3D Styles\n\nSupported styles:\n\n| Style | Description |\n|-------|-------------|\n| `photorealistic` | Photorealistic quality |\n| `cartoon` | Cartoon style |\n| `anime` | Anime style |\n| `hand_painted` | Hand-painted style |\n| `cyberpunk` | Cyberpunk theme |\n| `fantasy` | Fantasy style |\n| `glass` | Glass material |\n\n## Output Format\n\nPass `outputFormat` as a string for backward compatibility or as a list for the\nunified API field `outputFormat`. v2.0-preview and v3.0-standard support `zip`, `glb`, `usdz`,\n`obj_zip`, and `fbx_zip`. G1 supports\nonly `zip`, `glb`, and `ply`. When a result contains multiple URLs, downloading\nwithout a selected format defaults to `zip`.\n\n## Lux3D Version\n\nYou can specify the Lux3D version via the `version` parameter:\n\n| Version | Description | Output Format |\n|---------|-------------|---------------|\n| `v3.0-standard` | **Default version**, adds colored transparent material support, reduces color deviation in generated models, improves material quality, preserves text and texture details, and adds custom face count support; supports five-format output | .zip + .glb + .usdz + _obj.zip + _fbx.zip |\n| `v2.0-preview` | 2.0 model architecture with enhanced text and texture detail preservation, no transparent material support | .zip + .glb + .usdz + _obj.zip + _fbx.zip |\n| `v1.0-pro` | First-generation model with complete PBR material properties, supports transparent material generation | ZIP result |\n| `G1` | Fast beta model with single-view or multi-view input, optional PBR mesh, and 3DGS output; excels at generating plush-material 3DGS assets | `results.zip`, `tex_mesh.glb`/`mesh.glb`, or `gaussian.ply` |\n\n**Important**: If the `version` parameter is not provided in the request, the system will default to `v3.0-standard`.\n**Custom face count**: `faceCount` is optional and specifies the target face count for image-to-3D / text-to-3D Mesh generation. It affects Mesh outputs only and does not affect 3DGS outputs. `v2.0-preview`, `v3.0-standard`, and `G1` support custom face counts in the range `[10000, 500000]`. When omitted, `v2.0-preview` and `v3.0-standard` use `60000`, while `G1` uses `200000`; `v1.0-pro` ignores this parameter.\n\nAll generation APIs (image-to-3D, text-to-3D, material repaint) support the `version` parameter.\n\n### Specify Version in Python\n\n```python\n# Image to 3D with version\nresult = generate_3d_model(\"path/to/input.jpg\", version=\"v3.0-standard\")\n\n# Text to 3D with version\nresult = generate_text_to_3d(\n    \"Generate a high-quality 3D wooden chair\",\n    style=\"photorealistic\",\n    version=\"v3.0-standard\",\n)\n\n# Material repaint with version\nresult = generate_material_transfer(\n    \"path/to/reference.png\",\n    meshUrl=\"https://qhstaticssl.kujiale.com/application/octetstream/1784776896628/material_transfer_model.glb\",\n    version=\"v3.0-standard\",\n)\n```\n\n### Specify Version in Command Line\n\n```bash\n# Image to 3D with version\npython lux3d_client.py image input.jpg output.zip --version v3.0-standard\n\n# Text to 3D with version\npython lux3d_client.py text \"Generate a high-quality 3D wooden chair\" output.zip --style photorealistic --version v3.0-standard\n\n# Material repaint with version\npython lux3d_client.py material reference.png output.zip --mesh-url https://qhstaticssl.kujiale.com/application/octetstream/1784776896628/material_transfer_model.glb --version v3.0-standard\n```\n\n## Output\n\n### v3.0-standard Multi-format Output\n\nThe `v3.0-standard` version supports five model format outputs. You can choose the appropriate format based on your use case:\n\n| Format | Description | Use Case |\n|--------|-------------|----------|\n| **.zip** | Packaged result containing GLB model and separate PBR texture assets | Material editing or custom rendering pipelines |\n| **.glb** | GLB model with embedded materials | Web rendering, Unity/Unreal engine import, most 3D software |\n| **.usdz** | Apple AR native format | iOS/macOS AR Quick Look, ARKit applications |\n| **_obj.zip** | OBJ + MTL + BaseColor textures packed in a ZIP | Common 3D software and DCC tools |\n| **_fbx.zip** | FBX model and .fbm texture directory packed in a ZIP | Maya, 3ds Max, Blender, and other mainstream DCC tools |\n\n### Download Different Formats\n\nChoose formats at task creation time through list-form `outputFormat`. Do not append `?format=` to a result URL:\n\n```python\nresult = generate_3d_model(\n    \"path/to/input.jpg\",\n    version=\"v3.0-standard\",\n    outputFormat=[\"glb\"],\n)\n```\n\nv2.0-preview and v3.0-standard support `zip`, `glb`, `usdz`, `obj_zip`, and `fbx_zip`. Classic optional slots that were not requested may return `NOT_REQUESTED`; a multi-format request downloads ZIP by default.\n\n### v2.0-preview Multi-format Output\n\nThe `v2.0-preview` version supports five model format outputs:\n\n| Format | Description | Use Case |\n|--------|-------------|----------|\n| **.zip** | Packaged result containing GLB model and separate PBR texture assets | Material editing or custom rendering pipelines |\n| **.glb** | GLB model with embedded materials | Web rendering, Unity/Unreal engine import, most 3D software |\n| **.usdz** | Apple AR native format | iOS/macOS AR Quick Look, ARKit applications |\n| **_obj.zip** | OBJ + MTL + BaseColor textures packed in a ZIP | Common 3D software and DCC tools |\n| **_fbx.zip** | FBX model and .fbm texture directory packed in a ZIP | Maya, 3ds Max, Blender, and other DCC tools |\n\n### v1.0-pro Output\n\nThe `v1.0-pro` version returns a single ZIP result containing:\n- A GLB model file\n- Complete PBR texture assets (with transparent material support)\n\n### Result Validity\n\nAll format download links are valid for **2 hours**, please download promptly.\n\n## Notes\n\n- Authentication uses `Authorization` header: `Authorization: <apiKey>`\n- Image-to-3D, text-to-3D, and material repaint use different create endpoints\n- All three workflows share the same task query endpoint\n- `prompt` and `style` are required for text-to-3D\n- `img` is optional for text-to-3D and should be a full data URL after encoding\n- Material repaint requires `img` (reference image) and `meshUrl` (model GLB file URL) parameters\n\n## Requirements\n\n```bash\npip install Pillow requests\n```\n\n## References\n\n- Lux3D Website: https://lux3d.aholo3d.com/\n- API Key Application: https://labs.aholo3d.com/api-keys\n- API contact: lux3d@qunhemail.com\n\nFile v3.1.0:_meta.json\n\n{\n  \"ownerId\": \"kn7fftn66sw2cx9v5ndbryhxvh82tj8m\",\n  \"slug\": \"lux3d\",\n  \"version\": \"3.1.0\",\n  \"publishedAt\": 1785223217284\n}\n\nFile v3.1.0:skill-card.md\n\n## Description: <br>\nUse Lux3D to generate 3D models from images or text, or perform material repaint. <br>\n\nThis skill is ready for commercial/non-commercial use. <br>\n\n## Publisher: <br>\n[violalulu](https://clawhub.ai/user/violalulu) <br>\n\n### License/Terms of Use: <br>\nMIT-0 <br>\n\n\n## Use Case: <br>\nDevelopers and creators use this skill to submit image-to-3D, text-to-3D, and material repaint jobs to Lux3D, then poll and download generated 3D model outputs. <br>\n\n### Deployment Geography for Use: <br>\nGlobal <br>\n\n## Known Risks and Mitigations: <br>\nRisk: The skill can send prompts, selected images, model URLs, generated assets, and the Lux3D API key to Lux3D or to a configured override endpoint. <br>\nMitigation: Use only non-sensitive assets unless Lux3D data terms are acceptable, and set LUX3D_BASE_URL or --base-url only to endpoints you fully trust. <br>\n\n\n## Reference(s): <br>\n- [Lux3D Skill Page](https://clawhub.ai/violalulu/skills/lux3d) <br>\n- [Lux3D Website](https://lux3d.aholo3d.com/) <br>\n- [Lux3D API Key Application](https://labs.aholo3d.com/api-keys) <br>\n- [Lux3D Global API Endpoint](https://api.aholo3d.com/global) <br>\n\n\n## Skill Output: <br>\n**Output Type(s):** [Text, Markdown, Code, Shell commands, Configuration, Files] <br>\n**Output Format:** [Markdown guidance with Python examples, shell commands, and generated model files] <br>\n**Output Parameters:** [1D] <br>\n**Other Properties Related to Output:** [Generated model downloads may be ZIP, GLB, USDZ, OBJ ZIP, FBX ZIP, or PLY depending on the selected Lux3D version and output format.] <br>\n\n## Skill Version(s): <br>\n3.1.0 (source: server release evidence) <br>\n\n## Ethical Considerations: <br>\nUsers should evaluate whether this skill is appropriate for their environment, review any generated or modified files before relying on them, and apply their organization's safety, security, and compliance requirements before deployment. <br>\n\nArchive v3.0.1: 4 files, 14024 bytes\n\nFiles: lux3d_client.py (36029b), skill-card.md (2464b), SKILL.md (13677b), _meta.json (124b)\n\nFile v3.0.1:SKILL.md\n\n---\nname: lux3d\ndescription: \"Use Lux3D to generate 3D models from images or text, or perform material repaint. Trigger when the user asks for image to 3D, text to 3D, prompt to 3D, create a 3D model from a description, create a 3D model from a description plus a reference image, or regenerate materials for an existing 3D model. Supports v1.0-pro, v2.0-preview, v3.0-standard, and G1. G1 is the fast beta model with multi-view image input and zip/glb/ply output. For Global users.\"\n---\n\n## What This Skill Does\n\nLux3D generates 3D assets through three documented asynchronous workflows:\n\n- **Image to 3D**: submit an input image, poll the task, then download the ZIP result.\n- **Text to 3D**: submit a prompt plus style, optionally with a reference image, poll the task, then download the ZIP result.\n- **Material Repaint**: submit a reference image and a model URL, poll the task, then download the regenerated model result.\n\nAll workflows require `LUX3D_API_KEY`, which is the API key obtained from https://labs.aholo3d.com/api-keys.\n\n## API Endpoint\n\n- **Global Endpoint**: `https://api.aholo3d.com/global`\n\n## Concurrency Limits\n\nLux3D limits the number of generation tasks that can be in progress at the same time based on the account plan. Image-to-3D, text-to-3D, and material repaint tasks share the same account-level concurrency quota.\n\n| Account Type | Maximum Concurrent In-progress Tasks |\n| --- | :--: |\n| Free account | 1 |\n| Pro account | 2 |\n\nIf a task creation endpoint returns `GENERATION_CONCURRENCY_LIMIT_EXCEEDED`, the account has reached its concurrency limit. No new task is created and no credits are consumed. Wait for an existing task to finish before retrying, or upgrade the account for higher concurrency.\n\n## Setup\n\n### Apply for an API Key\n\n- Register at: https://labs.aholo3d.com/api-keys\n\n### Set Environment Variables\n\n**Required:**\n\n```bash\nexport LUX3D_API_KEY=\"your_api_key\"\n```\n\n**Optional - Override Base URL:**\n\n```bash\nexport LUX3D_BASE_URL=\"https://api.aholo3d.com/global\"\n```\n\n**Optional - Specify Region:**\n\n```bash\nexport LUX3D_REGION=\"international\"\n```\n\n## Python Usage\n\n### G1 Image-to-3D\n\nG1 accepts one local image through `image_path` and additional views through\n`imagePaths`, for a total of 1-32 images. The client encodes local images as\ncomplete Base64 Data URLs. Multiple views are sent in `imgs`; one view uses `img`.\n\n```python\nfrom skill.lux3d_client import generate_3d_model\n\nresult = generate_3d_model(\n    \"path/to/view-1.png\",\n    imagePaths=[\"path/to/view-2.png\"],\n    version=\"G1\",\n    outputFormat=[\"zip\"],\n    faceCount=200000,\n    enablePbr=True,\n    textureSize=1000,\n)\n```\n\nG1 supports `outputFormat=[\"zip\"]`, `[\"glb\"]`, and `[\"ply\"]`. `glb` returns\n`tex_mesh.glb` when PBR is enabled and `mesh.glb` when `enablePbr=False`;\n`ply` returns `gaussian.ply`; `zip` or an empty or omitted list returns\n`results.zip`; a combined request returns and downloads multiple artifacts in\nformat order. `faceCount` affects Mesh only and does not affect\nPLY 3DGS. G1 defaults are `faceCount=200000`, `enablePbr=True`, and\n`textureSize=1000`.\n\n### Image to 3D\n\n```python\nfrom skill.lux3d_client import generate_3d_model\n\nresult = generate_3d_model(\"path/to/input.jpg\", version=\"v2.0-preview\")\nprint(result)\n```\n\nSpecify the target face count (optional; affects Mesh outputs only and does not affect 3DGS outputs; supported by v2.0-preview, v3.0-standard, and G1 in the range [10000, 500000]; when omitted, v2.0-preview and v3.0-standard use 60000, while G1 uses 200000; v1.0-pro ignores this parameter):\n\n```python\nresult = generate_3d_model(\"path/to/input.jpg\", version=\"v3.0-standard\", faceCount=100000)\nprint(result)\n```\n\nOr explicitly select the Global endpoint with the `international` region value:\n\n```python\nresult = generate_3d_model(\"path/to/input.jpg\", region=\"international\", version=\"v2.0-preview\")\nprint(result)\n```\n\n### Text to 3D\n\n```python\nfrom skill.lux3d_client import generate_text_to_3d\n\nresult = generate_text_to_3d(\n    \"Generate a high-quality 3D wooden chair\",\n    style=\"photorealistic\",\n    version=\"v2.0-preview\",\n)\nprint(result)\n```\n\nSpecify target face count (affects Mesh only, not 3DGS; effective for v2.0-preview / v3.0-standard / G1):\n\n```python\nresult = generate_text_to_3d(\n    \"Generate a high-quality 3D wooden chair\",\n    style=\"photorealistic\",\n    version=\"v3.0-standard\",\n    faceCount=100000,\n)\nprint(result)\n```\n\n### Text plus Reference Image\n\nG1 text-to-3D uses the same `outputFormat`, `faceCount`, `enablePbr`, and\n`textureSize` options:\n\n```python\nresult = generate_text_to_3d(\n    \"Generate a modern wooden dining chair\",\n    version=\"G1\",\n    outputFormat=[\"glb\"],\n    enablePbr=False,\n)\n```\n\n```python\nfrom skill.lux3d_client import generate_text_to_3d\n\nresult = generate_text_to_3d(\n    \"Generate a premium ceramic vase with a glossy glaze\",\n    style=\"glass\",\n    image_path=\"path/to/reference.png\",\n    version=\"v2.0-preview\",\n)\nprint(result)\n```\n\n### Low-level Task APIs\n\n```python\nfrom skill.lux3d_client import (\n    create_task,\n    create_text_to_3d_task,\n    create_material_transfer_task,\n    query_task_status,\n    download_model,\n)\n\nimage_task_id = create_task(\"path/to/input.jpg\")\ntext_task_id = create_text_to_3d_task(\n    \"Generate a stylized toy robot\",\n    style=\"cartoon\",\n    image_path=\"path/to/reference.png\",\n)\nmaterial_task_id = create_material_transfer_task(\n    \"path/to/reference.png\",\n    meshUrl=\"https://qhstaticssl.kujiale.com/application/octetstream/1784776896628/material_transfer_model.glb\",\n)\n\nimage_model_url = query_task_status(image_task_id)\ntext_model_url = query_task_status(text_task_id)\nmaterial_model_url = query_task_status(material_task_id)\n\ndownload_model(image_model_url, \"image_to_3d.zip\")\ndownload_model(text_model_url, \"text_to_3d.zip\")\ndownload_model(material_model_url, \"material_transfer.zip\")\n```\n\n### Material Repaint\n\n```python\nfrom skill.lux3d_client import generate_material_transfer\n\nresult = generate_material_transfer(\n    \"path/to/reference.png\",\n    meshUrl=\"https://qhstaticssl.kujiale.com/application/octetstream/1784776896628/material_transfer_model.glb\",\n    version=\"v2.0-preview\",\n)\nprint(result)\n```\n\n## Command Line Usage\n\n### Region Selection\n\nUse `--region` or `-r` to select the Global endpoint with the `international` region value (default):\n\n```bash\npython lux3d_client.py --region international image input.jpg output.zip\n```\n\nOr omit the region flag; Global is the default endpoint (`international` region value):\n\n```bash\npython lux3d_client.py image input.jpg output.zip\n```\n\n### Image to 3D\n\n```bash\n# Historical form (default region)\npython lux3d_client.py input.jpg output.zip --version v3.0-standard\n\n# Explicit command\npython lux3d_client.py image input.jpg output.zip --version v3.0-standard\n```\n\n### Text to 3D\n\n```bash\npython lux3d_client.py text \"Generate a high-quality 3D wooden chair\" output.zip --style photorealistic --version v3.0-standard\n```\n\n### Text to 3D with Reference Image\n\n```bash\npython lux3d_client.py text \"Generate a futuristic desk lamp\" output.zip --style cyberpunk --image ref.png --version v3.0-standard\n```\n\n### Material Repaint\n\n```bash\npython lux3d_client.py material reference.png output.zip --mesh-url https://qhstaticssl.kujiale.com/application/octetstream/1784776896628/material_transfer_model.glb --version v3.0-standard\n```\n\n## Text-to-3D Styles\n\nSupported styles:\n\n| Style | Description |\n|-------|-------------|\n| `photorealistic` | Photorealistic quality |\n| `cartoon` | Cartoon style |\n| `anime` | Anime style |\n| `hand_painted` | Hand-painted style |\n| `cyberpunk` | Cyberpunk theme |\n| `fantasy` | Fantasy style |\n| `glass` | Glass material |\n\n## Output Format\n\nPass `outputFormat` as a string for backward compatibility or as a list for the\nunified API field `outputFormat`. v2.0-preview and v3.0-standard support `zip`, `glb`, `usdz`,\n`obj_zip`, and `fbx_zip`. G1 supports\nonly `zip`, `glb`, and `ply`. When a result contains multiple URLs, downloading\nwithout a selected format defaults to `zip`.\n\n## Lux3D Version\n\nYou can specify the Lux3D version via the `version` parameter:\n\n| Version | Description | Output Format |\n|---------|-------------|---------------|\n| `v3.0-standard` | **Default version**, adds colored transparent material support, reduces color deviation in generated models, improves material quality, preserves text and texture details, and adds custom face count support; supports five-format output | .zip + .glb + .usdz + _obj.zip + _fbx.zip |\n| `v2.0-preview` | 2.0 model architecture with enhanced text and texture detail preservation, no transparent material support | .zip + .glb + .usdz + _obj.zip + _fbx.zip |\n| `v1.0-pro` | First-generation model with complete PBR material properties, supports transparent material generation | ZIP result |\n| `G1` | Fast beta model with single-view or multi-view input, optional PBR mesh, and 3DGS output; excels at generating plush-material 3DGS assets | `results.zip`, `tex_mesh.glb`/`mesh.glb`, or `gaussian.ply` |\n\n**Important**: If the `version` parameter is not provided in the request, the system will default to `v3.0-standard`.\n**Custom face count**: `faceCount` is optional and specifies the target face count for image-to-3D / text-to-3D Mesh generation. It affects Mesh outputs only and does not affect 3DGS outputs. `v2.0-preview`, `v3.0-standard`, and `G1` support custom face counts in the range `[10000, 500000]`. When omitted, `v2.0-preview` and `v3.0-standard` use `60000`, while `G1` uses `200000`; `v1.0-pro` ignores this parameter.\n\nAll generation APIs (image-to-3D, text-to-3D, material repaint) support the `version` parameter.\n\n### Specify Version in Python\n\n```python\n# Image to 3D with version\nresult = generate_3d_model(\"path/to/input.jpg\", version=\"v3.0-standard\")\n\n# Text to 3D with version\nresult = generate_text_to_3d(\n    \"Generate a high-quality 3D wooden chair\",\n    style=\"photorealistic\",\n    version=\"v3.0-standard\",\n)\n\n# Material repaint with version\nresult = generate_material_transfer(\n    \"path/to/reference.png\",\n    meshUrl=\"https://qhstaticssl.kujiale.com/application/octetstream/1784776896628/material_transfer_model.glb\",\n    version=\"v3.0-standard\",\n)\n```\n\n### Specify Version in Command Line\n\n```bash\n# Image to 3D with version\npython lux3d_client.py image input.jpg output.zip --version v3.0-standard\n\n# Text to 3D with version\npython lux3d_client.py text \"Generate a high-quality 3D wooden chair\" output.zip --style photorealistic --version v3.0-standard\n\n# Material repaint with version\npython lux3d_client.py material reference.png output.zip --mesh-url https://qhstaticssl.kujiale.com/application/octetstream/1784776896628/material_transfer_model.glb --version v3.0-standard\n```\n\n## Output\n\n### v3.0-standard Multi-format Output\n\nThe `v3.0-standard` version supports five model format outputs. You can choose the appropriate format based on your use case:\n\n| Format | Description | Use Case |\n|--------|-------------|----------|\n| **.zip** | Packaged result containing GLB model and separate PBR texture assets | Material editing or custom rendering pipelines |\n| **.glb** | GLB model with embedded materials | Web rendering, Unity/Unreal engine import, most 3D software |\n| **.usdz** | Apple AR native format | iOS/macOS AR Quick Look, ARKit applications |\n| **_obj.zip** | OBJ + MTL + BaseColor textures packed in a ZIP | Common 3D software and DCC tools |\n| **_fbx.zip** | FBX model and .fbm texture directory packed in a ZIP | Maya, 3ds Max, Blender, and other mainstream DCC tools |\n\n### Download Different Formats\n\nChoose formats at task creation time through list-form `outputFormat`. Do not append `?format=` to a result URL:\n\n```python\nresult = generate_3d_model(\n    \"path/to/input.jpg\",\n    version=\"v3.0-standard\",\n    outputFormat=[\"glb\"],\n)\n```\n\nv2.0-preview and v3.0-standard support `zip`, `glb`, `usdz`, `obj_zip`, and `fbx_zip`. Classic optional slots that were not requested may return `NOT_REQUESTED`; a multi-format request downloads ZIP by default.\n\n### v2.0-preview Multi-format Output\n\nThe `v2.0-preview` version supports five model format outputs:\n\n| Format | Description | Use Case |\n|--------|-------------|----------|\n| **.zip** | Packaged result containing GLB model and separate PBR texture assets | Material editing or custom rendering pipelines |\n| **.glb** | GLB model with embedded materials | Web rendering, Unity/Unreal engine import, most 3D software |\n| **.usdz** | Apple AR native format | iOS/macOS AR Quick Look, ARKit applications |\n| **_obj.zip** | OBJ + MTL + BaseColor textures packed in a ZIP | Common 3D software and DCC tools |\n| **_fbx.zip** | FBX model and .fbm texture directory packed in a ZIP | Maya, 3ds Max, Blender, and other DCC tools |\n\n### v1.0-pro Output\n\nThe `v1.0-pro` version returns a single ZIP result containing:\n- A GLB model file\n- Complete PBR texture assets (with transparent material support)\n\n### Result Validity\n\nAll format download links are valid for **2 hours**, please download promptly.\n\n## Notes\n\n- Authentication uses `Authorization` header: `Authorization: <apiKey>`\n- Image-to-3D, text-to-3D, and material repaint use different create endpoints\n- All three workflows share the same task query endpoint\n- `prompt` and `style` are required for text-to-3D\n- `img` is optional for text-to-3D and should be a full data URL after encoding\n- Material repaint requires `img` (reference image) and `meshUrl` (model GLB file URL) parameters\n\n## Requirements\n\n```bash\npip install Pillow requests\n```\n\n## References\n\n- Lux3D Website: https://lux3d.aholo3d.com/\n- API Key Application: https://labs.aholo3d.com/api-keys\n- API contact: lux3d@qunhemail.com\n\nFile v3.0.1:_meta.json\n\n{\n  \"ownerId\": \"kn7fftn66sw2cx9v5ndbryhxvh82tj8m\",\n  \"slug\": \"lux3d\",\n  \"version\": \"3.0.1\",\n  \"publishedAt\": 1785222860599\n}\n\nFile v3.0.1:skill-card.md\n\n## Description: <br>\nLux3D helps agents call the Lux3D API to generate 3D models from images or text and repaint materials for existing models. <br>\n\nThis skill is ready for commercial/non-commercial use. <br>\n\n## Publisher: <br>\n[violalulu](https://clawhub.ai/user/violalulu) <br>\n\n### License/Terms of Use: <br>\nMIT-0 <br>\n\n\n## Use Case: <br>\nDevelopers and creative tool users use this skill to connect agents to Lux3D workflows for image-to-3D, text-to-3D, and material repaint tasks, including model version and output format selection. <br>\n\n### Deployment Geography for Use: <br>\nGlobal <br>\n\n## Known Risks and Mitigations: <br>\nRisk: Prompts, reference images, and model URLs selected by the user are sent to Lux3D/Aholo3D. <br>\nMitigation: Use only inputs that are acceptable under Lux3D's data handling terms and avoid sensitive or confidential images unless those terms are acceptable. <br>\nRisk: The skill requires a Lux3D API key for authenticated API calls. <br>\nMitigation: Store LUX3D_API_KEY only in the environment or a secret manager and do not paste it into prompts, files, or logs. <br>\nRisk: Generated assets are downloaded to the local output path selected by the user. <br>\nMitigation: Choose an intended output directory and review downloaded assets before using them in downstream projects. <br>\n\n\n## Reference(s): <br>\n- [ClawHub skill page](https://clawhub.ai/violalulu/skills/lux3d) <br>\n- [Lux3D website](https://lux3d.aholo3d.com/) <br>\n- [Lux3D API key application](https://labs.aholo3d.com/api-keys) <br>\n- [Lux3D Global API endpoint](https://api.aholo3d.com/global) <br>\n\n\n## Skill Output: <br>\n**Output Type(s):** [code, shell commands, configuration, guidance] <br>\n**Output Format:** [Markdown guidance with Python examples and shell commands; generated assets are downloaded as ZIP, GLB, PLY, USDZ, OBJ ZIP, or FBX ZIP files.] <br>\n**Output Parameters:** [1D] <br>\n**Other Properties Related to Output:** [Requires LUX3D_API_KEY. Sends selected prompts, reference images, and model URLs to Lux3D/Aholo3D, then downloads returned assets to the selected local output path.] <br>\n\n## Skill Version(s): <br>\n3.0.1 (source: server release evidence) <br>\n\n## Ethical Considerations: <br>\nUsers should evaluate whether this skill is appropriate for their environment, review any generated or modified files before relying on them, and apply their organization's safety, security, and compliance requirements before deployment. <br>\n\nArchive v3.0.0: 4 files, 11934 bytes\n\nFiles: lux3d_client.py (29391b), skill-card.md (2133b), SKILL.md (11365b), _meta.json (124b)\n\nFile v3.0.0:SKILL.md\n\n---\nname: lux3d\ndescription: \"Use Lux3D to generate 3D models from images or text, or perform material repaint. Trigger when the user asks for image to 3D, text to 3D, prompt to 3D, create a 3D model from a description, create a 3D model from a description plus a reference image, or regenerate materials for an existing 3D model. Supports v1.0-pro, v2.0-preview, and v3.0-standard (default, with colored transparent material support, custom face count, and five-format output). For international users.\"\n---\n\n## What This Skill Does\n\nLux3D generates 3D assets through three documented asynchronous workflows:\n\n- **Image to 3D**: submit an input image, poll the task, then download the ZIP result.\n- **Text to 3D**: submit a prompt plus style, optionally with a reference image, poll the task, then download the ZIP result.\n- **Material Repaint**: submit a reference image and a model URL, poll the task, then download the regenerated model result.\n\nAll workflows require `LUX3D_API_KEY`, which is the API key obtained from https://labs.aholo3d.com/api-keys.\n\n## API Endpoint\n\n- **International Endpoint**: `https://api.aholo3d.com/global`\n\n## Concurrency Limits\n\nLux3D limits the number of generation tasks that can be in progress at the same time based on the account plan. Image-to-3D, text-to-3D, and material repaint tasks share the same account-level concurrency quota.\n\n| Account Type | Maximum Concurrent In-progress Tasks |\n| --- | :--: |\n| Free account | 1 |\n| Pro account | 2 |\n\nIf a task creation endpoint returns `GENERATION_CONCURRENCY_LIMIT_EXCEEDED`, the account has reached its concurrency limit. No new task is created and no credits are consumed. Wait for an existing task to finish before retrying, or upgrade the account for higher concurrency.\n\n## Setup\n\n### Apply for an API Key\n\n- Register at: https://labs.aholo3d.com/api-keys\n\n### Set Environment Variables\n\n**Required:**\n\n```bash\nexport LUX3D_API_KEY=\"your_api_key\"\n```\n\n**Optional - Override Base URL:**\n\n```bash\nexport LUX3D_BASE_URL=\"https://api.aholo3d.com/global\"\n```\n\n**Optional - Specify Region:**\n\n```bash\nexport LUX3D_REGION=\"international\"\n```\n\n## Python Usage\n\n### Image to 3D\n\n```python\nfrom skill.lux3d_client import generate_3d_model\n\nresult = generate_3d_model(\"path/to/input.jpg\", version=\"v2.0-preview\")\nprint(result)\n```\n\nSpecify target face count (effective for v2.0-preview / v3.0-standard, range [10000, 500000], default 60000):\n\n```python\nresult = generate_3d_model(\"path/to/input.jpg\", version=\"v3.0-standard\", face_count=100000)\nprint(result)\n```\n\nOr explicitly specify international region:\n\n```python\nresult = generate_3d_model(\"path/to/input.jpg\", region=\"international\", version=\"v2.0-preview\")\nprint(result)\n```\n\n### Text to 3D\n\n```python\nfrom skill.lux3d_client import generate_text_to_3d\n\nresult = generate_text_to_3d(\n    \"Generate a high-quality 3D wooden chair\",\n    style=\"photorealistic\",\n    version=\"v2.0-preview\",\n)\nprint(result)\n```\n\nSpecify target face count (effective for v2.0-preview / v3.0-standard):\n\n```python\nresult = generate_text_to_3d(\n    \"Generate a high-quality 3D wooden chair\",\n    style=\"photorealistic\",\n    version=\"v3.0-standard\",\n    face_count=100000,\n)\nprint(result)\n```\n\n### Text plus Reference Image\n\n```python\nfrom skill.lux3d_client import generate_text_to_3d\n\nresult = generate_text_to_3d(\n    \"Generate a premium ceramic vase with a glossy glaze\",\n    style=\"glass\",\n    image_path=\"path/to/reference.png\",\n    version=\"v2.0-preview\",\n)\nprint(result)\n```\n\n### Low-level Task APIs\n\n```python\nfrom skill.lux3d_client import (\n    create_task,\n    create_text_to_3d_task,\n    create_material_transfer_task,\n    query_task_status,\n    download_model,\n)\n\nimage_task_id = create_task(\"path/to/input.jpg\")\ntext_task_id = create_text_to_3d_task(\n    \"Generate a stylized toy robot\",\n    style=\"cartoon\",\n    image_path=\"path/to/reference.png\",\n)\nmaterial_task_id = create_material_transfer_task(\n    \"path/to/reference.png\",\n    mesh_url=\"https://example.com/model.glb\",\n)\n\nimage_model_url = query_task_status(image_task_id)\ntext_model_url = query_task_status(text_task_id)\nmaterial_model_url = query_task_status(material_task_id)\n\ndownload_model(image_model_url, \"image_to_3d.zip\")\ndownload_model(text_model_url, \"text_to_3d.zip\")\ndownload_model(material_model_url, \"material_transfer.zip\")\n```\n\n### Material Repaint\n\n```python\nfrom skill.lux3d_client import generate_material_transfer\n\nresult = generate_material_transfer(\n    \"path/to/reference.png\",\n    mesh_url=\"https://example.com/model.glb\",\n    version=\"v2.0-preview\",\n)\nprint(result)\n```\n\n## Command Line Usage\n\n### Region Selection\n\nUse `--region` or `-r` to select the international endpoint (default):\n\n```bash\npython lux3d_client.py --region international image input.jpg output.zip\n```\n\nOr simply omit the region flag (international is default):\n\n```bash\npython lux3d_client.py image input.jpg output.zip\n```\n\n### Image to 3D\n\n```bash\n# Historical form (default region)\npython lux3d_client.py input.jpg output.zip --version v3.0-standard\n\n# Explicit command\npython lux3d_client.py image input.jpg output.zip --version v3.0-standard\n```\n\n### Text to 3D\n\n```bash\npython lux3d_client.py text \"Generate a high-quality 3D wooden chair\" output.zip --style photorealistic --version v3.0-standard\n```\n\n### Text to 3D with Reference Image\n\n```bash\npython lux3d_client.py text \"Generate a futuristic desk lamp\" output.zip --style cyberpunk --image ref.png --version v3.0-standard\n```\n\n### Material Repaint\n\n```bash\npython lux3d_client.py material reference.png output.zip --mesh-url https://example.com/model.glb --version v3.0-standard\n```\n\n## Text-to-3D Styles\n\nSupported styles:\n\n| Style | Description |\n|-------|-------------|\n| `photorealistic` | Photorealistic quality |\n| `cartoon` | Cartoon style |\n| `anime` | Anime style |\n| `hand_painted` | Hand-painted style |\n| `cyberpunk` | Cyberpunk theme |\n| `fantasy` | Fantasy style |\n| `glass` | Glass material |\n\n## Lux3D Version\n\nYou can specify the Lux3D version via the `version` parameter:\n\n| Version | Description | Output Format |\n|---------|-------------|---------------|\n| `v3.0-standard` | **Default version**, adds colored transparent material support, reduces color deviation in generated models, improves material quality, preserves text and texture details, and adds custom face count support; supports five-format output | .zip + .glb + .usdz + _obj.zip + _fbx.zip |\n| `v2.0-preview` | 2.0 model architecture with enhanced text and texture detail preservation, no transparent material support | .zip + .glb + .usdz |\n| `v1.0-pro` | First-generation model with complete PBR material properties, supports transparent material generation | ZIP result |\n\n**Important**: If the `version` parameter is not provided in the request, the system will default to `v3.0-standard`.\n**Custom face count**: The `faceCount` parameter for image-to-3D / text-to-3D is supported by `v2.0-preview` / `v3.0-standard`; `v1.0-pro` ignores this parameter.\n\nAll generation APIs (image-to-3D, text-to-3D, material repaint) support the `version` parameter.\n\n### Specify Version in Python\n\n```python\n# Image to 3D with version\nresult = generate_3d_model(\"path/to/input.jpg\", version=\"v3.0-standard\")\n\n# Text to 3D with version\nresult = generate_text_to_3d(\n    \"Generate a high-quality 3D wooden chair\",\n    style=\"photorealistic\",\n    version=\"v3.0-standard\",\n)\n\n# Material repaint with version\nresult = generate_material_transfer(\n    \"path/to/reference.png\",\n    mesh_url=\"https://example.com/model.glb\",\n    version=\"v3.0-standard\",\n)\n```\n\n### Specify Version in Command Line\n\n```bash\n# Image to 3D with version\npython lux3d_client.py image input.jpg output.zip --version v3.0-standard\n\n# Text to 3D with version\npython lux3d_client.py text \"Generate a high-quality 3D wooden chair\" output.zip --style photorealistic --version v3.0-standard\n\n# Material repaint with version\npython lux3d_client.py material reference.png output.zip --mesh-url https://example.com/model.glb --version v3.0-standard\n```\n\n## Output\n\n### v3.0-standard Multi-format Output\n\nThe `v3.0-standard` version supports five model format outputs. You can choose the appropriate format based on your use case:\n\n| Format | Description | Use Case |\n|--------|-------------|----------|\n| **.zip** | Packaged result containing GLB model and separate PBR texture assets | Material editing or custom rendering pipelines |\n| **.glb** | GLB model with embedded materials | Web rendering, Unity/Unreal engine import, most 3D software |\n| **.usdz** | Apple AR native format | iOS/macOS AR Quick Look, ARKit applications |\n| **_obj.zip** | OBJ + MTL + BaseColor textures packed in a ZIP | Common 3D software and DCC tools |\n| **_fbx.zip** | FBX model and .fbm textures directory packed in a ZIP | Maya, 3ds Max, Blender, and other mainstream DCC software |\n\n### Download Different Formats\n\nAfter task completion, you can append parameters to the result URL to get different formats:\n\n```python\n# Get ZIP format (default)\nzip_url = result['data']['url'] + '?format=zip'\n\n# Get GLB format\nglb_url = result['data']['url'] + '?format=glb'\n\n# Get USDZ format\nusdz_url = result['data']['url'] + '?format=usdz'\n\n# Get OBJ zip format\nobj_url = result['data']['url'] + '?format=obj_zip'\n\n# Get FBX zip format\nfbx_url = result['data']['url'] + '?format=fbx_zip'\n\n# Download the corresponding format\ndownload_model(glb_url, \"model.glb\")\n```\n\n**Note**: v3.0-standard returns 5 output slots in `outputs[]` in order, corresponding to .zip / .glb / .usdz / _obj.zip / _fbx.zip. zip and glb always return URLs; usdz / obj_zip / fbx_zip return URLs only when the corresponding optional export is requested, otherwise the slot returns `NOT_REQUESTED`. The default download is `outputs[0]` (the .zip packaged result). To switch to a different format, append the corresponding `?format=` parameter as shown. URL construction is consistent with v2.0-preview.\n\n### v2.0-preview Multi-format Output\n\nThe `v2.0-preview` version supports three model format outputs:\n\n| Format | Description | Use Case |\n|--------|-------------|----------|\n| **.zip** | Packaged result containing GLB model and separate PBR texture assets | Material editing or custom rendering pipelines |\n| **.glb** | GLB model with embedded materials | Web rendering, Unity/Unreal engine import, most 3D software |\n| **.usdz** | Apple AR native format | iOS/macOS AR Quick Look, ARKit applications |\n\n### v1.0-pro Output\n\nThe `v1.0-pro` version returns a single ZIP result containing:\n- A GLB model file\n- Complete PBR texture assets (with transparent material support)\n\n### Result Validity\n\nAll format download links are valid for **2 hours**, please download promptly.\n\n## Notes\n\n- Authentication uses `Authorization` header: `Authorization: <apiKey>`\n- Image-to-3D, text-to-3D, and material repaint use different create endpoints\n- All three workflows share the same task query endpoint\n- `prompt` and `style` are required for text-to-3D\n- `img` is optional for text-to-3D and should be a full data URL after encoding\n- Material repaint requires `img` (reference image) and `meshUrl` (model GLB file URL) parameters\n\n## Requirements\n\n```bash\npip install Pillow requests\n```\n\n## References\n\n- Lux3D Website: https://lux3d.aholo3d.com/\n- API Key Application: https://labs.aholo3d.com/api-keys\n- API contact: lux3d@qunhemail.com\n\nFile v3.0.0:_meta.json\n\n{\n  \"ownerId\": \"kn7fftn66sw2cx9v5ndbryhxvh82tj8m\",\n  \"slug\": \"lux3d\",\n  \"version\": \"3.0.0\",\n  \"publishedAt\": 1783651559671\n}\n\nFile v3.0.0:skill-card.md\n\n## Description: <br>\nLux3D generates 3D models from images or text and performs material repaint through asynchronous Lux3D API workflows for international users. <br>\n\nThis skill is ready for commercial/non-commercial use. <br>\n\n## Publisher: <br>\n[violalulu](https://clawhub.ai/user/violalulu) <br>\n\n### License/Terms of Use: <br>\nMIT-0 <br>\n\n\n## Use Case: <br>\nDevelopers and creative technical users use this skill to submit image-to-3D, text-to-3D, and material repaint jobs to Lux3D, poll for completion, and download generated 3D model files. <br>\n\n### Deployment Geography for Use: <br>\nGlobal <br>\n\n## Known Risks and Mitigations: <br>\nRisk: API keys and submitted content can be sent to an unintended endpoint if LUX3D_BASE_URL or --base-url points to an untrusted server. <br>\nMitigation: Use the documented Lux3D endpoint unless an approved trusted endpoint is required, and verify any base URL override before running the skill. <br>\nRisk: Prompts, images, model URLs, and API keys are sent to the Lux3D service during generation workflows. <br>\nMitigation: Do not submit confidential or restricted assets unless your organization approves sending that data to Lux3D. <br>\n\n\n## Reference(s): <br>\n- [Lux3D Website](https://lux3d.aholo3d.com/) <br>\n- [Lux3D API Key Application](https://labs.aholo3d.com/api-keys) <br>\n\n\n## Skill Output: <br>\n**Output Type(s):** [text, code, shell commands, configuration, files, guidance] <br>\n**Output Format:** [Markdown guidance with Python and shell snippets; generated assets download as ZIP, GLB, USDZ, OBJ ZIP, or FBX ZIP files.] <br>\n**Output Parameters:** [1D] <br>\n**Other Properties Related to Output:** [Requires LUX3D_API_KEY; v3.0-standard is the default Lux3D version; generated download links are valid for 2 hours.] <br>\n\n## Skill Version(s): <br>\n3.0.0 (source: server release metadata) <br>\n\n## Ethical Considerations: <br>\nUsers should evaluate whether this skill is appropriate for their environment, review any generated or modified files before relying on them, and apply their organization's safety, security, and compliance requirements before deployment. <br>\n\nArchive v2.0.2: 4 files, 10283 bytes\n\nFiles: lux3d_client.py (24244b), skill-card.md (2231b), SKILL.md (8886b), _meta.json (124b)\n\nFile v2.0.2:SKILL.md\n\n---\nname: lux3d\ndescription: \"Use Lux3D to generate 3D models from images or text, or perform material repaint. Trigger when the user asks for image to 3D, text to 3D, prompt to 3D, create a 3D model from a description, create a 3D model from a description plus a reference image, or regenerate materials for an existing 3D model. For international users.\"\n---\n\n## What This Skill Does\n\nLux3D generates 3D assets through three documented asynchronous workflows:\n\n- **Image to 3D**: submit an input image, poll the task, then download the ZIP result.\n- **Text to 3D**: submit a prompt plus style, optionally with a reference image, poll the task, then download the ZIP result.\n- **Material Repaint**: submit a reference image and a model URL, poll the task, then download the regenerated model result.\n\nAll workflows require `LUX3D_API_KEY`, which is the API key obtained from https://labs.aholo3d.com/api-keys.\n\n## API Endpoint\n\n- **International Endpoint**: `https://api.aholo3d.com/global`\n\n## Concurrency Limits\n\nLux3D limits the number of generation tasks that can be in progress at the same time based on the account plan. Image-to-3D, text-to-3D, and material repaint tasks share the same account-level concurrency quota.\n\n| Account Type | Maximum Concurrent In-progress Tasks |\n| --- | :--: |\n| Free account | 1 |\n| Pro account | 2 |\n\nIf a task creation endpoint returns `GENERATION_CONCURRENCY_LIMIT_EXCEEDED`, the account has reached its concurrency limit. No new task is created and no credits are consumed. Wait for an existing task to finish before retrying, or upgrade the account for higher concurrency.\n\n## Setup\n\n### Apply for an API Key\n\n- Register at: https://labs.aholo3d.com/api-keys\n\n### Set Environment Variables\n\n**Required:**\n\n```bash\nexport LUX3D_API_KEY=\"your_api_key\"\n```\n\n**Optional - Override Base URL:**\n\n```bash\nexport LUX3D_BASE_URL=\"https://api.aholo3d.com/global\"\n```\n\n**Optional - Specify Region:**\n\n```bash\nexport LUX3D_REGION=\"international\"\n```\n\n## Python Usage\n\n### Image to 3D\n\n```python\nfrom skill.lux3d_client import generate_3d_model\n\nresult = generate_3d_model(\"path/to/input.jpg\", version=\"v2.0-preview\")\nprint(result)\n```\n\nOr explicitly specify international region:\n\n```python\nresult = generate_3d_model(\"path/to/input.jpg\", region=\"international\", version=\"v2.0-preview\")\nprint(result)\n```\n\n### Text to 3D\n\n```python\nfrom skill.lux3d_client import generate_text_to_3d\n\nresult = generate_text_to_3d(\n    \"Generate a high-quality 3D wooden chair\",\n    style=\"photorealistic\",\n    version=\"v2.0-preview\",\n)\nprint(result)\n```\n\n### Text plus Reference Image\n\n```python\nfrom skill.lux3d_client import generate_text_to_3d\n\nresult = generate_text_to_3d(\n    \"Generate a premium ceramic vase with a glossy glaze\",\n    style=\"glass\",\n    image_path=\"path/to/reference.png\",\n    version=\"v2.0-preview\",\n)\nprint(result)\n```\n\n### Low-level Task APIs\n\n```python\nfrom skill.lux3d_client import (\n    create_task,\n    create_text_to_3d_task,\n    create_material_transfer_task,\n    query_task_status,\n    download_model,\n)\n\nimage_task_id = create_task(\"path/to/input.jpg\")\ntext_task_id = create_text_to_3d_task(\n    \"Generate a stylized toy robot\",\n    style=\"cartoon\",\n    image_path=\"path/to/reference.png\",\n)\nmaterial_task_id = create_material_transfer_task(\n    \"path/to/reference.png\",\n    mesh_url=\"https://example.com/model.glb\",\n)\n\nimage_model_url = query_task_status(image_task_id)\ntext_model_url = query_task_status(text_task_id)\nmaterial_model_url = query_task_status(material_task_id)\n\ndownload_model(image_model_url, \"image_to_3d.zip\")\ndownload_model(text_model_url, \"text_to_3d.zip\")\ndownload_model(material_model_url, \"material_transfer.zip\")\n```\n\n### Material Repaint\n\n```python\nfrom skill.lux3d_client import generate_material_transfer\n\nresult = generate_material_transfer(\n    \"path/to/reference.png\",\n    mesh_url=\"https://example.com/model.glb\",\n    version=\"v2.0-preview\",\n)\nprint(result)\n```\n\n## Command Line Usage\n\n### Region Selection\n\nUse `--region` or `-r` to select the international endpoint (default):\n\n```bash\npython lux3d_client.py --region international image input.jpg output.zip\n```\n\nOr simply omit the region flag (international is default):\n\n```bash\npython lux3d_client.py image input.jpg output.zip\n```\n\n### Image to 3D\n\n```bash\n# Historical form (default region)\npython lux3d_client.py input.jpg output.zip --version v2.0-preview\n\n# Explicit command\npython lux3d_client.py image input.jpg output.zip --version v2.0-preview\n```\n\n### Text to 3D\n\n```bash\npython lux3d_client.py text \"Generate a high-quality 3D wooden chair\" output.zip --style photorealistic --version v2.0-preview\n```\n\n### Text to 3D with Reference Image\n\n```bash\npython lux3d_client.py text \"Generate a futuristic desk lamp\" output.zip --style cyberpunk --image ref.png --version v2.0-preview\n```\n\n### Material Repaint\n\n```bash\npython lux3d_client.py material reference.png output.zip --mesh-url https://example.com/model.glb --version v2.0-preview\n```\n\n## Text-to-3D Styles\n\nSupported styles:\n\n| Style | Description |\n|-------|-------------|\n| `photorealistic` | Photorealistic quality |\n| `cartoon` | Cartoon style |\n| `anime` | Anime style |\n| `hand_painted` | Hand-painted style |\n| `cyberpunk` | Cyberpunk theme |\n| `fantasy` | Fantasy style |\n| `glass` | Glass material |\n\n## Lux3D Version\n\nYou can specify the Lux3D version via the `version` parameter:\n\n| Version | Description | Output Format |\n|---------|-------------|---------------|\n| `v2.0-preview` | **Default version**, new model architecture with enhanced text and texture detail preservation, no transparent material support | .zip + .glb + .usdz |\n| `v1.0-pro` | First-generation model with complete PBR material properties, supports transparent material generation | lux3d format |\n\n> **Important**: If the `version` parameter is not provided in the request, the system will default to `v2.0-preview`.\n\nAll generation APIs (image-to-3D, text-to-3D, material repaint) support the `version` parameter.\n\n### Specify Version in Python\n\n```python\n# Image to 3D with version\nresult = generate_3d_model(\"path/to/input.jpg\", version=\"v2.0-preview\")\n\n# Text to 3D with version\nresult = generate_text_to_3d(\n    \"Generate a high-quality 3D wooden chair\",\n    style=\"photorealistic\",\n    version=\"v2.0-preview\",\n)\n\n# Material repaint with version\nresult = generate_material_transfer(\n    \"path/to/reference.png\",\n    mesh_url=\"https://example.com/model.glb\",\n    version=\"v2.0-preview\",\n)\n```\n\n### Specify Version in Command Line\n\n```bash\n# Image to 3D with version\npython lux3d_client.py image input.jpg output.zip --version v2.0-preview\n\n# Text to 3D with version\npython lux3d_client.py text \"Generate a high-quality 3D wooden chair\" output.zip --style photorealistic --version v2.0-preview\n\n# Material repaint with version\npython lux3d_client.py material reference.png output.zip --mesh-url https://example.com/model.glb --version v2.0-preview\n```\n\n## Output\n\n### v2.0-preview Multi-format Output\n\nThe `v2.0-preview` version supports multiple model format outputs. You can choose the appropriate format based on your use case:\n\n| Format | Description | Use Case |\n|--------|-------------|----------|\n| **.zip** | Packaged result containing GLB model and separate PBR texture assets | Material editing or custom rendering pipelines |\n| **.glb** | GLB model with embedded materials | Web rendering, Unity/Unreal engine import, most 3D software |\n| **.usdz** | Apple AR native format | iOS/macOS AR Quick Look, ARKit applications |\n\n### Download Different Formats\n\nAfter task completion, you can append parameters to the result URL to get different formats:\n\n```python\n# Get ZIP format (default)\nzip_url = result['data']['url'] + '?format=zip'\n\n# Get GLB format\nglb_url = result['data']['url'] + '?format=glb'\n\n# Get USDZ format\nusdz_url = result['data']['url'] + '?format=usdz'\n\n# Download the corresponding format\ndownload_model(glb_url, \"model.glb\")\n```\n\n### v1.0-pro Output\n\nThe `v1.0-pro` version outputs a lux3d format ZIP package containing:\n- A GLB model file\n- Complete PBR texture assets (with transparent material support)\n\n### Result Validity\n\nAll format download links are valid for **2 hours**, please download promptly.\n\n## Notes\n\n- Authentication uses `Authorization` header: `Authorization: <apiKey>`\n- Image-to-3D, text-to-3D, and material repaint use different create endpoints\n- All three workflows share the same task query endpoint\n- `prompt` and `style` are required for text-to-3D\n- `img` is optional for text-to-3D and should be a full data URL after encoding\n- Material repaint requires `img` (reference image) and `meshUrl` (model GLB file URL) parameters\n\n## Requirements\n\n```bash\npip install Pillow requests\n```\n\n## References\n\n- Lux3D Website: https://lux3d.aholo3d.com/\n- API Key Application: https://labs.aholo3d.com/api-keys\n- API contact: lux3d@qunhemail.com\n\nFile v2.0.2:_meta.json\n\n{\n  \"ownerId\": \"kn7fftn66sw2cx9v5ndbryhxvh82tj8m\",\n  \"slug\": \"lux3d\",\n  \"version\": \"2.0.2\",\n  \"publishedAt\": 1780915225056\n}\n\nFile v2.0.2:skill-card.md\n\n## Description: <br>\nUse Lux3D to generate 3D models from images or text, or perform material repaint for international users. <br>\n\nThis skill is ready for commercial/non-commercial use. <br>\n\n## Publisher: <br>\n[violalulu](https://clawhub.ai/user/violalulu) <br>\n\n### License/Terms of Use: <br>\nMIT-0 <br>\n\n\n## Use Case: <br>\nDevelopers and artists use this skill to create downloadable 3D assets from images or text prompts, or to regenerate materials for an existing GLB model using Lux3D's remote API. <br>\n\n### Deployment Geography for Use: <br>\nGlobal <br>\n\n## Known Risks and Mitigations: <br>\nRisk: Prompts, images, mesh URLs, and the Lux3D API key are sent to the configured Lux3D service. <br>\nMitigation: Use the skill only with a trusted Lux3D endpoint and avoid submitting confidential designs or private model URLs unless Lux3D's data-handling terms are acceptable. <br>\nRisk: LUX3D_BASE_URL or --base-url can redirect requests, including credentials and submitted assets, to another server. <br>\nMitigation: Leave the default endpoint in place or verify any custom base URL before use. <br>\nRisk: Generated model download links are time-limited. <br>\nMitigation: Download generated assets promptly after task completion. <br>\n\n\n## Reference(s): <br>\n- [Lux3D Website](https://lux3d.aholo3d.com/) <br>\n- [Lux3D API Key Application](https://labs.aholo3d.com/api-keys) <br>\n- [ClawHub Skill Page](https://clawhub.ai/violalulu/lux3d) <br>\n\n\n## Skill Output: <br>\n**Output Type(s):** [Files, API Calls, Shell commands, Code, Guidance] <br>\n**Output Format:** [Downloaded 3D model files such as ZIP, GLB, or USDZ, with Python return values and CLI status text] <br>\n**Output Parameters:** [1D] <br>\n**Other Properties Related to Output:** [Requires LUX3D_API_KEY and sends selected prompts, images, mesh URLs, and generation requests to the configured Lux3D service.] <br>\n\n## Skill Version(s): <br>\n2.0.2 (source: server release metadata) <br>\n\n## Ethical Considerations: <br>\nUsers should evaluate whether this skill is appropriate for their environment, review any generated or modified files before relying on them, and apply their organization's safety, security, and compliance requirements before deployment. <br>\n\nArchive v2.0.1: 4 files, 8818 bytes\n\nFiles: lux3d_client.py (19890b), skill-card.md (1921b), SKILL.md (7747b), _meta.json (124b)\n\nFile v2.0.1:SKILL.md\n\n---\nname: lux3d\ndescription: \"Use Lux3D to generate 3D models from images or text, or perform material repaint. Trigger when the user asks for image to 3D, text to 3D, prompt to 3D, create a 3D model from a description, create a 3D model from a description plus a reference image, or regenerate materials for an existing 3D model. For international users.\"\n---\n\n## What This Skill Does\n\nLux3D generates 3D assets through three documented asynchronous workflows:\n\n- **Image to 3D**: submit an input image, poll the task, then download the ZIP result.\n- **Text to 3D**: submit a prompt plus style, optionally with a reference image, poll the task, then download the ZIP result.\n- **Material Repaint**: submit a reference image and a model URL, poll the task, then download the regenerated model result.\n\nAll workflows require `LUX3D_API_KEY`, which is the API key obtained from https://labs.aholo3d.com/api-keys.\n\n## API Endpoint\n\n- **International Endpoint**: `https://api.aholo3d.com/global`\n\n## Concurrency Limits\n\nLux3D limits the number of generation tasks that can be in progress at the same time based on the account plan. Image-to-3D, text-to-3D, and material repaint tasks share the same account-level concurrency quota.\n\n| Account Type | Maximum Concurrent In-progress Tasks |\n| --- | :--: |\n| Free account | 1 |\n| Pro account | 2 |\n\nIf a task creation endpoint returns `GENERATION_CONCURRENCY_LIMIT_EXCEEDED`, the account has reached its concurrency limit. No new task is created and no credits are consumed. Wait for an existing task to finish before retrying, or upgrade the account for higher concurrency.\n\n## Setup\n\n### Apply for an API Key\n\n- Register at: https://labs.aholo3d.com/api-keys\n\n### Set Environment Variables\n\n**Required:**\n\n```bash\nexport LUX3D_API_KEY=\"your_api_key\"\n```\n\n**Optional - Override Base URL:**\n\n```bash\nexport LUX3D_BASE_URL=\"https://api.aholo3d.com/global\"\n```\n\n**Optional - Specify Region:**\n\n```bash\nexport LUX3D_REGION=\"international\"\n```\n\n## Python Usage\n\n### Image to 3D\n\n```python\nfrom skill.lux3d_client import generate_3d_model\n\nresult = generate_3d_model(\"path/to/input.jpg\", version=\"v2.0-preview\")\nprint(result)\n```\n\nOr explicitly specify international region:\n\n```python\nresult = generate_3d_model(\"path/to/input.jpg\", region=\"international\", version=\"v2.0-preview\")\nprint(result)\n```\n\n### Text to 3D\n\n```python\nfrom skill.lux3d_client import generate_text_to_3d\n\nresult = generate_text_to_3d(\n    \"Generate a high-quality 3D wooden chair\",\n    style=\"photorealistic\",\n    version=\"v2.0-preview\",\n)\nprint(result)\n```\n\n### Text plus Reference Image\n\n```python\nfrom skill.lux3d_client import generate_text_to_3d\n\nresult = generate_text_to_3d(\n    \"Generate a premium ceramic vase with a glossy glaze\",\n    style=\"glass\",\n    image_path=\"path/to/reference.png\",\n    version=\"v2.0-preview\",\n)\nprint(result)\n```\n\n### Low-level Task APIs\n\n```python\nfrom skill.lux3d_client import (\n    create_task,\n    create_text_to_3d_task,\n    create_material_transfer_task,\n    query_task_status,\n    download_model,\n)\n\nimage_task_id = create_task(\"path/to/input.jpg\")\ntext_task_id = create_text_to_3d_task(\n    \"Generate a stylized toy robot\",\n    style=\"cartoon\",\n    image_path=\"path/to/reference.png\",\n)\nmaterial_task_id = create_material_transfer_task(\n    \"path/to/reference.png\",\n    mesh_url=\"https://example.com/model.glb\",\n)\n\nimage_model_url = query_task_status(image_task_id)\ntext_model_url = query_task_status(text_task_id)\nmaterial_model_url = query_task_status(material_task_id)\n\ndownload_model(image_model_url, \"image_to_3d.zip\")\ndownload_model(text_model_url, \"text_to_3d.zip\")\ndownload_model(material_model_url, \"material_transfer.zip\")\n```\n\n### Material Repaint\n\n```python\nfrom skill.lux3d_client import generate_material_transfer\n\nresult = generate_material_transfer(\n    \"path/to/reference.png\",\n    mesh_url=\"https://example.com/model.glb\",\n    version=\"v2.0-preview\",\n)\nprint(result)\n```\n\n## Command Line Usage\n\n### Region Selection\n\nUse `--region` or `-r` to select the international endpoint (default):\n\n```bash\npython lux3d_client.py --region international image input.jpg output.zip\n```\n\nOr simply omit the region flag (international is default):\n\n```bash\npython lux3d_client.py image input.jpg output.zip\n```\n\n### Image to 3D\n\n```bash\n# Historical form (default region)\npython lux3d_client.py input.jpg output.zip --version v2.0-preview\n\n# Explicit command\npython lux3d_client.py image input.jpg output.zip --version v2.0-preview\n```\n\n### Text to 3D\n\n```bash\npython lux3d_client.py text \"Generate a high-quality 3D wooden chair\" output.zip --style photorealistic --version v2.0-preview\n```\n\n### Text to 3D with Reference Image\n\n```bash\npython lux3d_client.py text \"Generate a futuristic desk lamp\" output.zip --style cyberpunk --image ref.png --version v2.0-preview\n```\n\n### Material Repaint\n\n```bash\npython lux3d_client.py material reference.png output.zip --mesh-url https://example.com/model.glb --version v2.0-preview\n```\n\n## Text-to-3D Styles\n\nSupported styles:\n\n| Style | Description |\n|-------|-------------|\n| `photorealistic` | Photorealistic quality |\n| `cartoon` | Cartoon style |\n| `anime` | Anime style |\n| `hand_painted` | Hand-painted style |\n| `cyberpunk` | Cyberpunk theme |\n| `fantasy` | Fantasy style |\n| `glass` | Glass material |\n\n## Lux3D Version\n\nYou can specify the Lux3D version via the `version` parameter:\n\n| Version | Description | Output Format |\n|---------|-------------|---------------|\n| `v2.0-preview` | **Default version**, new model architecture with enhanced text and texture detail preservation, no transparent material support | .zip + .glb + .usdz |\n| `v1.0-pro` | First-generation model with complete PBR material properties, supports transparent material generation | lux3d format |\n\n> **Important**: If the `version` parameter is not provided in the request, the system will default to `v2.0-preview`.\n\nAll generation APIs (image-to-3D, text-to-3D, material repaint) support the `version` parameter.\n\n### Specify Version in Python\n\n```python\n# Image to 3D with version\nresult = generate_3d_model(\"path/to/input.jpg\", version=\"v2.0-preview\")\n\n# Text to 3D with version\nresult = generate_text_to_3d(\n    \"Generate a high-quality 3D wooden chair\",\n    style=\"photorealistic\",\n    version=\"v2.0-preview\",\n)\n\n# Material repaint with version\nresult = generate_material_transfer(\n    \"path/to/reference.png\",\n    mesh_url=\"https://example.com/model.glb\",\n    version=\"v2.0-preview\",\n)\n```\n\n### Specify Version in Command Line\n\n```bash\n# Image to 3D with version\npython lux3d_client.py image input.jpg output.zip --version v2.0-preview\n\n# Text to 3D with version\npython lux3d_client.py text \"Generate a high-quality 3D wooden chair\" output.zip --style photorealistic --version v2.0-preview\n\n# Material repaint with version\npython lux3d_client.py material reference.png output.zip --mesh-url https://example.com/model.glb --version v2.0-preview\n```\n\n## Output\n\nThe result URL typically points to a ZIP file containing:\n\n- A GLB model file\n- PBR texture assets\n\nResult URL validity: **2 hours**\n\n## Notes\n\n- Authentication uses `Authorization` header: `Authorization: <apiKey>`\n- Image-to-3D, text-to-3D, and material repaint use different create endpoints\n- All three workflows share the same task query endpoint\n- `prompt` and `style` are required for text-to-3D\n- `img` is optional for text-to-3D and should be a full data URL after encoding\n- Material repaint requires `img` (reference image) and `meshUrl` (model GLB file URL) parameters\n\n## Requirements\n\n```bash\npip install Pillow requests\n```\n\n## References\n\n- Lux3D Website: https://lux3d.aholo3d.com/\n- API Key Application: https://labs.aholo3d.com/api-keys\n- API contact: lux3d@qunhemail.com\n\nFile v2.0.1:_meta.json\n\n{\n  \"ownerId\": \"kn7fftn66sw2cx9v5ndbryhxvh82tj8m\",\n  \"slug\": \"lux3d\",\n  \"version\": \"2.0.1\",\n  \"publishedAt\": 1780906800945\n}\n\nFile v2.0.1:skill-card.md\n\n## Description: <br>\nUse Lux3D to generate 3D models from images or text, or perform material repaint. <br>\n\nThis skill is ready for commercial/non-commercial use. <br>\n\n## Publisher: <br>\n[violalulu](https://clawhub.ai/user/violalulu) <br>\n\n### License/Terms of Use: <br>\nMIT-0 <br>\n\n\n## Use Case: <br>\nDevelopers and creators use this skill to call Lux3D workflows that convert images or text prompts into 3D assets and repaint materials on existing 3D models. <br>\n\n### Deployment Geography for Use: <br>\nGlobal, using the documented international endpoint. <br>\n\n## Known Risks and Mitigations: <br>\nRisk: Review before execution as proposals could introduce incorrect or misleading guidance into skills. <br>\nMitigation: Review and scan skill before deployment. <br>\n\n## Reference(s): <br>\n- [Lux3D ClawHub skill page](https://clawhub.ai/violalulu/lux3d) <br>\n- [Lux3D website](https://lux3d.aholo3d.com/) <br>\n- [Lux3D API key application](https://labs.aholo3d.com/api-keys) <br>\n- [Lux3D international API endpoint](https://api.aholo3d.com/global) <br>\n\n\n## Skill Output: <br>\n**Output Type(s):** [text, code, shell commands, configuration, files] <br>\n**Output Format:** [Markdown guidance with Python and bash examples; runtime workflows download ZIP files containing GLB models and PBR texture assets.] <br>\n**Output Parameters:** [1D] <br>\n**Other Properties Related to Output:** [Requires LUX3D_API_KEY and sends selected prompts, images, mesh URLs, and the API key to the configured Lux3D endpoint; generated result URLs are typically valid for 2 hours.] <br>\n\n## Skill Version(s): <br>\n2.0.1 (source: server release metadata) <br>\n\n## Ethical Considerations: <br>\nUsers should evaluate whether this skill is appropriate for their environment, review any generated or modified files before relying on them, and apply their organization's safety, security, and compliance requirements before deployment. <br>\n\nArchive v2.0.0: 4 files, 8557 bytes\n\nFiles: lux3d_client.py (19778b), skill-card.md (2494b), SKILL.md (6757b), _meta.json (124b)\n\nFile v2.0.0:SKILL.md\n\n---\nname: lux3d\ndescription: \"Use Lux3D to generate 3D models from images or text, or perform material transfer. Trigger when the user asks for image to 3D, text to 3D, prompt to 3D, create a 3D model from a description, create a 3D model from a description plus a reference image, or regenerate materials for an existing 3D model. For international users.\"\n---\n\n## What This Skill Does\n\nLux3D generates 3D assets through three documented asynchronous workflows:\n\n- **Image to 3D**: submit an input image, poll the task, then download the ZIP result.\n- **Text to 3D**: submit a prompt plus style, optionally with a reference image, poll the task, then download the ZIP result.\n- **Material Transfer**: submit a reference image and a model URL, poll the task, then download the regenerated model result.\n\nAll workflows require `LUX3D_API_KEY`, which is the API key obtained from https://labs.aholo3d.com/api-keys.\n\n## API Endpoint\n\n- **International Endpoint**: `https://api.aholo3d.com/global`\n\n## Setup\n\n### Apply for an API Key\n\n- Register at: https://labs.aholo3d.com/api-keys\n\n### Set Environment Variables\n\n**Required:**\n\n```bash\nexport LUX3D_API_KEY=\"your_api_key\"\n```\n\n**Optional - Override Base URL:**\n\n```bash\nexport LUX3D_BASE_URL=\"https://api.aholo3d.com/global\"\n```\n\n**Optional - Specify Region:**\n\n```bash\nexport LUX3D_REGION=\"international\"\n```\n\n## Python Usage\n\n### Image to 3D\n\n```python\nfrom skill.lux3d_client import generate_3d_model\n\nresult = generate_3d_model(\"path/to/input.jpg\", version=\"v2.0-preview\")\nprint(result)\n```\n\nOr explicitly specify international region:\n\n```python\nresult = generate_3d_model(\"path/to/input.jpg\", region=\"international\", version=\"v2.0-preview\")\nprint(result)\n```\n\n### Text to 3D\n\n```python\nfrom skill.lux3d_client import generate_text_to_3d\n\nresult = generate_text_to_3d(\n    \"Generate a high-quality 3D wooden chair\",\n    style=\"photorealistic\",\n    version=\"v2.0-preview\",\n)\nprint(result)\n```\n\n### Text plus Reference Image\n\n```python\nfrom skill.lux3d_client import generate_text_to_3d\n\nresult = generate_text_to_3d(\n    \"Generate a premium ceramic vase with a glossy glaze\",\n    style=\"glass\",\n    image_path=\"path/to/reference.png\",\n    version=\"v2.0-preview\",\n)\nprint(result)\n```\n\n### Low-level Task APIs\n\n```python\nfrom skill.lux3d_client import (\n    create_task,\n    create_text_to_3d_task,\n    create_material_transfer_task,\n    query_task_status,\n    download_model,\n)\n\nimage_task_id = create_task(\"path/to/input.jpg\")\ntext_task_id = create_text_to_3d_task(\n    \"Generate a stylized toy robot\",\n    style=\"cartoon\",\n    image_path=\"path/to/reference.png\",\n)\nmaterial_task_id = create_material_transfer_task(\n    \"path/to/reference.png\",\n    mesh_url=\"https://example.com/model.glb\",\n)\n\nimage_model_url = query_task_status(image_task_id)\ntext_model_url = query_task_status(text_task_id)\nmaterial_model_url = query_task_status(material_task_id)\n\ndownload_model(image_model_url, \"image_to_3d.zip\")\ndownload_model(text_model_url, \"text_to_3d.zip\")\ndownload_model(material_model_url, \"material_transfer.zip\")\n```\n\n### Material Transfer\n\n```python\nfrom skill.lux3d_client import generate_material_transfer\n\nresult = generate_material_transfer(\n    \"path/to/reference.png\",\n    mesh_url=\"https://example.com/model.glb\",\n    version=\"v2.0-preview\",\n)\nprint(result)\n```\n\n## Command Line Usage\n\n### Region Selection\n\nUse `--region` or `-r` to select the international endpoint (default):\n\n```bash\npython lux3d_client.py --region international image input.jpg output.zip\n```\n\nOr simply omit the region flag (international is default):\n\n```bash\npython lux3d_client.py image input.jpg output.zip\n```\n\n### Image to 3D\n\n```bash\n# Historical form (default region)\npython lux3d_client.py input.jpg output.zip --version v2.0-preview\n\n# Explicit command\npython lux3d_client.py image input.jpg output.zip --version v2.0-preview\n```\n\n### Text to 3D\n\n```bash\npython lux3d_client.py text \"Generate a high-quality 3D wooden chair\" output.zip --style photorealistic --version v2.0-preview\n```\n\n### Text to 3D with Reference Image\n\n```bash\npython lux3d_client.py text \"Generate a futuristic desk lamp\" output.zip --style cyberpunk --image ref.png --version v2.0-preview\n```\n\n### Material Transfer\n\n```bash\npython lux3d_client.py material reference.png output.zip --mesh-url https://example.com/model.glb --version v2.0-preview\n```\n\n## Text-to-3D Styles\n\nSupported styles:\n\n| Style | Description |\n|-------|-------------|\n| `photorealistic` | Photorealistic quality |\n| `cartoon` | Cartoon style |\n| `anime` | Anime style |\n| `hand_painted` | Hand-painted style |\n| `cyberpunk` | Cyberpunk theme |\n| `fantasy` | Fantasy style |\n| `glass` | Glass material |\n\n## Lux3D Version\n\nYou can specify the Lux3D version via the `version` parameter:\n\n| Version | Description |\n|---------|-------------|\n| `v1.0-pro` | Default version, stable release |\n| `v2.0-preview` | Preview version |\n\nAll generation APIs (image-to-3D, text-to-3D, material transfer) support the `version` parameter.\n\n### Specify Version in Python\n\n```python\n# Image to 3D with version\nresult = generate_3d_model(\"path/to/input.jpg\", version=\"v2.0-preview\")\n\n# Text to 3D with version\nresult = generate_text_to_3d(\n    \"Generate a high-quality 3D wooden chair\",\n    style=\"photorealistic\",\n    version=\"v2.0-preview\",\n)\n\n# Material transfer with version\nresult = generate_material_transfer(\n    \"path/to/reference.png\",\n    mesh_url=\"https://example.com/model.glb\",\n    version=\"v2.0-preview\",\n)\n```\n\n### Specify Version in Command Line\n\n```bash\n# Image to 3D with version\npython lux3d_client.py image input.jpg output.zip --version v2.0-preview\n\n# Text to 3D with version\npython lux3d_client.py text \"Generate a high-quality 3D wooden chair\" output.zip --style photorealistic --version v2.0-preview\n\n# Material transfer with version\npython lux3d_client.py material reference.png output.zip --mesh-url https://example.com/model.glb --version v2.0-preview\n```\n\n## Output\n\nThe result URL typically points to a ZIP file containing:\n\n- A GLB model file\n- PBR texture assets\n\nResult URL validity: **2 hours**\n\n## Notes\n\n- Authentication uses `Authorization` header: `Authorization: <apiKey>`\n- Image-to-3D, text-to-3D, and material transfer use different create endpoints\n- All three workflows share the same task query endpoint\n- `prompt` and `style` are required for text-to-3D\n- `img` is optional for text-to-3D and should be a full data URL after encoding\n- Material transfer requires `img` (reference image) and `meshUrl` (model GLB file URL) parameters\n\n## Requirements\n\n```bash\npip install Pillow requests\n```\n\n## References\n\n- Lux3D Website: https://lux3d.aholo3d.com/\n- API Key Application: https://labs.aholo3d.com/api-keys\n- API contact: lux3d@qunhemail.com\n\nFile v2.0.0:_meta.json\n\n{\n  \"ownerId\": \"kn7fftn66sw2cx9v5ndbryhxvh82tj8m\",\n  \"slug\": \"lux3d\",\n  \"version\": \"2.0.0\",\n  \"publishedAt\": 1779446722062\n}\n\nFile v2.0.0:skill-card.md\n\n## Description: <br>\nUse Lux3D to generate 3D models from images or text, or perform material transfer for international users. <br>\n\nThis skill is ready for commercial/non-commercial use. <br>\n\n## Publisher: <br>\n[violalulu](https://clawhub.ai/user/violalulu) <br>\n\n### License/Terms of Use: <br>\nMIT-0 <br>\n\n\n## Use Case: <br>\nDevelopers and creators use this skill to submit image-to-3D, text-to-3D, and material-transfer jobs to Lux3D/Aholo3D, poll for completion, and download generated 3D asset ZIP files. <br>\n\n### Deployment Geography for Use: <br>\nGlobal <br>\n\n## Known Risks and Mitigations: <br>\nRisk: The Lux3D API key can be sent to an overridden API base URL. <br>\nMitigation: Use only official Lux3D/Aholo3D endpoints for LUX3D_BASE_URL or --base-url, or add a trusted-host allowlist before sending credentials. <br>\nRisk: Prompts, reference images, and model URLs are submitted to an external Lux3D/Aholo3D service. <br>\nMitigation: Submit only data approved for that external service and avoid sensitive or confidential assets unless the user accepts that data handling. <br>\nRisk: Generated ZIP files are downloaded and saved locally. <br>\nMitigation: Save downloads to an expected directory and review or scan generated archives before using their contents in downstream workflows. <br>\n\n\n## Reference(s): <br>\n- [Lux3D Website](https://lux3d.aholo3d.com/) <br>\n- [Lux3D API Key Application](https://labs.aholo3d.com/api-keys) <br>\n- [Lux3D International API Endpoint](https://api.aholo3d.com/global) <br>\n- [ClawHub Skill Page](https://clawhub.ai/violalulu/lux3d) <br>\n- [ClawHub Publisher Profile](https://clawhub.ai/user/violalulu) <br>\n\n\n## Skill Output: <br>\n**Output Type(s):** [text, markdown, code, shell commands, configuration, guidance] <br>\n**Output Format:** [Markdown guidance with Python and shell command examples; runtime workflows return local ZIP file paths for generated 3D assets.] <br>\n**Output Parameters:** [1D] <br>\n**Other Properties Related to Output:** [Generated result URLs are described as valid for 2 hours; downloads are ZIP files typically containing a GLB model and PBR texture assets.] <br>\n\n## Skill Version(s): <br>\n2.0.0 (source: server release metadata) <br>\n\n## Ethical Considerations: <br>\nUsers should evaluate whether this skill is appropriate for their environment, review any generated or modified files before relying on them, and apply their organization's safety, security, and compliance requirements before deployment. <br>\n\nArchive v1.3.1: 3 files, 6379 bytes\n\nFiles: lux3d_client.py (15944b), SKILL.md (4282b), _meta.json (124b)\n\nFile v1.3.1:SKILL.md\n\n---\nname: lux3d\ndescription: \"Use Lux3D to generate 3D models from images or text. Trigger when the user asks for image to 3D, text to 3D, prompt to 3D, create a 3D model from a description, or create a 3D model from a description plus a reference image. For international users.\"\n---\n\n## What This Skill Does\n\nLux3D generates 3D assets through two documented asynchronous workflows:\n\n- **Image to 3D**: submit an input image, poll the task, then download the ZIP result.\n- **Text to 3D**: submit a prompt plus style, optionally with a reference image, poll the task, then download the ZIP result.\n\nBoth workflows require `LUX3D_API_KEY`, which is the API key obtained from https://labs.aholo3d.com/api-keys.\n\n## API Endpoint\n\n- **International Endpoint**: `https://api.aholo3d.com/global`\n\n## Setup\n\n### Apply for an API Key\n\n- Register at: https://labs.aholo3d.com/api-keys\n\n### Set Environment Variables\n\n**Required:**\n\n```bash\nexport LUX3D_API_KEY=\"your_api_key\"\n```\n\n**Optional - Override Base URL:**\n\n```bash\nexport LUX3D_BASE_URL=\"https://api.aholo3d.com/global\"\n```\n\n**Optional - Specify Region:**\n\n```bash\nexport LUX3D_REGION=\"international\"\n```\n\n## Python Usage\n\n### Image to 3D\n\n```python\nfrom skill.lux3d_client import generate_3d_model\n\nresult = generate_3d_model(\"path/to/input.jpg\")\nprint(result)\n```\n\nOr explicitly specify international region:\n\n```python\nresult = generate_3d_model(\"path/to/input.jpg\", region=\"international\")\nprint(result)\n```\n\n### Text to 3D\n\n```python\nfrom skill.lux3d_client import generate_text_to_3d\n\nresult = generate_text_to_3d(\n    \"Generate a high-quality 3D wooden chair\",\n    style=\"photorealistic\",\n)\nprint(result)\n```\n\n### Text plus Reference Image\n\n```python\nfrom skill.lux3d_client import generate_text_to_3d\n\nresult = generate_text_to_3d(\n    \"Generate a premium ceramic vase with a glossy glaze\",\n    style=\"glass\",\n    image_path=\"path/to/reference.png\",\n)\nprint(result)\n```\n\n### Low-level Task APIs\n\n```python\nfrom skill.lux3d_client import (\n    create_task,\n    create_text_to_3d_task,\n    query_task_status,\n    download_model,\n)\n\nimage_task_id = create_task(\"path/to/input.jpg\")\ntext_task_id = create_text_to_3d_task(\n    \"Generate a stylized toy robot\",\n    style=\"cartoon\",\n    image_path=\"path/to/reference.png\",\n)\n\nimage_model_url = query_task_status(image_task_id)\ntext_model_url = query_task_status(text_task_id)\n\ndownload_model(image_model_url, \"image_to_3d.zip\")\ndownload_model(text_model_url, \"text_to_3d.zip\")\n```\n\n## Command Line Usage\n\n### Region Selection\n\nUse `--region` or `-r` to select the international endpoint (default):\n\n```bash\npython lux3d_client.py --region international image input.jpg output.zip\n```\n\nOr simply omit the region flag (international is default):\n\n```bash\npython lux3d_client.py image input.jpg output.zip\n```\n\n### Image to 3D\n\n```bash\n# Historical form (default region)\npython lux3d_client.py input.jpg output.zip\n\n# Explicit command\npython lux3d_client.py image input.jpg output.zip\n```\n\n### Text to 3D\n\n```bash\npython lux3d_client.py text \"Generate a high-quality 3D wooden chair\" output.zip --style photorealistic\n```\n\n### Text to 3D with Reference Image\n\n```bash\npython lux3d_client.py text \"Generate a futuristic desk lamp\" output.zip --style cyberpunk --image ref.png\n```\n\n## Text-to-3D Styles\n\nSupported styles:\n\n| Style | Description |\n|-------|-------------|\n| `photorealistic` | Photorealistic quality |\n| `cartoon` | Cartoon style |\n| `anime` | Anime style |\n| `hand_painted` | Hand-painted style |\n| `cyberpunk` | Cyberpunk theme |\n| `fantasy` | Fantasy style |\n| `glass` | Glass material |\n\n## Output\n\nThe result URL typically points to a ZIP file containing:\n\n- A GLB model file\n- PBR texture assets\n\nResult URL validity: **2 hours**\n\n## Notes\n\n- Authentication uses `Authorization` header: `Authorization: <apiKey>`\n- Image-to-3D and text-to-3D use different create endpoints\n- Both workflows share the same task query endpoint\n- `prompt` and `style` are required for text-to-3D\n- `img` is optional for text-to-3D and should be a full data URL after encoding\n\n## Requirements\n\n```bash\npip install Pillow requests\n```\n\n## References\n\n- Lux3D Website: https://lux3d.aholo3d.com/\n- API Key Application: https://labs.aholo3d.com/api-keys\n- API contact: lux3d@qunhemail.com\n\nFile v1.3.1:_meta.json\n\n{\n  \"ownerId\": \"kn7fftn66sw2cx9v5ndbryhxvh82tj8m\",\n  \"slug\": \"lux3d\",\n  \"version\": \"1.3.1\",\n  \"publishedAt\": 1779358242754\n}\n\nArchive v1.3.0: 3 files, 5519 bytes\n\nFiles: lux3d_client.py (13757b), SKILL.md (3480b), _meta.json (124b)\n\nFile v1.3.0:SKILL.md\n\n---\nname: lux3d\ndescription: \"Use Lux3D to generate 3D models from images or text. Trigger when the user asks for image to 3D, text to 3D, prompt to 3D, create a 3D model from a description, or create a 3D model from a description plus a reference image.\"\n---\n\n## What This Skill Does\n\nLux3D generates 3D assets through two documented asynchronous workflows:\n\n- Image to 3D: submit an input image, poll the task, then download the ZIP result.\n- Text to 3D: submit a prompt plus style, optionally with a reference image, poll the task, then download the ZIP result.\n\nBoth workflows require `LUX3D_API_KEY`, which is the API key obtained from https://labs.aholo3d.com/.\n\n## Setup\n\nApply for an API key:\n\n- Register at: https://labs.aholo3d.com/\n\nSet the environment variable before use:\n\n```bash\nexport LUX3D_API_KEY=\"your_api_key\"\n```\n\nOptional API root override:\n\n```bash\nexport LUX3D_BASE_URL=\"https://api.aholo3d.com/global\"\n```\n\nDocumented API roots:\n\n- International: `https://api.aholo3d.com/global`\n\n## Python Usage\n\nImage to 3D:\n\n```python\nfrom lux3d_client import generate_3d_model\n\nresult = generate_3d_model(\"path/to/input.jpg\")\nprint(result)\n```\n\nText to 3D:\n\n```python\nfrom lux3d_client import generate_text_to_3d\n\nresult = generate_text_to_3d(\n    \"Generate a high-quality 3D wooden chair\",\n    style=\"photorealistic\",\n)\nprint(result)\n```\n\nText plus reference image:\n\n```python\nfrom lux3d_client import generate_text_to_3d\n\nresult = generate_text_to_3d(\n    \"Generate a premium ceramic vase with a glossy glaze\",\n    style=\"glass\",\n    image_path=\"path/to/reference.png\",\n)\nprint(result)\n```\n\nLow-level task APIs:\n\n```python\nfrom lux3d_client import (\n    create_task,\n    create_text_to_3d_task,\n    query_task_status,\n    download_model,\n)\n\nimage_task_id = create_task(\"path/to/input.jpg\")\ntext_task_id = create_text_to_3d_task(\n    \"Generate a stylized toy robot\",\n    style=\"cartoon\",\n    image_path=\"path/to/reference.png\",\n)\n\nimage_model_url = query_task_status(image_task_id)\ntext_model_url = query_task_status(text_task_id)\n\ndownload_model(image_model_url, \"image_to_3d.zip\")\ndownload_model(text_model_url, \"text_to_3d.zip\")\n```\n\n## Command Line Usage\n\nHistorical image-to-3D form:\n\n```bash\npython lux3d_client.py input.jpg output.zip\n```\n\nExplicit image-to-3D command:\n\n```bash\npython lux3d_client.py image input.jpg output.zip\n```\n\nText-to-3D command:\n\n```bash\npython lux3d_client.py text \"Generate a high-quality 3D wooden chair\" output.zip --style photorealistic\n```\n\nText-to-3D with a reference image:\n\n```bash\npython lux3d_client.py text \"Generate a futuristic desk lamp\" output.zip --style cyberpunk --image ref.png\n```\n\n## Text-to-3D Styles\n\nSupported documented styles:\n\n- `photorealistic`\n- `cartoon`\n- `anime`\n- `hand_painted`\n- `cyberpunk`\n- `fantasy`\n- `glass`\n\n## Output\n\nThe result URL typically points to a ZIP file. The package commonly contains:\n\n- a GLB model file\n- PBR texture assets\n\nThe documented result URL validity window is 2 hours.\n\n## Notes\n\n- The skill uses Authorization header for authentication: `Authorization: <apiKey>`\n- Image-to-3D and text-to-3D use different create endpoints.\n- Both workflows share the same task query endpoint.\n- `prompt` and `style` are required for text-to-3D.\n- `img` is optional for text-to-3D and should be a full data URL after encoding.\n\n## Requirements\n\n```bash\npip install Pillow requests\n```\n\n## References\n\n- API Key Application: https://labs.aholo3d.com/\n- API contact: lux3d@qunhemail.com\n\nFile v1.3.0:_meta.json\n\n{\n  \"ownerId\": \"kn7fftn66sw2cx9v5ndbryhxvh82tj8m\",\n  \"slug\": \"lux3d\",\n  \"version\": \"1.3.0\",\n  \"publishedAt\": 1779158906453\n}","readmeExcerpt":"Skill: lux3d Owner: violalulu Summary: Use the Lux3D Global environment to generate 3D from image URLs or text, transfer materials onto an existing model, complete additional viewpoints from one object image, export model formats, and query task status or generation history. Use for image-to-3D, text-to-3D, text plus reference image, mat Tags: latest:4.1.2 Version history: v4.1.2 | 2026-08-28T11:42:45.013Z | user - R","codeSnippets":[],"executableExamples":[{"language":"bash","snippet":"export LUX3D_API_KEY=\"your_api_key\""},{"language":"bash","snippet":"export LUX3D_BASE_URL=\"https://api.aholo3d.com/global\""},{"language":"bash","snippet":"export LUX3D_REGION=\"international\""},{"language":"python","snippet":"from skill.lux3d_client import generate_3d_model\n\nresult = generate_3d_model(\n    \"path/to/view-1.png\",\n    imagePaths=[\"path/to/view-2.png\"],\n    version=\"G1\",\n    outputFormat=[\"zip\"],\n    faceCount=200000,\n    enablePbr=True,\n    textureSize=1000,\n)"},{"language":"python","snippet":"from skill.lux3d_client import generate_3d_model\n\nresult = generate_3d_model(\"path/to/input.jpg\", version=\"v2.0-preview\")\nprint(result)"},{"language":"python","snippet":"result = generate_3d_model(\"path/to/input.jpg\", version=\"v3.0-standard\", faceCount=100000)\nprint(result)"}],"parameters":null,"dependencies":[],"permissions":[],"extractedFiles":[{"path":"SKILL.md","content":"---\nname: lux3d\ndescription: \"Use the Lux3D Global environment to generate 3D from image URLs or text, transfer materials onto an existing model, complete additional viewpoints from one object image, export model formats, and query task status or generation history. Use for image-to-3D, text-to-3D, text plus reference image, material transfer, four-view completion, USDZ/OBJ/FBX export, task queries, or task lists.\"\n---\n\n# Lux3D Global\n\nUse **lux3d_client.py** in this directory to call the public Lux3D API. Before running a command, change to this Skill directory or replace the script name in the examples with its absolute path. This package defaults to the Global environment:\n\n~~~text\nhttps://api.aholo3d.com/global\n~~~\n\nUse only the public endpoints and fields listed here. Do not add business-type fields or internal versions.\n\n## Before Calling\n\n1. Apply for a key on the [Global API Key page](https://labs.aholo3d.com/api-keys).\n2. Set the environment:\n\n   ~~~bash\n   export LUX3D_API_KEY=\"your_api_key\"\n   export LUX3D_REGION=\"international\"\n   ~~~\n\n3. **img**, **imgs**, **meshUrl**, and **modelUrl** must be HTTP(S) URLs accessible to Lux3D. For a local file, upload it first with the [Asset upload APIs](https://labs.aholo3d.com/api-docs/en/api-reference#tag/asset), then use the returned URL.\n4. Global and China API Keys are not interchangeable. This Skill defaults to Global; do not mix it with the China endpoint.\n5. Pass the API Key directly in the authentication header, without a Bearer prefix:\n\n   ~~~text\n   Authorization: <API Key>\n   ~~~\n\nInstall the dependency:\n\n~~~bash\npip install requests\n~~~\n\n## Choose a Capability\n\nSelect one creation endpoint for the request:\n\n| Need | Capability |\n| --- | --- |\n| One or more object images and a 3D model | Image-to-3D |\n| A text description, optionally with one reference image | Text-to-3D |\n| An existing GLB that needs material transfer from an image | Material transfer |\n| Optional multi-view completion before a G1-Turbo generation request | Image-to-four-view -> G1-Turbo image-to-3D |\n| Additional formats from a Lux3D ZIP or GLB | Multi-format export |\n\nFor image-to-3D and text-to-3D, pass the input directly to **G1** without assembling other capabilities around it. **G1-Turbo** can run as a lightweight atomic capability on its own; when the user wants more control through multi-view input, they may optionally complete viewpoints first and pass the results as **imgs**. If the user did not specify a version and the request does not distinguish them, ask before creating the task.\n\nA create endpoint returns a **taskid**. Query that task afterward; poll every 10-15 seconds.\n\n## 1. Image-to-3D\n\n**version** is required. Pass **img** for a single image or **imgs** for multiple images, never both. **imgs** accepts 1-32 URLs of the same subject; put the clearest and most complete view first.\n\n### G1\n\nPass only these fields:\n\n| Field | Required | How to pass it |\n| --- | :---: | --- |\n| **img** | Conditional | O"},{"path":"_meta.json","content":"{\n  \"ownerId\": \"kn7fftn66sw2cx9v5ndbryhxvh82tj8m\",\n  \"slug\": \"lux3d\",\n  \"version\": \"4.1.2\",\n  \"publishedAt\": 1787917365013\n}"},{"path":"skill-card.md","content":"## Description:\n\nUse the Lux3D Global environment to generate 3D from image URLs or text, transfer materials onto an existing model, complete additional viewpoints from one object image, export model formats, and query task status or generation history.\n\nThis skill is ready for commercial/non-commercial use.\n\n## Publisher:\n\n[violalulu](https://clawhub.ai/user/violalulu)\n\n### License/Terms of Use:\n\nMIT-0\n\n## Use Case:\n\nDevelopers and technical creators use this skill to call Lux3D APIs for image-to-3D, text-to-3D, material transfer, four-view completion, model export, task status checks, and generation history queries.\n\n### Deployment Geography for Use:\n\nGlobal\n\n## Known Risks and Mitigations:\n\nRisk: Authenticated Lux3D API requests can be redirected to an arbitrary endpoint if LUX3D_BASE_URL or --base-url is set.\n\nMitigation: Use only approved Lux3D endpoints and avoid setting LUX3D_BASE_URL or --base-url unless the endpoint has been reviewed.\n\nRisk: Downloaded model outputs can overwrite the selected output path.\n\nMitigation: Choose output paths deliberately and run the skill in a controlled working directory.\n\nRisk: Runtime dependencies and API behavior are supplied by third-party services.\n\nMitigation: Install in a virtual environment, consider pinning dependencies, and use the skill only when the publisher and runtime environment are trusted.\n\n## Reference(s):\n\n- [Lux3D Global API Key](https://labs.aholo3d.com/api-keys)\n- [Lux3D Asset Upload APIs](https://labs.aholo3d.com/api-docs/en/api-reference#tag/asset)\n- [Lux3D Pricing](https://www.aholo3d.com/pricing)\n- [ClawHub Skill Page](https://clawhub.ai/violalulu/skills/lux3d)\n\n## Skill Output:\n\n**Output Type(s):** [guidance, shell commands, code, configuration]\n\n**Output Format:** [Markdown with inline bash and Python code blocks]\n\n**Output Parameters:** [1D]\n\n**Other Properties Related to Output:** [May initiate Lux3D API tasks and return task IDs, status data, generated asset URLs, or downloaded model files.]\n\n## Skill Version(s):\n\n4.1.2 (source: server release metadata)\n\n## Ethical Considerations:\n\nUsers should evaluate whether this skill is appropriate for their environment, review any generated or modified files before relying on them, and apply their organization's safety, security, and compliance requirements before deployment."}],"languages":[],"docsSourceLabel":"CLAWHUB","editorialOverview":null,"editorialQuality":{"score":100,"threshold":65,"status":"thin","wordCount":1645,"uniquenessScore":41,"reasons":["uniqueness-below-45"]}},"media":{"evidence":{"source":"no-media","verified":false,"confidence":"low","updatedAt":"2026-10-09T17:23:11.260Z","emptyReason":"No screenshots, media assets, or demo links are available."},"primaryImageUrl":null,"mediaAssetCount":0,"assets":[],"demoUrl":null},"ownerResources":{"evidence":{"source":"unclaimed","verified":false,"confidence":"low","updatedAt":"2026-10-09T17:23:11.260Z","emptyReason":"This page has not been claimed by the agent owner."},"hasCustomPage":false,"customPageUpdatedAt":null,"customLinks":[],"structuredLinks":{"docsUrl":null,"demoUrl":null,"supportUrl":null,"pricingUrl":null,"statusUrl":null},"customPage":null},"relatedAgents":{"evidence":{"source":"protocol-neighbors","verified":false,"confidence":"medium","updatedAt":"2026-10-10T02:03:53.548Z","emptyReason":null},"items":[{"id":"8ebccd8e-3863-4187-8355-c3f14e1f9edf","entityType":"agent","canonicalPath":"/agent/iofficeai-aionui","slug":"iofficeai-aionui","name":"AionUi","description":"Free, local, open-source 24/7 Cowork app and OpenClaw for Gemini CLI, Claude Code, Codex, OpenCode, Qwen Code, Goose CLI, Auggie, and more | 🌟 Star if you like it!","url":"https://github.com/iOfficeAI/AionUi","homepage":"https://www.aionui.com","source":"GITHUB_REPOS","protocols":["MCP","OPENCLAW"],"capabilities":[],"safetyScore":100,"overallRank":70,"updatedAt":"2026-10-09T19:11:12.944Z","createdAt":"2026-02-25T03:38:16.584Z","downloads":null},{"id":"b917f68a-ebff-438e-84f8-3f4b2494c0bc","entityType":"agent","canonicalPath":"/agent/activepieces-activepieces","slug":"activepieces-activepieces","name":"activepieces","description":"AI Agents & MCPs & AI Workflow Automation • (~400 MCP servers for AI agents) • AI Automation / AI Agent with MCPs • AI Workflows & AI Agents • MCPs for AI Agents","url":"https://github.com/activepieces/activepieces","homepage":"https://www.activepieces.com","source":"GITHUB_REPOS","protocols":["OPENCLAW"],"capabilities":[],"safetyScore":100,"overallRank":70,"updatedAt":"2026-04-15T02:22:12.426Z","createdAt":"2026-02-25T03:38:12.412Z","downloads":null},{"id":"5cb26759-3a39-483f-94cf-276a98c13bb8","entityType":"agent","canonicalPath":"/agent/cherryhq-cherry-studio","slug":"cherryhq-cherry-studio","name":"cherry-studio","description":"AI productivity studio with smart chat, autonomous agents, and 300+ assistants. Unified access to frontier LLMs","url":"https://github.com/CherryHQ/cherry-studio","homepage":"https://cherry-ai.com","source":"GITHUB_REPOS","protocols":["MCP","OPENCLAW"],"capabilities":[],"safetyScore":100,"overallRank":70,"updatedAt":"2026-04-11T14:38:40.986Z","createdAt":"2026-02-25T03:38:19.379Z","downloads":null},{"id":"6f6582d0-5d76-4f0f-b81d-86520247950b","entityType":"agent","canonicalPath":"/agent/copilotkit-copilotkit","slug":"copilotkit-copilotkit","name":"CopilotKit","description":"The Frontend for Agents & Generative UI. React + Angular","url":"https://github.com/CopilotKit/CopilotKit","homepage":"https://docs.copilotkit.ai","source":"GITHUB_REPOS","protocols":["OPENCLAW"],"capabilities":[],"safetyScore":100,"overallRank":70,"updatedAt":"2026-03-25T09:50:57.846Z","createdAt":"2026-02-25T03:39:14.617Z","downloads":null}],"links":{"hub":"/agent","source":"/agent/source/clawhub","protocols":[{"label":"OpenClaw","href":"/agent/protocol/openclew"}]}}}