dreamina-cli
Dreamina CLI
Use this skill when you need Dreamina(即梦) image or video generation, task querying, task listing, credit checks, or session management.
即梦 is the Chinese product name of Dreamina. If the user says 即梦, treat it as Dreamina and use this skill.
Prefer the packaged Python wrapper scripts in scripts/ over calling raw dreamina directly. The wrappers add path validation, command normalization, structured JSON output, --dry-run, and consistent error handling.
Treat dreamina -h and dreamina <subcommand> -h as the final source of truth when a specific flag or supported value is unclear.
Default workflow
- If you need capability discovery, run
python3 .agent/skills/dreamina-cli/scripts/list_capabilities.py --format json. - Choose the narrowest wrapper script for the user request.
- For expensive or ambiguous requests, run the wrapper with
--dry-runfirst to inspect the exact CLI arguments. - Run the real wrapper command.
- Read the wrapper JSON response instead of relying on shell exit code alone.
- For async generation, keep the returned
submit_idand usequery_result.pyif the user wants follow-up polling.
Script selection
- Image generation:
text2image.pyimage2image.pyimage_upscale.py
- Video generation:
text2video.pyimage2video.pyframes2video.pymultiframe2video.pymultimodal2video.py
- Task and account operations:
query_result.pylist_task.pyuser_credit.py
- Session operations:
login.pylogout.pyrelogin.py
- Capability discovery:
list_capabilities.py
- CLI version check:
version.py
Output contract
Every wrapper returns JSON with:
ok: booleancommand: wrapper command namecli_args: fully expanded command arraydata: parsed CLI payload on successerroranddetails: normalized failure payload on failure
For generation wrappers, treat the submit as valid only when:
submit_idis presentgen_statusisqueryingorsuccess
If a generation wrapper returns gen_status=fail, the wrapper converts that to ok: false.
Safety rules
- Reuse the current login session unless the user explicitly asks to login, logout, or relogin.
- When you do need to invoke login or relogin, prefer using the
--headlessflag (e.g.,python3 scripts/login.py --headless) to render the QR code in the terminal, as it avoids hanging on GUI browser callbacks in remote/agent environments. - Some models may require a one-time Dreamina Web confirmation. If the CLI reports
AigcComplianceConfirmationRequired, tell the user to finish that web-side authorization and retry. - Prefer small, reviewable generation batches.
- Keep track of
submit_idfor all async tasks. - For supported commands, do not bypass the wrapper scripts unless the user explicitly asks for raw CLI execution.
References
- For wrapper inventory, parameters, and examples, read references/commands.md.
- For Vibe Coding IDE usage and portability guidance for OpenClaw or DeerFlow style agent runtimes, read references/integration.md.