Install
openclaw skills install hydraulic-crush-videoGenerate vertical hydraulic-press crushing shorts (WeryAI): text or object image to flatten/burst motion—destruction aesthetics and material contrast for sho...
openclaw skills install hydraulic-crush-videoBuilt for destruction-aesthetic and satisfying creators. Lipstick smear bursts, glass marbles shattering, gadget shells tearing—one line of copy or one image → 9:16 vertical. Core hooks: material contrast, unexpected internals, tension between machine force and fragile objects.
Dependencies: scripts/video_gen.js in this directory + WERYAI_API_KEY + Node.js 18+. No dependency on other Cursor skills.
WERYAI_API_KEY must be set in the environment before running video_gen.js.https URLs (no local file paths).wait run consumes WeryAI credits; re-running creates new paid tasks.WERYAI_API_KEY: Treat as a secret. Only configure it if you trust this skill's source; it is listed in OpenClaw metadata as requires.env / primaryEnv so installers know it is mandatory at runtime (never commit it inside the skill package).video_gen.js): Video tasks use https://api.weryai.com; the models list uses https://api-growth-agent.weryai.com. Only WERYAI_API_KEY is read from the environment—do not rely on URL-related environment variables.scripts/video_gen.js (HTTPS submit + poll loop) before production use.video_gen.js does not expand prompts. Before every wait --json, turn the user's short or vague brief into a full English production prompt.
When: The user gives only keywords, one line, or loose intent—or asks for richer video language. Exception: They paste a finished long prompt within the model's prompt_length_limit and ask you not to rewrite; still show the full text in the confirmation table.
Always add (video language): shot scale and angle; camera move or lock-off; light quality and motivation; subject action paced to duration; one clear payoff for this niche; state 9:16 vertical when this skill defaults to vertical.
Length: Obey prompt_length_limit for the chosen model_key when this doc lists it; trim filler adjectives before removing core action, lens, or light clauses.
Confirmation: The pre-submit table must include the full expanded prompt (never a one-line summary). Wait for confirm or edits.
generate_audio true.### Example prompts at the top of this file are short triggers only—always expand from the user's actual request.
model key.prompt using ## Prompt expansion (mandatory) below. Do not call the API with only the user's minimal words.prompt against the selected model's prompt_length_limit in the frozen tables in this document (when present); shorten if needed.duration, aspect_ratio, resolution, generate_audio, negative_prompt, and other fields against the frozen tables and API notes in this SKILL.md.prompt; wait for confirm or edits.node {baseDir}/scripts/video_gen.js wait --json '...' with the expanded prompt.errorCode / errorMessage and suggest parameter fixes.node {baseDir}/scripts/video_gen.js wait --json '{"model":"…","prompt":"…","duration":5,"aspect_ratio":"9:16"}'
node {baseDir}/scripts/video_gen.js wait --json '…' --dry-run
node {baseDir}/scripts/video_gen.js status --task-id <id>
Done when the user receives at least one playable video URL from the API response, or a clear failure explanation with next steps. All parameters used must fall within the selected model's allowed sets in this document. The submitted prompt must be the expanded production prompt unless the user explicitly supplied a finished long prompt and asked not to rewrite it.
{baseDir} means the skill package root (same level as SKILL.md).9:16 hydraulic press crushing a glass marble: slow motion and burst close-upsUse this image: lipstick crushed flat with color burst, verticalDestruction-aesthetic short: crush electronic shell, stress material tear and internal contrastGenerate a vertical hydraulic press crush clip with cold lighting and macro deformation| Field | Value |
|---|---|
| Model | KLING_V3_0_PRO |
| Aspect ratio | 9:16 (fixed vertical) |
| Duration | Short (duration: 5—minimum for KLING_V3_0_PRO) |
| Audio | On (press + break sounds are core satisfaction) |
| Visual style | Extreme macro, cool white light, slow motion, minimal background—deformation and detail first |
API validity (default
KLING_V3_0_PRO): Text-to-videodurationonly 5 / 10 / 15;aspect_ratioonly 9:16, 1:1, 16:9. Image-to-videoaspect_ratioonly 9:16, 16:9, 1:1. Noresolutionfield—do not send it. For fast tier with VEO: text-to-videoVEO_3_1_FAST, image-to-videoCHATBOT_VEO_3_1_FAST, withdurationfixed at 8,aspect_ratioonly 9:16 or 16:9. When switchingmodel_key, follow the allowed sets in this section’s model/API constraints and the API validity note above; do not sendresolutionto models that do not support it.
User names the object and how it should fail—good for batch ideas, testing hooks, or quick look dev.
The user should provide:
Generation flow:
Collect object and failure mode; ask if missing.
Prompt: press descent, deformation detail, material contrast, slow motion.
After user confirmation, run ({baseDir} is skill root):
node {baseDir}/scripts/video_gen.js wait --json '{"model":"KLING_V3_0_PRO","prompt":"(full English prompt this run)","aspect_ratio":"9:16","duration":5,"generate_audio":true}'
Replace JSON fields with confirmed values; add resolution only if the model supports it. Parse stdout videos.
Return URLs and note what to tweak next (hook angle, material, speed).
Parameter configuration:
| Field | Value |
|---|---|
| model | KLING_V3_0_PRO |
| aspect_ratio | 9:16 |
| duration | 5 |
| generate_audio | true |
Expanded prompt: Compose at generation time per ## Prompt expansion (mandatory) from the user's actual brief—do not reuse fixed sample paragraphs.
Expected outcome: Ram enters from top, object deforms/bursts in macro, generated mechanical + material audio, strong tension and satisfaction.
Public HTTPS image of an object → that object crushed slowly or bursting. Reuse assets or brand-specific product shots.
The user should provide:
https, not a local path)Generation flow:
Confirm URL starts with https:// (not local).
Infer material; tailor deformation/break language.
After confirmation:
node {baseDir}/scripts/video_gen.js wait --json '{"model":"KLING_V3_0_PRO","prompt":"(full English prompt)","image":"(user HTTPS image URL)","aspect_ratio":"9:16","duration":5,"generate_audio":true}'
Match the confirmation table. Parse stdout for URLs.
Return URLs.
Parameter configuration:
| Field | Value |
|---|---|
| model | KLING_V3_0_PRO |
| aspect_ratio | 9:16 |
| duration | 5 |
| generate_audio | true |
| image | User-supplied image URL |
Expanded prompt: Compose at generation time per ## Prompt expansion (mandatory) from the user's actual brief—do not reuse fixed sample paragraphs.
Expected outcome: Motion centered on the uploaded object, consistent look, readable material detail.
Pressure: descends with immense force, hydraulic ram presses down, irresistible mechanical pressure, slow inevitable crush
Materials:
shatters into fragments, hairline fractures propagate, crystalline shards cascadedeforms and smears, internal contents squeeze out, viscous material splayscasing buckles and splits, internal structure exposed, plastic fractures with resistanceSlow motion: 240fps extreme slow motion, time dilation effect, every deformation frozen in detail
Contrast hooks: unexpectedly satisfying internal structure, reveals hidden contents, luxury exterior destroyed
Note: Image URLs must be publicly reachable over HTTPS or the API errors. Upload to an image host first if needed.