Token导航 LogoToken导航TokenDH.com
开发敏感数据clawhub未标认证来源可访问clear审计通过

hidream-model-genhidream 模型生成

Agent Skill

hidream-model-gen 用于处理图像、截图、视觉识别或图片素材相关工作,适合在 OpenClaw 中需要让 Agent 分析图片、整理视觉素材或辅助图像流程时使用。可结合来源仓库、安装命令和原始 README 继续核验具体用法。安装前建议确认权限范围、维护状态,以及是否会触发联网、命令执行或文件读写。

总安装

9,240

周安装

385

GitHub Stars

公开资料未说明

下载量

3,080
OpenClaw

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

GitHub

来源数

2

许可证

MIT-0

最后核验

2026-05-01

来源状态

来源可访问

安装方式

通过对话安装

复制提示词发给支持本地命令或 Skills 的 AI 助手,先确认命令和权限,再让它执行。

请帮我安装这个 Agent Skill:hidream-model-gen(hidream 模型生成)
来源仓库:https://github.com/zhy2015/hidream-model-gen
安装命令:
openclaw skills install hidream-model-gen
安装前请先检查当前环境是否支持对应 CLI,并向我确认将要执行的命令、安装目录、联网范围和文件读写权限;确认后再执行。

命令行安装

复制命令到本机终端执行。该命令会通过 OpenClaw 从第三方来源获取 Skill;本站只展示命令,不托管安装包,也不自动执行。

ClawHubOpenClaw
openclaw skills install hidream-model-gen

简介

调用 Vivago AI(智小象)平台实现文本到图像、图像到视频等多模态生成。

  • 适用于创意内容生产、原型设计或营销素材快速制作等场景。
  • 支持关键帧插值与风格迁移,可导出标准格式视频供后续编辑使用。
  • 需注册平台账户并获取 API Key,部分高级功能可能产生额外费用。
  • 生成内容版权归属依平台协议而定,商用前请确认授权范围。

SKILL.md

name
hidream-model-gen
description
Generate images and videos using Vivago AI (智小象) platform. Supports text-to-image, image-to-image, image-to-video, and keyframe-to-video generation. Use when the user wants to create AI-generated images or videos, transform existing images, or perform image style transfer through the Vivago AI API.
dependencies
requires
env

Vivago AI Skill

Integration with Vivago AI (智小象) platform for AI-powered image and video generation.

Supported Features

Image Generation

  • Text to Image (txt2img): Generate images from text descriptions
  • Image to Image (img2img): Transform existing images based on prompts, including style transfer, image editing, and multi-image fusion

Video Generation

  • Text to Video (txt2vid): Generate videos from text descriptions
  • Image to Video (img2vid): Generate videos from static images
  • Keyframe to Video (keyframe_to_video): Generate transition videos from start and end keyframes
  • Video Templates (template_to_video): 181 pre-defined video effects
  • Supports multiple model versions (v3Pro, v3L, kling-video-o1)

Additional Features

  • Image upload to Vivago storage
  • Batch generation (up to 4 images)
  • Multiple aspect ratios (1:1, 4:3, 3:4, 16:9, 9:16)
  • Automatic retry with polling

Architecture

Core Modules

scripts/
├── vivago_client.py       # Main API client
├── template_manager.py    # Template management
├── config_loader.py       # Configuration loading
├── enums.py              # Type enums (TaskStatus, AspectRatio, etc.)
├── exceptions.py         # Structured exceptions
└── config/               # Modular configuration files

Code Quality

  • Type Safety: Complete type annotations and enums
  • Exception Handling: Structured exception hierarchy
  • CI/CD: GitHub Actions for automated testing
  • Modular Config: Split configuration files for maintainability

Setup

Prerequisites

Before using this skill, you need to obtain a Vivago.ai API Token:

Step 1: Login to Vivago.ai

  1. Visit https://vivago.ai/ and log in to your account
  2. Check your remaining credits and consider subscribing to a suitable plan if needed

Step 2: Obtain Your Token

  1. After logging in, visit https://vivago.ai/prod-api/user/token
  2. The page will return your API Token (in JWT format)
  3. Copy this Token for configuration
Security Note: The Token is your credential for accessing the API. Please keep it secure and do not share it with others.

Environment Variables

