skill
DreamAPI Skill is a skill library designed for AI agents, integrating 24 powerful AI tools provided by DreamAPI. It covers various functions such as video generation, talking avatars, image editing, and voice cloning. Users simply describe their needs, and the AI agent can process them automatically, greatly simplifying the multimedia content creation process, and is suitable for any compatible AI coding assistant.
git clone https://github.com/dreamfaceapp/skill.gitBefore / After Comparison
1 组Manually using multiple tools or APIs for video generation, image editing, voice cloning, and other operations. The process is complex, time-consuming, and requires professional skills.
By directly describing requirements to an AI agent, DreamAPI Skill automatically invokes 24 AI tools to complete tasks, significantly simplifying the creation process, improving efficiency and content quality.
description SKILL.md
name: dreamapi-skill description: "24 AI-powered tools for video generation, talking avatars, image editing, voice cloning, and more — powered by DreamAPI. Describe what you want and the agent handles the rest." metadata: tags: dreamapi, avatar, lipsync, video, image, voice, tts, flux, wan2.1, ai, api, text2image, image2video, face-swap, remove-bg, video-translate, voice-clone requires: bins: [python3] primaryEnv: DREAMAPI_API_KEY
DreamAPI Skill
24 AI tools powered by DreamAPI — from Newport AI.
Execution Rule
Always use the Python scripts in
scripts/. Do NOT usecurlor direct HTTP calls.
User-Facing Reply Rules
Every user-facing reply MUST follow ALL rules below.
- Keep replies short — give the result or next step directly.
- Use plain language — no API jargon, no terminal references, no mentions of environment variables, polling, JSON, scripts, or auth flow.
- Never mention terminal details — do not reference command output, logs, exit codes, file paths, config files, or any technical internals.
- Always send the login link directly — when login is needed, provide the DreamAPI Dashboard link:
https://api.newportai.com/ - Explain errors simply — if a task fails, tell the user in one sentence what happened and ask if they want to retry.
- Be result-oriented — after task completion, give the user the result (link, image, video) directly. Do not describe intermediate steps.
- Give time estimates — after submitting a task, tell the user the estimated wait time from the table below.
Estimated Generation Time
| Task Type | Estimated Time |
|---|---|
| Avatar (LipSync / DreamAvatar / Dreamact) | ~2–5 min |
| Image Generation (Flux) | ~30s–1 min |
| Image Editing (Colorize / Enhance / etc.) | ~30s–1 min |
| Video Generation (Wan2.1) | ~3–5 min |
| Video Editing (Swap Face / Matting) | ~2–5 min |
| Video Translate | ~3–5 min |
| Voice Clone | ~30s–1 min |
| TTS (Common / Pro / Clone) | ~10–30s |
| Remove Background | ~10–30s |
Required login message template
When authentication is needed, send the user this message (match user's language):
To get started, you need a DreamAPI API key.
1. Go to: https://api.newportai.com/
2. Sign in with Google or GitHub
3. Copy your API key from the Dashboard
Once you have your key, just tell me and I'll set it up for you.
中文模板:
开始之前,你需要一个 DreamAPI 的 API Key。
1. 打开 https://api.newportai.com/
2. 用 Google 或 GitHub 登录
3. 在 Dashboard 页面复制你的 API Key
拿到 Key 后告诉我,我帮你设置好。
Prerequisites
- Python 3.8+
- Authenticated — see references/auth.md
- Credits available — see references/user.md
pip install -r {baseDir}/scripts/requirements.txt
Agent Workflow Rules
These rules apply to ALL generation modules.
- Always start with
run— it submits the task and polls automatically until done. - Do NOT ask the user to check the task status themselves. The agent polls until completion.
- Only use
querywhenrunhas already timed out and you have ataskIdto resume. - If
queryalso times out, increase--timeoutand try again with the sametaskId. - Do not resubmit unless the task has actually failed.
Decision tree:
→ New request? use `run`
→ run timed out? use `query --task-id <id>`
→ query timed out? use `query --task-id <id> --timeout 1200`
→ task status=fail? resubmit with `run`
Task Status Codes:
| Code | Status | Description |
|---|---|---|
| 0-2 | Processing | Task is queued or running |
| 3 | Success | Task completed |
| 4 | Failed | Task failed |
Modules
| Module | Script | Reference | Description |
|---|---|---|---|
| Auth | scripts/auth.py | auth.md | API key management — login, status, logout |
| Avatar | scripts/avatar.py | avatar.md | LipSync, LipSync 2.0, DreamAvatar 3.0 Fast, Dreamact |
| Image Gen | scripts/image_gen.py | image_gen.md | Flux Text-to-Image, Flux Image-to-Image |
| Image Edit | scripts/image_edit.py | image_edit.md | Colorize, Enhance, Outpainting, Inpainting, Swap Face, Remove BG |
| Video Gen | scripts/video_gen.py | video_gen.md | Text-to-Video, Image-to-Video, Head-Tail-to-Video (Wan2.1) |
| Video Edit | scripts/video_edit.py | video_edit.md | Swap Face Video, Video Matting, Composite |
| Video Translate | scripts/video_translate.py | video_translate.md | Video Translate 2.0 (en/zh/es) |
| Voice | scripts/voice.py | voice.md | Voice Clone, TTS Clone, TTS Common, TTS Pro, Voice List |
| User | scripts/user.py | user.md | Credit balance |
Read individual reference docs for usage, options, and examples. Local files (image/audio/video) are auto-uploaded when passed as arguments.
Tool Selection Guide
What does the user need?
│
├─ A talking face synced to audio?
│ ├─ Has a video + audio → avatar.py lipsync / lipsync2
│ └─ Has a photo + audio → avatar.py dreamavatar
│
├─ A character performing actions from a driving video?
│ → avatar.py dreamact
│
├─ Generate an image from text?
│ → image_gen.py text2image
│
├─ Transform an existing image?
│ → image_gen.py image2image
│
├─ Edit an image?
│ ├─ Colorize B&W photo → image_edit.py colorize
│ ├─ Enhance quality → image_edit.py enhance
│ ├─ Extend borders → image_edit.py outpainting
│ ├─ Fill/replace region → image_edit.py inpainting
│ ├─ Replace face → image_edit.py swap-face
│ └─ Remove background → image_edit.py remove-bg
│
├─ Generate a video from text?
│ → video_gen.py text2video
│
├─ Animate an image into video?
│ → video_gen.py image2video
│
├─ Create transition between two frames?
│ → video_gen.py head-tail
│
├─ Edit a video?
│ ├─ Replace face → video_edit.py swap-face
│ ├─ Remove background → video_edit.py matting
│ └─ Replace background → video_edit.py matting + composite
│
├─ Translate video speech?
│ → video_translate.py
│
├─ Text-to-speech?
│ ├─ With cloned voice → voice.py clone + tts-clone
│ ├─ Standard quality → voice.py tts-common
│ └─ Premium quality → voice.py tts-pro
│
├─ Browse available voices?
│ → voice.py list
│
├─ Check credit balance?
│ → user.py credit
│
└─ Outside capabilities?
→ Tell user this isn't supported yet
Quick Reference
| User says... | Script & Command |
|---|---|
| "Make a talking face video with this audio" | avatar.py lipsync run |
| "Generate an avatar from this photo and audio" | avatar.py dreamavatar run |
| "Make this character do the dance in this video" | avatar.py dreamact run |
| "Generate an image of..." | image_gen.py text2image run |
| "Modify this image to..." | image_gen.py image2image run |
| "Colorize this old photo" | image_edit.py colorize run |
| "Enhance this blurry image" | image_edit.py enhance run |
| "Extend this image" | image_edit.py outpainting run |
| "Fill in this area of the image" | image_edit.py inpainting run |
| "Swap the face in this photo" | image_edit.py swap-face run |
| "Remove the background" | image_edit.py remove-bg run |
| "Generate a video about..." | video_gen.py text2video run |
| "Animate this image into a video" | video_gen.py image2video run |
| "Create a transition between these two images" | video_gen.py head-tail run |
| "Swap the face in this video" | video_edit.py swap-face run |
| "Remove the video background" | video_edit.py matting run |
| "Replace the video background with..." | video_edit.py matting run + composite run |
| "Translate this video to Chinese" | video_translate.py run |
| "Clone this voice" | voice.py clone run |
| "Read this text with the cloned voice" | voice.py tts-clone run |
| "Convert this text to speech" | voice.py tts-common run or tts-pro run |
| "What voices are available?" | voice.py list |
| "How many credits do I have?" | user.py credit |
Agent Behavior Protocol
During Execution
- Local files auto-upload — scripts detect local paths and upload via DreamAPI Storage automatically
- Parallelize independent tasks — independent generation tasks can run concurrently via
submit - Keep consistency — when generating multiple related outputs, use consistent parameters
After Execution
Show the result URL first, then key metadata. Keep it clean.
Result template:
[type emoji] [task type] complete
Result: <OUTPUT_URL>
• [key metadata]
Not happy with the result? Let me know and I'll adjust.
Error Handling
See references/error_handling.md for error codes and recovery.
Capability Boundaries
| Category | Tools | Count |
|---|---|---|
| Avatar | LipSync, LipSync 2.0, DreamAvatar 3.0 Fast, Dreamact | 4 |
| Image Generation | Flux Text-to-Image, Flux Image-to-Image | 2 |
| Image Editing | Colorize, Enhance, Outpainting, Inpainting, Swap Face, Remove BG | 6 |
| Video Generation | Text-to-Video, Image-to-Video, Head-Tail-to-Video | 3 |
| Video Editing | Swap Face Video, Video Matting, Composite | 3 |
| Video Translate | Video Translate 2.0 | 1 |
| Voice | Voice Clone, TTS Clone, TTS Common, TTS Pro, Voice List | 5 |
| Total | 24 |
Never promise capabilities that don't exist as modules.
forumUser Reviews (0)
Write a Review
No reviews yet
Statistics
User Rating
Rate this Skill