monet-aiMonet AI - Comprehensive AI content generation API for AI agents. Video generation (Sora, Veo, Doubao Seedance, Wan, Hailuo, Kling), image generation (GPT-4o...
Install via ClawdBot CLI:
clawdbot install seekton/monet-aiAI content generation API for AI agents.
Use this skill when:
npm install monet-ai
If you don't have an API Key, ask your owner to apply at monet.vision.
import { MonetAI } from "monet-ai";
const monet = new MonetAI({
apiKey: process.env.MONET_API_KEY!
});
// Create a video generation task
const task = await monet.createTask({
type: "video",
input: {
model: "sora-2",
prompt: "A cat running in the park",
duration: 5,
aspect_ratio: "16:9"
}
});
// Poll for result
while (task.status === "pending" || task.status === "processing") {
await new Promise(r => setTimeout(r, 3000));
task = await monet.getTask(task.id);
}
console.log("Result:", task.outputs);
sora-2
{
model: "sora-2",
prompt: string, // Required
images?: string[], // Optional
duration?: 10 | 15, // Optional, default: 10
aspect_ratio?: "16:9" | "9:16"
}
sora-2-pro
{
model: "sora-2-pro",
prompt: string,
images?: string[],
duration?: 15 | 25, // Optional, default: 15
aspect_ratio?: "16:9" | "9:16"
}
veo-3-1-fast, veo-3-1
{
model: "veo-3-1-fast" | "veo-3-1",
prompt: string,
images?: string[],
aspect_ratio?: "16:9" | "9:16"
}
veo-3-fast, veo-3
{
model: "veo-3-fast" | "veo-3",
prompt: string,
images?: string[],
negative_prompt?: string
}
wan-2-6
{
model: "wan-2-6",
prompt: string,
images?: string[],
duration?: 5 | 10 | 15,
resolution?: "720p" | "1080p",
aspect_ratio?: "16:9" | "9:16" | "4:3" | "3:4" | "1:1",
shot_type?: "single" | "multi"
}
wan-2-5
{
model: "wan-2-5",
prompt: string,
images?: string[],
duration?: 5 | 10,
resolution?: "480p" | "720p" | "1080p",
aspect_ratio?: "16:9" | "9:16" | "4:3" | "3:4" | "1:1"
}
wan-2-2-flash
{
model: "wan-2-2-flash",
prompt: string,
images?: string[],
duration?: 5 | 10,
resolution?: "480p" | "720p" | "1080p",
negative_prompt?: string
}
wan-2-2
{
model: "wan-2-2",
prompt: string,
images?: string[],
duration?: 5 | 10,
resolution?: "480p" | "1080p",
aspect_ratio?: "16:9" | "9:16" | "4:3" | "3:4" | "1:1",
negative_prompt?: string
}
kling-2-6
{
model: "kling-2-6",
prompt: string,
images?: string[],
duration?: 5 | 10,
aspect_ratio?: "1:1" | "16:9" | "9:16",
generate_audio?: boolean
}
kling-2-5
{
model: "kling-2-5",
prompt: string,
images?: string[],
duration?: 5 | 10,
aspect_ratio?: "1:1" | "16:9" | "9:16",
negative_prompt?: string
}
kling-v2-1-master, kling-v2-1, kling-v2
{
model: "kling-v2-1-master" | "kling-v2-1" | "kling-v2",
prompt: string,
images?: string[],
duration?: 5 | 10,
aspect_ratio?: "1:1" | "16:9" | "9:16",
strength?: number, // 0-1
negative_prompt?: string
}
hailuo-2-3, hailuo-2-3-fast
{
model: "hailuo-2-3" | "hailuo-2-3-fast",
prompt: string,
images?: string[],
duration?: 6 | 10,
resolution?: "768p" | "1080p"
}
hailuo-02
{
model: "hailuo-02",
prompt: string,
images?: string[],
duration?: 6 | 10,
resolution?: "768p" | "1080p"
}
hailuo-01-live2d, hailuo-01
{
model: "hailuo-01-live2d" | "hailuo-01",
prompt: string,
images?: string[]
}
doubao-seedance-1-5-pro
{
model: "doubao-seedance-1-5-pro",
prompt: string,
images?: string[],
duration?: number,
resolution?: "480p" | "720p",
aspect_ratio?: "1:1" | "4:3" | "16:9" | "3:4" | "9:16" | "21:9",
generate_audio?: boolean
}
doubao-seedance-1-0-pro-fast
{
model: "doubao-seedance-1-0-pro-fast",
prompt: string,
images?: string[],
duration?: number,
resolution?: "720p" | "1080p",
aspect_ratio?: "1:1" | "4:3" | "16:9" | "3:4" | "9:16" | "21:9"
}
doubao-seedance-1-0-pro
{
model: "doubao-seedance-1-0-pro",
prompt: string,
images?: string[],
duration?: 5 | 10,
resolution?: "480p" | "1080p",
aspect_ratio?: "1:1" | "4:3" | "16:9" | "3:4" | "9:16"
}
doubao-seedance-1-0-lite
{
model: "doubao-seedance-1-0-lite",
prompt: string,
images?: string[],
duration?: 5 | 10,
resolution?: "480p" | "720p" | "1080p"
}
kling-motion-control
{
model: "kling-motion-control",
prompt: string, // Required
images: string[], // Required: min 1
videos: string[], // Required: min 1
resolution?: "720p" | "1080p"
}
runway-act-two
{
model: "runway-act-two",
images: string[], // Required: min 1
videos: string[], // Required: min 1
aspect_ratio?: "1:1" | "4:3" | "16:9" | "3:4" | "9:16" | "21:9"
}
wan-animate-mix, wan-animate-mix-pro
{
model: "wan-animate-mix" | "wan-animate-mix-pro",
videos: string[], // Required
images: string[] // Required
}
wan-animate-move, wan-animate-move-pro
{
model: "wan-animate-move" | "wan-animate-move-pro",
videos: string[], // Required
images: string[] // Required
}
gpt-4o
{
model: "gpt-4o",
prompt: string,
images?: string[],
aspect_ratio?: "1:1" | "4:3" | "3:2" | "16:9" | "3:4" | "2:3" | "9:16",
style?: string
}
gpt-image-1-5
{
model: "gpt-image-1-5",
prompt: string,
images?: string[], // max 10
aspect_ratio?: "1:1" | "3:2" | "2:3",
quality?: "auto" | "low" | "medium" | "high"
}
nano-banana-1
{
model: "nano-banana-1",
prompt: string,
images?: string[], // max 5
aspect_ratio?: "1:1" | "2:3" | "3:2" | "4:3" | "3:4" | "16:9" | "9:16"
}
nano-banana-2
{
model: "nano-banana-2",
prompt: string,
images?: string[], // max 14
aspect_ratio?: "1:1" | "2:3" | "3:2" | "4:3" | "3:4" | "4:5" | "5:4" | "16:9" | "9:16" | "21:9",
resolution?: "1K" | "2K" | "4K"
}
wan-i-2-6
{
model: "wan-i-2-6",
prompt: string,
images?: string[], // max 4
aspect_ratio?: "1:1" | "4:3" | "3:2" | "16:9" | "3:4" | "2:3" | "9:16" | "21:9"
}
wan-2-5
{
model: "wan-2-5",
prompt: string,
images?: string[], // max 2
aspect_ratio?: "1:1" | "4:3" | "3:2" | "16:9" | "3:4" | "2:3" | "9:16" | "21:9"
}
flux-2-dev
{
model: "flux-2-dev",
prompt: string,
aspect_ratio?: "1:1" | "4:3" | "3:2" | "16:9" | "3:4" | "2:3" | "9:16"
}
flux-kontext-pro, flux-kontext-max
{
model: "flux-kontext-pro" | "flux-kontext-max",
prompt: string,
images?: string[],
aspect_ratio?: "1:1" | "4:3" | "3:2" | "16:9" | "3:4" | "2:3" | "9:16",
style?: string
}
flux-1-schnell
{
model: "flux-1-schnell",
prompt: string
}
imagen-3-0, imagen-4-0
{
model: "imagen-3-0" | "imagen-4-0",
prompt: string,
aspect_ratio?: "1:1" | "3:4" | "4:3" | "9:16" | "16:9",
style?: string
}
ideogram-v2, ideogram-v3
{
model: "ideogram-v2" | "ideogram-v3",
prompt: string,
aspect_ratio?: "1:1" | "4:3" | "3:2" | "16:9" | "3:4" | "2:3" | "9:16",
style?: string
}
seedream-4-0
{
model: "seedream-4-0",
prompt: string,
images?: string[], // max 10
aspect_ratio?: "1:1" | "4:3" | "3:2" | "16:9" | "3:4" | "2:3" | "9:16"
}
stability-1-0
{
model: "stability-1-0",
prompt: string,
aspect_ratio?: "1:1" | "4:3" | "3:2" | "16:9" | "3:4" | "2:3" | "9:16",
style?: string,
negative_prompt?: string
}
suno-3.5, udio-v1-6
{
model: "suno-3.5" | "udio-v1-6",
prompt: string // Required: music description
}
Create an async task. Returns immediately with task ID.
const task = await monet.createTask({
type: "video",
input: { model: "sora-2", prompt: "A cat" },
idempotency_key: "unique-key" // Required - must be a unique value (e.g., UUID)
});
โ ๏ธ Important: idempotency_key is required. Use a unique value (e.g., UUID) to prevent duplicate task creation if the request is retried.
Create a task with SSE streaming. Returns ReadableStream.
const stream = await monet.createTaskStream({
type: "video",
input: { model: "sora-2", prompt: "A cat" }
});
Get task status and result.
const task = await monet.getTask("task_id");
List tasks with pagination.
const list = await monet.listTasks({ page: 1, pageSize: 20 });
const monet = new MonetAI({
apiKey: "monet_xxx", // Required: API key from monet.vision
timeout: 60000 // Optional: timeout in ms
});
MONET_API_KEY=monet_xxx
curl -X POST https://monet.vision/api/v1/tasks/async \
-H "Content-Type: application/json" \
-H "Authorization: Bearer monet_xxx" \
-d '{
"type": "video",
"input": {
"model": "sora-2",
"prompt": "A cat running"
}
}'
curl https://monet.vision/api/v1/tasks/task_id \
-H "Authorization: Bearer monet_xxx"
curl "https://monet.vision/api/v1/tasks/list?page=1" \
-H "Authorization: Bearer monet_xxx"
AI Usage Analysis
Analysis is being generatedโฆ refresh in a few seconds.
Generate/edit images with Nano Banana Pro (Gemini 3 Pro Image). Use for image create/modify requests incl. edits. Supports text-to-image + image-to-image; 1K/2K/4K; use --input-image.
Capture frames or clips from RTSP/ONVIF cameras.
Batch-generate images via OpenAI Images API. Random prompt sampler + `index.html` gallery.
Generate images using the internal Google Antigravity API (Gemini 3 Pro Image). High quality, native generation without browser automation.
ไฝฟ็จๅ ็ฝฎ image_generate.py ่ๆฌ็ๆๅพ็, ๅๅคๆธ ๆฐๅ ทไฝ็ `prompt`ใ
AI image generation powered by CellCog. Create images, edit photos, consistent characters, product photography, reference-based images, sets of images, style transfer. Professional image creation with AI.