Security Note: For secure deployments and AI Agents, the system requires the token to be passed strictly via the HIDREAM_AUTHORIZATION environment variable.

Export it securely in your current session:

export HIDREAM_AUTHORIZATION="your_vivago_api_token"
Note: STORAGE_AK and STORAGE_SK are deprecated and removed. The image upload uses secure pre-signed URLs provided by the Vivago API.

File Output Configuration

Important: By default, all generated resources (JSON results, downloaded images, and videos) will be output to the assets/ directory within the current working folder. Ensure this directory exists or the system has permission to create it.

Installation

pip install -r requirements.txt

Usage

Python API

from scripts import create_client, VivagoClient
from scripts.enums import AspectRatio, PortName, TaskStatus
from scripts.exceptions import TaskFailedError, TaskTimeoutError

# Create client
client = create_client()

# Text to image
results = client.text_to_image(
    prompt="a beautiful sunset over mountains",
    port=PortName.KLING_IMAGE,  # or PortName.NANO_BANANA
    wh_ratio=AspectRatio.RATIO_16_9,
    batch_size=2
)

# Image to video (using local image)
results = client.image_to_video(
    prompt="camera slowly zooming out",
    image_uuid=client.upload_image("/path/to/image.jpg"),
    port=PortName.V3PRO,
    wh_ratio=AspectRatio.RATIO_16_9,
    duration=5
)

# Keyframe to video (using start and end images)
results = client.keyframe_to_video(
    prompt="smooth transition from start to end",
    start_image_uuid=client.upload_image("/path/to/start.jpg"),
    end_image_uuid=client.upload_image("/path/to/end.jpg"),
    port=PortName.V3PRO,
    wh_ratio=AspectRatio.RATIO_16_9,
    duration=5
)

# Video Templates - use pre-defined effects
results = client.template_to_video(
    image_uuid=client.upload_image("/path/to/image.jpg"),
    template="ghibli",  # See available templates below
    wh_ratio=AspectRatio.RATIO_9_16
)

Error Handling

from scripts.exceptions import (
    TaskFailedError,
    TaskRejectedError,
    TaskTimeoutError,
    InvalidPortError
)

try:
    results = client.image_to_video(...)
except TaskFailedError as e:
    print(f"Task failed: {e.task_id}")
except TaskRejectedError as e:
    print(f"Content rejected: {e.reason}")
except TaskTimeoutError as e:
    print(f"Timeout after {e.timeout_seconds}s")
except InvalidPortError as e:
    print(f"Invalid port: {e.port}, available: {e.available}")

Command Line (Best for AI Agents)

For AI Agents: The easiest way to use this skill is through the provided CLI scripts. They automatically handle API communication, polling, and result parsing. By default, they use HiDream's native models.

Text to Image:

python3 scripts/txt2img.py \
  --prompt "a futuristic city" \
  --wh-ratio 16:9 \
  --batch-size 2 \
  --output ./assets/results.json

*Note: This defaults to the hidream-txt2img model.*

Text to Video:

python3 scripts/txt2vid.py \
  --prompt "a cybernetic dragon flying over a futuristic city" \
  --wh-ratio 16:9 \
  --duration 5 \
  --output ./assets/video_results.json

*Note: This defaults to the v3Pro model.*

Image to Video:

python3 scripts/img2video.py \
  --prompt "slow motion falling leaves" \
  --image ./assets/source_image.jpg \
  --duration 5 \
  --output ./assets/video.json

API Reference

Enums

from scripts.enums import (
    TaskStatus,      # PENDING, COMPLETED, PROCESSING, FAILED, REJECTED
    AspectRatio,     # RATIO_1_1, RATIO_4_3, RATIO_16_9, etc.
    PortCategory,    # TEXT_TO_IMAGE, IMAGE_TO_VIDEO, etc.
    PortName         # KLING_IMAGE, V3PRO, NANO_BANANA, etc.
)

Models

FeatureAvailable VersionsDefault
Text to Imagev3L (HiDream), kling-image-o1v3L (via port hidream-txt2img)
Image to Videov3Pro, v3L, kling-video-o1v3Pro
Keyframe to Videov3Pro, v3Lv3Pro
Note for AI Agents: By default, all CLI tools (txt2img.py, txt2vid.py) are pre-configured to use HiDream's native models (hidream-txt2img for images, v3Pro for videos). You don't need to specify the model unless explicitly requested by the user.

