Getting Started
Welcome to your free AI image generator — describe any scene, character, or concept and I'll create a custom image for you right now. Ready to bring your vision to life? Just tell me what you want to see!
Try saying:
- - "Generate a photorealistic image of a mountain cabin at sunset with snow on the roof and warm light glowing through the windows"
- "Create an anime-style portrait of a female warrior with silver hair, glowing blue eyes, and futuristic armor"
- "Make a flat-design illustration of a small business owner working at a desk surrounded by plants and coffee cups for a blog header"
Getting Connected
Before handling any user request, establish a connection to the backend API. Show a brief status like "Connecting...".
If NEMO_TOKEN is in the environment, use it directly and create a session. Otherwise, acquire a free starter token:
- - Generate a UUID as client identifier
- POST to
https://mega-api-prod.nemovideo.ai/api/auth/anonymous-token with the X-Client-Id header - The response includes a
token with 100 free credits valid for 7 days — use it as NEMO_TOKEN
Then create a session by POSTing to https://mega-api-prod.nemovideo.ai/api/tasks/me/with-session/nemo_agent with Bearer authorization and body {"task_name":"project","language":"en"}. The session_id in the response is needed for all following requests.
Tell the user you're ready. Keep the technical details out of the chat.
From Words to Visuals in Seconds
Imagine being able to sketch out an idea in plain English and watch it come to life as a polished, ready-to-use image. That's exactly what this skill does. Whether you're building a brand, illustrating a blog post, or just exploring your creativity, you can generate original images without touching a single design tool.
This skill is built for people who have ideas but not necessarily the technical skills or budget to hire a designer. Describe a sunset over a neon-lit city, a cozy coffee shop interior, or a futuristic robot — and get a visually compelling result within moments. You control the style, mood, color palette, and composition simply through your description.
From solopreneurs crafting social content to writers visualizing characters and scenes, this free AI image generator opens up creative possibilities that used to require expensive software or professional help. The barrier to beautiful visuals is now just a sentence.
Prompt Routing and Model Selection
When you submit a text prompt, ClawHub parses your input and routes the generation request to the optimal diffusion model endpoint based on style keywords, resolution parameters, and current server load.
| User says... | Action | Skip SSE? |
|---|
| "export" / "导出" / "download" / "send me the video" | → §3.5 Export | ✅ |
| "credits" / "积分" / "balance" / "余额" |
→ §3.3 Credits | ✅ |
| "status" / "状态" / "show tracks" | → §3.4 State | ✅ |
| "upload" / "上传" / user sends file | → §3.2 Upload | ✅ |
| Everything else (generate, edit, add BGM…) | → §3.1 SSE | ❌ |
Backend API Reference Guide
Image synthesis runs through a cloud-hosted inference pipeline that processes your prompt via latent diffusion, applying negative prompt filtering and seed-based sampling before returning a fully rendered output. All generation jobs are queued, executed, and delivered asynchronously to keep response times stable even under high concurrency.
Skill attribution — read from this file's YAML frontmatter at runtime:
- -
X-Skill-Source: INLINECODE8 - INLINECODE9 : from frontmatter INLINECODE10
- INLINECODE11 : detect from install path (
~/.clawhub/ → clawhub, ~/.cursor/skills/ → cursor, else unknown)
All requests must include: Authorization: Bearer <NEMO_TOKEN>, X-Skill-Source, X-Skill-Version, X-Skill-Platform. Missing attribution headers will cause export to fail with 402.
API base: INLINECODE21
Create session: POST /api/tasks/me/with-session/nemo_agent — body {"task_name":"project","language":"<lang>"} — returns task_id, session_id.
Send message (SSE): POST /run_sse — body {"app_name":"nemo_agent","user_id":"me","session_id":"<sid>","new_message":{"parts":[{"text":"<msg>"}]}} with Accept: text/event-stream. Max timeout: 15 minutes.
Upload: POST /api/upload-video/nemo_agent/me/<sid> — file: multipart -F "files=@/path", or URL: INLINECODE31
Credits: GET /api/credits/balance/simple — returns available, frozen, INLINECODE35
Session state: GET /api/state/nemo_agent/me/<sid>/latest — key fields: data.state.draft, data.state.video_infos, INLINECODE39
Export (free, no credits): POST /api/render/proxy/lambda — body {"id":"render_<ts>","sessionId":"<sid>","draft":<json>,"output":{"format":"mp4","quality":"high"}}. Poll GET /api/render/proxy/lambda/<id> every 30s until status = completed. Download URL at output.url.
Supported formats: mp4, mov, avi, webm, mkv, jpg, png, gif, webp, mp3, wav, m4a, aac.
SSE Event Handling
| Event | Action |
|---|
| Text response | Apply GUI translation (§4), present to user |
| Tool call/result |
Process internally, don't forward |
|
heartbeat / empty
data: | Keep waiting. Every 2 min: "⏳ Still working..." |
| Stream closes | Process final response |
~30% of editing operations return no text in the SSE stream. When this happens: poll session state to verify the edit was applied, then summarize changes to the user.
Backend Response Translation
The backend assumes a GUI exists. Translate these into API actions:
| Backend says | You do |
|---|
| "click [button]" / "点击" | Execute via API |
| "open [panel]" / "打开" |
Query session state |
| "drag/drop" / "拖拽" | Send edit via SSE |
| "preview in timeline" | Show track summary |
| "Export button" / "导出" | Execute export workflow |
Draft field mapping: t=tracks, tt=track type (0=video, 1=audio, 7=text), sg=segments, d=duration(ms), m=metadata.
CODEBLOCK0
Error Handling
| Code | Meaning | Action |
|---|
| 0 | Success | Continue |
| 1001 |
Bad/expired token | Re-auth via anonymous-token (tokens expire after 7 days) |
| 1002 | Session not found | New session §3.0 |
| 2001 | No credits | Anonymous: show registration URL with
?bind=<id> (get
<id> from create-session or state response when needed). Registered: "Top up credits in your account" |
| 4001 | Unsupported file | Show supported formats |
| 4002 | File too large | Suggest compress/trim |
| 400 | Missing X-Client-Id | Generate Client-Id and retry (see §1) |
| 402 | Free plan export blocked | Subscription tier issue, NOT credits. "Register or upgrade your plan to unlock export." |
| 429 | Rate limit (1 token/client/7 days) | Retry in 30s once |
Best Practices for Better AI-Generated Images
The quality of your output is directly tied to the clarity of your input. Start with the subject, then layer in environment, lighting, mood, and style. For example: 'A golden retriever sitting in a sunlit meadow, soft bokeh background, warm afternoon light, photorealistic style' will outperform 'a dog outside' every time.
Use reference style keywords strategically. Terms like 'cinematic lighting,' 'hyper-detailed,' '8K resolution,' 'studio photography,' or 'concept art' signal the model toward higher-quality rendering. Mixing styles intentionally — such as 'watercolor with neon accents' — can produce uniquely striking results.
Iterate quickly. Generate a first version, identify what's missing or off, then refine your prompt with targeted adjustments. Treat it like a conversation with a visual artist: the more feedback you give, the closer you get to your ideal image.
Troubleshooting Common Image Generation Issues
If your generated image doesn't match what you had in mind, the most common fix is adding more specific detail to your prompt. Vague prompts like 'a nice landscape' produce generic results — try specifying time of day, weather, color mood, and artistic style instead.
If faces or hands look distorted, this is a known limitation of AI image models. Adding phrases like 'highly detailed face' or 'realistic hands' to your prompt often improves accuracy. For complex compositions with multiple subjects, try breaking your request into focused scenes rather than describing everything at once.
If the style isn't matching your vision, explicitly name an art style — such as 'oil painting,' 'digital art,' 'watercolor sketch,' or 'cinematic photography.' The more precise your style reference, the closer the output will match your expectation.
Use Cases for Free AI Image Generation
This skill fits naturally into a surprising range of workflows. Content creators use it to produce custom thumbnails, blog headers, and social media graphics without paying for stock photos or designers. Small business owners generate product concept visuals, promotional banners, and brand mood boards on the fly.
Writers and game designers use it to visualize characters, settings, and scenes during the creative process — giving life to ideas that would otherwise stay in their heads. Teachers and educators create custom diagrams, illustrated examples, and engaging visual aids for presentations.
Even personal projects benefit: generate custom birthday card art, fantasy maps, dream home concepts, or unique phone wallpapers. The free-ai-image-generator skill adapts to your context, whether professional or purely creative.
快速开始
欢迎使用你的免费AI图像生成器——描述任何场景、角色或概念,我就能立即为你创建定制图像。准备好将你的构想变为现实了吗?只需告诉我你想看到什么!
试试这样说:
- - 生成一张日落时分山间小屋的照片级图像,屋顶有积雪,窗户透出温暖的灯光
- 创作一幅动漫风格的女战士肖像,银发、蓝色发光眼睛,身穿未来感盔甲
- 为博客头部制作一幅扁平设计插画,描绘一位小企业主在堆满植物和咖啡杯的办公桌前工作
建立连接
在处理任何用户请求之前,先建立与后端API的连接。显示简短的状态提示,如正在连接...。
如果环境中存在NEMO_TOKEN,直接使用它并创建会话。否则,获取一个免费的起始令牌:
- - 生成一个UUID作为客户端标识符
- 向https://mega-api-prod.nemovideo.ai/api/auth/anonymous-token发送POST请求,附带X-Client-Id请求头
- 响应中包含一个token,附带100个免费积分,有效期为7天——将其用作NEMO_TOKEN
然后创建会话,向https://mega-api-prod.nemovideo.ai/api/tasks/me/with-session/nemoagent发送POST请求,使用Bearer授权,请求体为{taskname:project,language:en}。响应中的session_id在后续所有请求中都需要使用。
告知用户你已准备就绪。技术细节不要显示在对话中。
从文字到图像,只需几秒
想象一下,用简单的英语勾勒出一个想法,然后看着它变成一张精美、可直接使用的图像。这正是这项技能所能做到的。无论你是在打造品牌、为博客文章配图,还是仅仅在探索创意,你都可以生成原创图像,而无需接触任何设计工具。
这项技能专为那些有想法但不一定具备技术技能或预算雇佣设计师的人而设计。描述一个霓虹灯城市上的日落、一个舒适的咖啡店内景,或是一个未来派机器人——片刻之间就能获得视觉上令人惊艳的结果。你只需通过描述来控制风格、氛围、调色板和构图。
从制作社交媒体内容的个体创业者,到将角色和场景可视化的作家,这个免费的AI图像生成器开启了以往需要昂贵软件或专业帮助才能实现的创意可能性。如今,通往精美视觉效果的障碍仅仅是一句话。
提示词路由与模型选择
当你提交文本提示词时,ClawHub会解析你的输入,并根据风格关键词、分辨率参数和当前服务器负载,将生成请求路由到最佳的扩散模型端点。
| 用户说... | 操作 | 跳过SSE? |
|---|
| export / 导出 / download / send me the video | → §3.5 导出 | ✅ |
| credits / 积分 / balance / 余额 |
→ §3.3 积分 | ✅ |
| status / 状态 / show tracks | → §3.4 状态 | ✅ |
| upload / 上传 / 用户发送文件 | → §3.2 上传 | ✅ |
| 其他所有内容(生成、编辑、添加背景音乐等) | → §3.1 SSE | ❌ |
后端API参考指南
图像合成通过一个云托管的推理管道运行,该管道通过潜在扩散处理你的提示词,应用负面提示词过滤和基于种子的采样,然后返回完全渲染的输出。所有生成任务都排队、执行并异步交付,以保持即使在高度并发下也能有稳定的响应时间。
技能归属——运行时从此文件的YAML前置元数据中读取:
- - X-Skill-Source: free-ai-image-generator
- X-Skill-Version: 来自前置元数据 version
- X-Skill-Platform: 从安装路径检测(~/.clawhub/ → clawhub,~/.cursor/skills/ → cursor,否则为 unknown)
所有请求必须包含:Authorization: Bearer 、X-Skill-Source、X-Skill-Version、X-Skill-Platform。缺少归属请求头将导致导出失败,返回402错误。
API基础地址:https://mega-api-prod.nemovideo.ai
创建会话:POST /api/tasks/me/with-session/nemoagent — 请求体 {taskname:project,language:} — 返回 taskid、sessionid。
发送消息(SSE):POST /runsse — 请求体 {appname:nemoagent,userid:me,sessionid:,newmessage:{parts:[{text:}]}} 附带 Accept: text/event-stream。最大超时时间:15分钟。
上传:POST /api/upload-video/nemoagent/me/ — 文件:multipart -F files=@/path,或URL:{urls:[],sourcetype:url}
积分:GET /api/credits/balance/simple — 返回 available、frozen、total
会话状态:GET /api/state/nemoagent/me//latest — 关键字段:data.state.draft、data.state.videoinfos、data.state.generated_media
导出(免费,不消耗积分):POST /api/render/proxy/lambda — 请求体 {id:render_,sessionId:,draft:,output:{format:mp4,quality:high}}。每30秒轮询GET /api/render/proxy/lambda/,直到 status = completed。下载URL位于 output.url。
支持的格式:mp4、mov、avi、webm、mkv、jpg、png、gif、webp、mp3、wav、m4a、aac。
SSE事件处理
| 事件 | 操作 |
|---|
| 文本响应 | 应用GUI翻译(§4),呈现给用户 |
| 工具调用/结果 |
内部处理,不转发 |
| heartbeat / 空 data: | 继续等待。每2分钟:⏳ 仍在处理中... |
| 流关闭 | 处理最终响应 |
约30%的编辑操作在SSE流中不返回文本。发生这种情况时:轮询会话状态以验证编辑是否已应用,然后向用户总结更改。
后端响应翻译
后端假定存在GUI。将这些转换为API操作:
| 后端说 | 你执行 |
|---|
| click [button] / 点击 | 通过API执行 |
| open [panel] / 打开 |
查询会话状态 |
| drag/drop / 拖拽 | 通过SSE发送编辑 |
| preview in timeline | 显示轨道摘要 |
| Export button / 导出 | 执行导出工作流 |
草稿字段映射:t=轨道,tt=轨道类型(0=视频,1=音频,7=文本),sg=片段,d=时长(毫秒),m=元数据。
时间线(3条轨道):1. 视频:城市延时摄影(0-10秒)2. 背景音乐:Lo-fi(0-10秒,35%)3. 标题:都市之梦(0-3秒)
错误处理
令牌错误/过期 | 通过anonymous-token重新认证(令牌7天后过期) |
| 1002 | 未找到会话 | 新建会话 §3.0 |
| 2001 | 无积分 | 匿名用户:显示注册URL,附带?bind=
(需要时从create-session或state响应获取)。已注册用户:请在你的账户中充值积分 |
| 4001 | 不支持的文件 | 显示支持的格式 |
| 4002 | 文件过大 | 建议压缩/裁剪 |
| 400 | 缺少X-Client-Id | 生成Client-Id并重试(参见§1) |
| 402 | 免费计划导出被阻止 | 订阅层级问题,非积分问题。注册或升级你的计划以解锁导出功能。 |
| 429 | 速率限制(1个令牌/客户端/7天) | 等待30秒后重试一次 |
生成更佳AI图像的最佳实践
输出质量直接取决于输入的清晰度。从主体开始,然后层层叠加环境、光照、氛围和风格。例如:一只金毛猎犬坐在阳光明媚的草地上,柔和的散景背景,温暖的午后