Hitem3D
Use this skill to turn images into downloadable 3D models via scripts/hitem3d.sh.
Use the script
Resolve all relative paths against this skill directory.
- - Script: INLINECODE1
- API reference: INLINECODE2
- Product guide / positioning: INLINECODE3
- ClawHub-style description: INLINECODE4
- Release checklist: INLINECODE5
- Live validation notes: INLINECODE6
If the user asks for a normal one-off generation, prefer the full pipeline:
- 1. submit task
- wait for completion
- download result
- report output path, format, model, and estimated credit cost
Do not leave the user with only a task ID unless they explicitly want async handling.
Operator standard
Act like a production 3D operator, not a thin API wrapper.
- - Infer likely intent from the request instead of asking obvious questions.
- Distinguish single-image, portrait, multi-view, and batch every time.
- Prefer finishing the workflow over handing back raw JSON.
- Surface cost, output path, format, and caveats in plain language.
- Stop early on ambiguous expensive jobs, invalid inputs, or unsafe assumptions.
- Never echo secrets, bearer tokens, or raw Authorization headers.
Required setup
Runtime requirements
- - Binaries:
curl, python3, INLINECODE9 - Required env vars:
HITEM3D_AK, INLINECODE11 - Optional env var: INLINECODE12
The user must provide credentials through environment variables:
CODEBLOCK0
If credentials are missing, stop and tell the user exactly which variables are not set.
Default operating policy
When the user says “turn this image into 3D” without more detail, use these defaults:
- - model: INLINECODE13
- request type:
3 (geometry + texture) - resolution: INLINECODE15
- format:
2 (GLB) - face count: unset
Why: this is the best general-purpose quality/output tradeoff.
Choose the right mode
Single-image general object
Use when the input is one product shot, concept image, illustration, object render, furniture photo, toy, packaging, or other non-portrait asset.
Default command pattern:
CODEBLOCK1
Portrait / bust generation
Use portrait models when the user explicitly wants a person, face, bust, avatar head, or half-body likeness.
Preferred defaults:
- - model: INLINECODE17
- resolution: INLINECODE18
- format: GLB unless user asks otherwise
Command pattern:
CODEBLOCK2
3D printing
If the user mentions 3D printing, printer, slicer, or STL, prefer:
- - format:
3 (STL) - request type:
1 for mesh-only when texture is irrelevant - optionally set higher face count for smoother geometry
Command pattern:
CODEBLOCK3
AR / Apple preview
If the user mentions Apple AR, Quick Look, Vision Pro, AR preview, or iPhone preview, prefer format
5 (USDZ).
Fast / cheap draft
If the user wants a rough draft, cheap test, or low-cost preview, prefer:
- - model: INLINECODE22
- resolution: INLINECODE23
- type:
1 or 3 depending on whether texture matters
Multi-view reconstruction
Use multi-view when the user provides 2-4 images of the same subject from different angles.
Use:
- -
generate-multi or INLINECODE27 - pass a bitmap describing which views are present
Bitmap order is:
Examples:
- - front + left = INLINECODE28
- front + back + left + right = INLINECODE29
- front + right = INLINECODE30
Do not use multi-view mode for unrelated images.
Batch processing
Use batch mode only when the user wants to process many separate images independently. Do not confuse batch with multi-view.
Batch means:
- - one task per image
- submit all
- wait/download each
- return a concise summary of successes/failures and output paths
Cost policy
Before batch jobs or obviously expensive jobs, tell the user the expected cost and ask for confirmation.
Must confirm before proceeding when either is true:
- - batch job with more than 5 images
- likely cost exceeds 100 credits total
- the request implies repeated retries, alternative variants, or multiple output formats that would multiply spend
For one-off standard jobs, confirmation is not required unless the user has asked to be cost-cautious.
Reference pricing in references/api.md.
Practical heuristics:
- - cheapest draft:
hitem3dv1.5 + 512 + mesh-only = 5 credits - default general result:
hitem3dv2.0 + 1536 + textured = 50 credits - premium portrait / 1536pro textured = about 70 credits
When estimating cost, say whether the number is per task or total batch cost.
Output policy
Prefer saving downloads into a user-relevant folder under the current workspace unless the user provides a destination.
Suggested defaults:
- - one-off tasks: INLINECODE36
- batch tasks: INLINECODE37
When reporting completion, include:
- - task ID
- final status
- saved file path
- output format
- model used
- resolution
- estimated credit cost
If the API returns a preview/cover URL, include it when useful.
Common commands
Check balance
CODEBLOCK4
Submit only
CODEBLOCK5
Full one-shot pipeline
CODEBLOCK6
For long jobs, explicitly raise the timeout instead of assuming 10 minutes is enough:
CODEBLOCK7
Full one-shot pipeline with custom options
CODEBLOCK8
Multi-view submit
CODEBLOCK9
Multi-view full pipeline
CODEBLOCK10
Long-running jobs
If a job is likely to take a while, set explicit polling and timeout values:
CODEBLOCK11
Wait for an existing task and download
CODEBLOCK12
For slow tasks:
CODEBLOCK13
Batch folder processing
CODEBLOCK14
Decision rules
If the user does not specify format:
- - use GLB by default
- use STL for 3D printing intent
- use USDZ for Apple AR intent
If the user does not specify model:
- - use
scene-portraitv2.1 for portraits - otherwise use INLINECODE39
If the user does not specify resolution:
- - use
1536 for general work - use
1536pro for portrait premium output - use
512 for cheap drafts
If the user says “highest quality”:
- - general object:
hitem3dv2.0 + INLINECODE44 - portrait:
scene-portraitv2.1 + INLINECODE46 - mention expected credit usage before running
Failure handling
Missing credentials
Stop and ask the user to set
HITEM3D_AK and
HITEM3D_SK.
Bad input images
Reject unsupported formats and files larger than 20MB before calling the API.
Auth failure
Tell the user credentials are invalid or expired. Do not keep retrying.
Generation failure
If API error is
50010001, tell the user the image likely could not be parsed and credits should be refunded automatically.
Token expiry
The script auto-fetches tokens. Retry once if a token-related request fails.
URL expiry
If the returned download URL has expired, re-query task status to fetch a fresh URL before declaring failure.
Multi-view mismatch
If the user labels images as multi-view but the set is missing the front view, warn that Hitem3D expects the front view and that results may fail or degrade.
Security rules
- - Never print or store AK/SK in user-visible output.
- Treat callback URLs as advanced usage; do not invent or auto-fill webhooks.
- Do not claim full production validation unless live API runs have been completed with real credentials.
- If credentials are unavailable, say the skill is design-validated but not fully live-validated.
Download URL expiry
If the result URL expired, re-query task status to obtain a fresh result URL if available, then download again.
Unsupported combination
Reject obviously bad combos before calling the API, especially:
- - request type
2 with INLINECODE51 - multi-view without a valid 4-bit view bitmap
- face count outside 100000-2000000
Notes for good judgment
- - A user saying “folder of 30 product renders” means batch, not multi-view.
- A user sending front/back/left/right of the same object means multi-view, not batch.
- For printing intent, geometry matters more than texture.
- For showcase/demo intent, textured GLB is usually the right default.
- Prefer completing the full task over dumping raw API responses.
- Keep user-visible replies concise and outcome-focused.
Hitem3D
使用此技能通过 scripts/hitem3d.sh 将图像转换为可下载的 3D 模型。
使用脚本
所有相对路径均相对于此技能目录解析。
- - 脚本:scripts/hitem3d.sh
- API 参考:references/api.md
- 产品指南/定位:references/product-guide.md
- ClawHub 风格描述:references/clawhub-description.md
- 发布检查清单:references/release-checklist.md
- 实时验证说明:references/live-validation.md
如果用户请求常规的一次性生成,优先使用完整流程:
- 1. 提交任务
- 等待完成
- 下载结果
- 报告输出路径、格式、模型和预估信用点数消耗
除非用户明确要求异步处理,否则不要只给用户一个任务 ID。
操作员标准
像一名专业的 3D 操作员,而非简单的 API 封装。
- - 从请求中推断可能的意图,而不是询问显而易见的问题。
- 每次都要区分单张图像、肖像、多视图和批量处理。
- 优先完成工作流程,而不是返回原始 JSON。
- 用通俗语言说明成本、输出路径、格式和注意事项。
- 对于模糊的高成本任务、无效输入或不安全的假设,提前停止。
- 绝不回显密钥、Bearer Token 或原始 Authorization 头。
必要设置
运行时要求
- - 二进制文件:curl、python3、base64
- 必需的环境变量:HITEM3DAK、HITEM3DSK
- 可选的环境变量:HITEM3D_TOKEN
用户必须通过环境变量提供凭证:
bash
export HITEM3DAK=youraccess_key
export HITEM3DSK=yoursecret_key
如果缺少凭证,请停止并明确告知用户哪些变量未设置。
默认操作策略
当用户说“将此图像转为 3D”而没有更多细节时,使用以下默认值:
- - 模型:hitem3dv2.0
- 请求类型:3(几何体 + 纹理)
- 分辨率:1536
- 格式:2(GLB)
- 面数:不设置
原因:这是最佳通用质量/输出权衡。
选择正确的模式
单张图像通用物体
当输入为一张产品照片、概念图、插图、物体渲染图、家具照片、玩具、包装或其他非肖像素材时使用。
默认命令模式:
bash
scripts/hitem3d.sh run input.png
肖像/半身像生成
当用户明确需要人物、面部、半身像、头像或上半身形象时,使用肖像模型。
首选默认值:
- - 模型:scene-portraitv2.1
- 分辨率:1536pro
- 格式:除非用户另有要求,否则使用 GLB
命令模式:
bash
scripts/hitem3d.sh run face.jpg --model scene-portraitv2.1 --resolution 1536pro
3D 打印
如果用户提到 3D 打印、打印机、切片软件或 STL,优先使用:
- - 格式:3(STL)
- 请求类型:当纹理无关时使用 1(仅网格)
- 可选:设置更高的面数以获得更平滑的几何体
命令模式:
bash
scripts/hitem3d.sh run object.png --format 3 --type 1 --face 500000
AR / Apple 预览
如果用户提到 Apple AR、Quick Look、Vision Pro、AR 预览或 iPhone 预览,优先使用格式 5(USDZ)。
快速/廉价草稿
如果用户想要粗略草稿、廉价测试或低成本预览,优先使用:
- - 模型:hitem3dv1.5
- 分辨率:512
- 类型:根据纹理是否重要选择 1 或 3
多视图重建
当用户提供同一物体的 2-4 张不同角度图像时,使用多视图模式。
使用:
- - generate-multi 或 run-multi
- 传入描述哪些视图存在的位图
位图顺序为:
示例:
- - 正面 + 左侧 = 1010
- 正面 + 背面 + 左侧 + 右侧 = 1111
- 正面 + 右侧 = 1001
不要对无关图像使用多视图模式。
批量处理
仅当用户想要独立处理多张单独图像时使用批量模式。不要将批量与多视图混淆。
批量意味着:
- - 每张图像一个任务
- 全部提交
- 等待/下载每个任务
- 返回成功/失败及输出路径的简明摘要
成本策略
在批量任务或明显昂贵的任务之前,告知用户预期成本并请求确认。
满足以下任一条件时,必须确认后再继续:
- - 超过 5 张图像的批量任务
- 总成本可能超过 100 信用点数
- 请求暗示重复重试、替代变体或多个输出格式,会导致花费倍增
对于一次性标准任务,除非用户要求注意成本,否则无需确认。
参考定价见 references/api.md。
实用估算:
- - 最便宜草稿:hitem3dv1.5 + 512 + 仅网格 = 5 信用点数
- 默认通用结果:hitem3dv2.0 + 1536 + 带纹理 = 50 信用点数
- 高级肖像 / 1536pro 带纹理 = 约 70 信用点数
估算成本时,说明是每个任务的成本还是总批量成本。
输出策略
除非用户提供目标路径,否则优先将下载内容保存到当前工作区下的用户相关文件夹。
建议默认值:
- - 一次性任务:./output/hitem3d/
- 批量任务:./output/hitem3d//
报告完成时,包括:
- - 任务 ID
- 最终状态
- 保存的文件路径
- 输出格式
- 使用的模型
- 分辨率
- 预估信用点数成本
如果 API 返回预览/封面 URL,在有用时包含它。
常用命令
检查余额
bash
scripts/hitem3d.sh balance
仅提交
bash
scripts/hitem3d.sh generate photo.png
完整一次性流程
bash
scripts/hitem3d.sh run photo.png
对于长时间任务,明确提高超时时间,而不是假设 10 分钟足够:
bash
scripts/hitem3d.sh run photo.png --timeout-seconds 3600 --poll-seconds 8
带自定义选项的完整一次性流程
bash
scripts/hitem3d.sh run photo.png --model hitem3dv1.5 --resolution 1024 --format 3 --type 1 --download-dir ./output/hitem3d/
多视图提交
bash
scripts/hitem3d.sh generate-multi front.png left.png --views 1010
多视图完整流程
bash
scripts/hitem3d.sh run-multi front.png back.png left.png right.png --views 1111 --model hitem3dv2.0 --download-dir ./output/hitem3d/multi/
长时间运行任务
如果任务可能需要较长时间,设置明确的轮询和超时值:
bash
scripts/hitem3d.sh run-multi front.png left.png --views 1010 --timeout-seconds 3600 --poll-seconds 8
等待现有任务并下载
bash
scripts/hitem3d.sh wait
--download ./output/hitem3d/
对于慢速任务:
bash
scripts/hitem3d.sh wait --download ./output/hitem3d/ --timeout-seconds 3600 --poll-seconds 8
批量文件夹处理
bash
scripts/hitem3d.sh batch ./images --glob *.png --download-dir ./output/hitem3d/batch/
决策规则
如果用户未指定格式:
- - 默认使用 GLB
- 对于 3D 打印意图使用 STL
- 对于 Apple AR 意图使用 USDZ
如果用户未指定模型:
- - 对于肖像使用 scene-portraitv2.1
- 否则使用 hitem3dv2.0
如果用户未指定分辨率:
- - 对于通用工作使用 1536
- 对于高级肖像输出使用 1536pro
- 对于廉价草稿使用 512
如果用户说“最高质量”:
- - 通用物体:hitem3dv2.0 + 1536
- 肖像:scene-portraitv2.1 + 1536pro
- 运行前说明预期信用点数使用量
失败处理
缺少凭证
停止并要求用户设置 HITEM3DAK 和 HITEM3DSK。
输入图像错误