Aspect Ratios

  • 1:1 - Square
  • 4:3 - Standard
  • 3:4 - Portrait
  • 16:9 - Widescreen
  • 9:16 - Mobile/Vertical

Task Status Codes

from scripts.enums import TaskStatus

TaskStatus.PENDING     # 0 - Pending
TaskStatus.COMPLETED   # 1 - Completed
TaskStatus.PROCESSING  # 2 - Processing
TaskStatus.FAILED      # 3 - Failed
TaskStatus.REJECTED    # 4 - Rejected (content review)

File Structure

vivago-ai-skill/
├── scripts/
│   ├── __init__.py         # Package exports
│   ├── vivago_client.py    # Core API client
│   ├── template_manager.py # Template management
│   ├── config_loader.py    # Configuration loader
│   ├── enums.py            # Type enums
│   ├── exceptions.py       # Exception classes
│   ├── logging_config.py   # Logging configuration
│   └── config/             # Modular config files
│       ├── base.json
│       ├── text_to_image.json
│       ├── image_to_video.json
│       └── ...
├── tests/
│   ├── conftest.py         # Pytest configuration
│   ├── archive/            # Archived tests
│   └── ...
├── docs/                   # Documentation
├── .github/workflows/      # CI configuration
├── requirements.txt
├── README.md
└── SKILL.md               # This file

Important Notes

Feishu Channel Messaging Guidelines

When sending generated content through Feishu (飞书) channel:

Content TypeSend MethodExample
Images✅ Direct file uploadAttach image file directly
VideosMust send as linkhttps://media.vivago.ai/{video_uuid}

⚠️ Critical: Videos CANNOT be sent as file attachments in Feishu. Always construct and send the direct media URL:

https://media.vivago.ai/b1268f08-ac32-4b83-863f-a419797d768e.mp4

Why: Feishu does not support playable video attachments. Sending video files directly will result in delivery failure or unplayable content.

Image Download

Images can be downloaded using the correct URL format:

https://storage.vivago.ai/image/{image_name}.jpg

Example:

from scripts import create_client
import requests

client = create_client()

# Generate image
results = client.text_to_image(prompt="a cute cat")
image_name = results[0].get('image', '')

# Download image
image_url = f"https://storage.vivago.ai/image/{image_name}.jpg"
response = requests.get(image_url)
with open("output.jpg", "wb") as f:
    f.write(response.content)

Sending via Feishu:

# Download and send through Feishu
image_data = requests.get(image_url).content
# Then send image_data as file attachment via Feishu API

Asynchronous Processing

  • API calls are asynchronous with automatic polling
  • Images are automatically resized to max 1024px on longest side before upload
  • Video generation supports 5 or 10 second durations
  • Batch size for images: 1-4, for videos: 1
  • All API calls include automatic retry logic

Error Handling

The client handles common errors:

  • Network timeouts (with retry)
  • Rate limiting (with exponential backoff)
  • Invalid parameters (validation before API call)
  • Task failures (structured exceptions)

Exception Hierarchy

VivagoError (base)
├── VivagoAPIError
├── MissingCredentialError
├── InvalidPortError
├── ImageUploadError
├── TemplateNotFoundError
└── TaskError
    ├── TaskFailedError
    ├── TaskRejectedError
    └── TaskTimeoutError

Video Templates Reference

The following 181 video templates are available via template_to_video():

Quick Categories

CategoryCountExample Templates
Style Transfer20+ghibli, 1930s-2000s vintage styles
Harry Potter4magic_reveal_ravenclaw, gryffindor, hufflepuff, slytherin
Wings/Fantasy10+angel_wings, phoenix_wings, crystal_wings, fire_wings
Superheroes5+iron_man, cat_woman, ghost_rider
Dance10+apt, dadada, dance, limbo_dance
Effects15+ash_out, metallic_liquid, flash_flood
Thanksgiving10+turkey_chasing, autumn_feast, gratitude_photo
Comics/Cartoon8+gta_star, anime_figure, bring_comics_to_life
Products8+glasses_display, music_box, food_product_display
Scenes20+romantic_kiss, graduation, starship_chef

Popular Templates

