name: glm-image-gen description: Official skill for generating high-quality images from text prompts using ZhiPu GLM-Image API. Excellent at scientific illustrations, high-quality portraits, social media graphics, and commercial posters. Supports multiple aspect ratios, HD quality, and watermark control. Use this skill when the user wants to generate images, create AI art, text-to-image, or convert text descriptions into visual content. metadata: openclaw: requires: env: - ZHIPU_API_KEY primaryEnv: ZHIPU_API_KEY emoji: "🎨" homepage: https://github.com/zai-org/GLM-Image/tree/main/skills/glm-image-gen
Generate high-quality images from text prompts using the ZhiPu GLM-Image API.
| Resource | Link |
|---|---|
| Get API Key | 智谱开放平台 API Keys |
| API Docs | Image Generation / 图像生成 |
| Model Docs | GLM-Image 模型文档 |
脚本通过 ZHIPU_API_KEY 环境变量获取密钥,可与其他智谱技能复用同一个 key。
This script reads the key from the ZHIPU_API_KEY environment variable. Reusing the same key across Zhipu skills is optional.
Get Key / 获取 Key: Visit 智谱开放平台 API Keys to create or copy your key.
Setup options / 配置方式(任选一种):
openclaw.json under env.vars, all Zhipu skills will share it:json
{
"env": {
"vars": {
"ZHIPU_API_KEY": "你的密钥"
}
}
}
openclaw.json:json
{
"skills": {
"entries": {
"glm-image-generation": {
"env": {
"ZHIPU_API_KEY": "你的密钥"
}
}
}
}
}
~/.zshrc:```bash export ZHIPU_API_KEY="你的密钥"
```
💡 如果你已为其他智谱 skill(如
glmocr、glmv-caption)配置过 key,它们共享同一个ZHIPU_API_KEY,无需重复配置。
ZHIPU_API_KEY (required / 必需)https://open.bigmodel.cn/api/paas/v4/images/generations⛔ MANDATORY RESTRICTIONS / 强制限制 ⛔
python scripts/glm_image_cli.pyAfter running the script, present the generation result clearly.
⚠️ Image Display / 图片展示注意:
The API returns a temporary image URL (valid for 30 days). You should:
python scripts/glm_image_cli.py --prompt "一只可爱的小猫咪,坐在阳光明媚的窗台上,背景是蓝天白云"
python scripts/glm_image_cli.py --prompt "赛博朋克风格的城市夜景" --size 1568x1056
python scripts/glm_image_cli.py --prompt "中国山水画风格,远山近水,云雾缭绕" --quality hd
python scripts/glm_image_cli.py --prompt "商业设计素材" --no-watermark
python scripts/glm_image_cli.py --prompt "中国水墨画风格" --save image.png
python scripts/glm_image_cli.py --prompt "赛博朋克城市" --size 1728x960 --save ~/Pictures/cyberpunk.png
python scripts/glm_image_cli.py --prompt "..." --user-id "user_12345"
python scripts/glm_image_cli.py --prompt "..." --model glm-image
python scripts/glm_image_cli.py --prompt "..." --model cogview-4
python {baseDir}/scripts/glm_image_cli.py --prompt TEXT [--model MODEL] [--size SIZE] [--quality QUALITY] [--no-watermark] [--user-id ID] [--save FILE]
| Parameter | Required | Description |
|---|---|---|
--prompt, -p |
Yes | Text description of the desired image / 图片的文本描述 |
--model, -m |
No | Model: glm-image (default), cogview-4, cogview-3-flash / 模型 |
--size, -s |
No | Image size (default: 1280x1280) / 图片尺寸 |
--quality, -q |
No | Quality: hd (default) or standard / 质量 |
--no-watermark |
No | Disable watermark (requires signed disclaimer) / 关闭水印 |
--user-id |
No | End-user ID for content moderation (6-128 chars) / 终端用户 ID |
--save |
No | Save generated image to local file / 保存生成的图片到本地文件 |
GLM-Image recommended sizes:
| Size | Aspect Ratio | Use Case |
|---|---|---|
| 1280x1280 | 1:1 | Square (default) |
| 1568×1056 | 3:2 | Landscape / 横向 |
| 1056×1568 | 2:3 | Portrait / 纵向 |
| 1472×1088 | ~4:3 | Wide landscape |
| 1088×1472 | ~3:4 | Tall portrait |
| 1728×960 | 16:9 | Ultra-wide landscape |
| 960×1728 | 9:16 | Ultra-tall portrait |
Custom sizes / 自定义尺寸:
发现更多技能插件,请访问7w4.net。
Official API Response:
{
"created": 123,
"data": [
{
"url": "<string>"
}
],
"content_filter": [
{
"role": "assistant",
"level": 1
}
]
}
CLI Output Format:
{
"ok": true,
"model": "glm-image",
"image_url": "https://open.bigmodel.cn/.../generated_image.png",
"prompt": "一只可爱的小猫咪,坐在阳光明媚的窗台上,背景是蓝天白云",
"size": "1280x1280",
"quality": "hd",
"created": 1710835200,
"content_filter": [
{
"role": "assistant",
"level": 3
}
],
"saved_file": "/Users/xxx/image.png",
"error": null
}
Key fields:
ok — whether generation succeededmodel — model used for generationimage_url — extracted from data[0].url, temporary URL (valid 30 days)prompt — the text prompt usedsize — generated image dimensionsquality — hd or standardcreated — Unix timestamp when request was createdcontent_filter — content safety analysis array (may be empty)role: where the issue was detected (user/assistant/history)level: severity 0-3 (0 = most severe, 3 = minor)saved_file — absolute path to saved local file (if --save was used)error — error details on failureThe API includes content filtering. If issues are detected, content_filter will contain entries with:
role: where the issue was detected (user/assistant/history)level: severity 0-3 (0 = most severe, 3 = minor)If level 0-1 detected: Generation will fail, show error to user. If level 2-3 detected: Generation may succeed, but warn user about potential issues.
API key not configured:
{
"ok": false,
"error": {
"code": "MISSING_API_KEY",
"message": "ZHIPU_API_KEY not configured. Get your API key at: https://bigmodel.cn/usercenter/proj-mgmt/apikeys"
}
}
→ Show exact error to user, guide them to configure
Authentication failed (401/403):
{
"ok": false,
"error": {
"code": "authentication_error",
"message": "令牌已过期或验证不正确",
"status": 401
}
}
→ API key invalid/expired → reconfigure
Rate limit (429):
{
"ok": false,
"error": {
"code": "rate_limit_exceeded",
"message": "API rate limit exceeded. Please try again later.",
"status": 429
}
}
→ Quota exhausted → inform user to wait or check quota
Content filter violation:
{
"ok": false,
"error": {
"code": "content_filter_violation",
"message": "Content safety check failed",
"status": 400
}
}
→ Explain that the prompt may contain inappropriate content
Invalid size:
{
"ok": false,
"error": {
"code": "INVALID_SIZE",
"message": "Invalid size: 512x512 for model glm-image. Must be multiple of 32, 1024-2048px, max 2^22 pixels"
}
}
→ Guide user to use valid size from the supported list
Download failed:
{
"ok": false,
"error": {
"code": "DOWNLOAD_FAILED",
"message": "Failed to download image to image.png"
}
}
→ Check file path permissions and disk space
Network error:
{
"ok": false,
"error": {
"code": "NETWORK_ERROR",
"message": "Network error: [Errno 8] nodename nor servname provided, or not known"
}
}
→ Check internet connection
Good prompts:
Avoid:
这是一款质量较高的 AI 绘图技能,操作简单、文档清晰。优点是支持多种尺寸和质量模式,安全限制明确可靠,错误提示友好,图片可自动保存本地。不足是生成过程无进度显示,缺少智能 prompt 优化建议,文档以英文为主。总体来说功能实用、安全性高,适合需要快速生成高质量图片的用户使用。