Template IDDescription
ghibli / ghibli2Studio Ghibli animation style
magic_reveal_ravenclawHarry Potter Ravenclaw transformation
magic_reveal_gryffindorHarry Potter Gryffindor transformation
magic_reveal_hufflepuffHarry Potter Hufflepuff transformation
magic_reveal_slytherinHarry Potter Slytherin transformation
iron_manIron Man armor assembly
angel_wings / phoenix_wings / crystal_wings / fire_wingsWing transformations
cat_womanCat Woman style
ghost_riderGhost Rider flaming skull
jokerJoker villain style
mermaidMermaid underwater scene
snow_whiteSnow White princess
barbieBarbie princess transformation
me_in_handMiniature figure in hand
music_boxRotating figure on music box
anime_figureTransform into anime figure
gta_starGTA game style transformation
apt / dadada / danceDance templates
ash_outDisintegrate into ashes
eye_of_the_stormThunder god awakening
metallic_liquidMetal mask transformation
flash_floodWater/flood effect
turkey_chasing / turkey_away / turkey_giantThanksgiving turkey scenes
autumn_feast / autumn_strollAutumn scenes
renovation_of_old_photosColorize B&W photos
graduationGraduation ceremony
glasses / glasses_displayGlasses/eyewear showcase
bikini / sexy_man / sexy_pantsFashion/beach
romantic_kiss / boyfriends_rose / girlfriends_roseRomantic scenes
ai_archaeologist / starship_chef / cyber_cookerSci-fi characters
jungle_reign / panther_queen / roar_of_the_dustlands / tiger_snuggleAnimal companions
instant_sadness / headphone_vibe / relaxEmotion/reaction
frost_alertCold/freeze effect
bald_meBald transformation
boom_hair / curl_pop / long_hairHair transformations
musclesMuscle transformation
face_punch / gun_pointAction effects
static_shot / tracking_shot / orbit_shot / push_in / zoom_out / handheld_shotCamera movements
earth_zoom_in / earth_zoom_outEarth zoom effects

View All Templates

from scripts.template_manager import get_template_manager

manager = get_template_manager()
templates = manager.list_templates()

print(f"Total templates: {len(templates)}")
for tid, name in sorted(templates.items()):
    print(f"  {tid}: {name}")

Usage Example

from scripts import create_client

client = create_client()

# Upload image
image_uuid = client.upload_image("/path/to/photo.jpg")

# Apply Ghibli style template
results = client.template_to_video(
    image_uuid=image_uuid,
    template="ghibli",
    wh_ratio="9:16"
)

# Harry Potter transformation
results = client.template_to_video(
    image_uuid=image_uuid,
    template="magic_reveal_ravenclaw",
    wh_ratio="9:16"
)

Changelog

v0.9.0 (2026-03-09)

  • ✅ Code review complete (P0-P3)
  • ✅ Added GitHub Actions CI
  • ✅ Added type safety module (enums.py)
  • ✅ Added structured exceptions (exceptions.py)
  • ✅ Split configuration into modular files
  • ✅ Archived redundant code and tests
  • ✅ Pinned dependency versions

v0.8.2 (2026-03-08)

  • ✅ Template testing: 44 templates, 40 passed (90.9%)
  • ✅ Fixed metallic_liquid naming issue
  • ✅ Marked long_hair as deprecated

v0.8.0 (2026-03-07)

  • ✅ Completed Tier 1-4 testing
  • ✅ Established smart test optimization system

适合场景

01

文本生成图片

02

图片风格化

03

产品图和创意图

04

需要 FLUX 模型时

能力概览

能力 1

调用 FLUX 图像模型

能力 2

支持文本生图和图像改写

能力 3

覆盖 LoRA 或风格适配

能力 4

适合创意视觉生成

安装后应在对应宿主中按原始 README 的触发条件使用;具体调用方式请以来源页面和 README 为准。

平台分布

OpenClaw

86.92%
按下载量换算2,677

安全审计

VirusTotal

通过

ClawScan

通过

Static analysis

通过

权限和风险

敏感数据

该 Skill 可能接触密钥、Token、环境变量或敏感配置,应进入高风险复核队列,默认不自动发布。

安装前确认

本站仅展示第三方公开信息,不托管安装包,不提供自动安装或运行环境。安装前应自行审查源码、依赖和命令行为。当前只有一个来源,正式发布前建议补源仓库或其他目录站核验。

来源信息

继续浏览同类 Skills