← Back to Skills Marketplace
jaredforreal

GLM-Image-Gen

by Jared Wen · GitHub ↗ · v1.0.4 · MIT-0
cross-platform ✓ Security Clean
614
Downloads
1
Stars
0
Active Installs
5
Versions
Install in OpenClaw
/install 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,...
README (SKILL.md)

GLM-Image Generation Skill / GLM-Image 图片生成技能

Generate high-quality images from text prompts using the ZhiPu GLM-Image API.

When to Use / 使用场景

  • Generate images from text descriptions / 从文字描述生成图片
  • Create AI art, illustrations, or concept art / 创作 AI 艺术、插画或概念图
  • User mentions "生图", "文生图", "AI 绘画", "generate image", "text-to-image", "create image"
  • User provides a prompt and wants to see it visualized / 用户提供描述并想看到可视化效果

Key Features / 核心特性

  • High-quality generation: HD mode produces more detailed, refined images (~20s)
  • Multiple aspect ratios: Square, portrait, landscape formats supported
  • GLM-Image model: Latest model with improved understanding and quality
  • Excellent at: Scientific illustrations (科普插画), high-quality portraits (高质量人像), social media graphics (社交媒体图文), commercial posters (商业海报)
  • Watermark control: Enable/disable watermarks (requires signed disclaimer for no-watermark)
  • Content safety: Built-in content filtering for compliance

Resource Links / 资源链接

Resource Link
Get API Key 智谱开放平台 API Keys
API Docs Image Generation / 图像生成
Model Docs GLM-Image 模型文档

Prerequisites / 前置条件

API Key Setup / API Key 配置(Required / 必需)

脚本通过 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 / 配置方式(任选一种):

  1. Global config (recommended) / 全局配置(推荐): Set once in openclaw.json under env.vars, all Zhipu skills will share it:

    {
      "env": {
        "vars": {
          "ZHIPU_API_KEY": "你的密钥"
        }
      }
    }
    
  2. Skill-level config / Skill 级别配置: Set for this skill only in openclaw.json:

    {
      "skills": {
        "entries": {
          "glm-image-generation": {
            "env": {
              "ZHIPU_API_KEY": "你的密钥"
            }
          }
        }
      }
    }
    
  3. Shell environment variable / Shell 环境变量: Add to ~/.zshrc:

     export ZHIPU_API_KEY="你的密钥"
    
    

💡 如果你已为其他智谱 skill(如 glmocrglmv-caption)配置过 key,它们共享同一个 ZHIPU_API_KEY,无需重复配置。

Security & Transparency / 安全与透明度

  • Environment variables used / 使用的环境变量:
    • ZHIPU_API_KEY (required / 必需)
  • Fixed endpoint / 固定官方端点: https://open.bigmodel.cn/api/paas/v4/images/generations
  • No custom API URL override / 不支持自定义 API URL 覆盖: avoids accidental key exfiltration via redirected endpoints.

⛔ MANDATORY RESTRICTIONS / 强制限制 ⛔

  1. ONLY use GLM-Image API — Execute the script python scripts/glm_image_cli.py
  2. NEVER generate images yourself — Do NOT try to create images using built-in vision or any other method
  3. NEVER offer alternatives — Do NOT suggest "I can try to describe it" or similar
  4. IF API fails — Display the error message and STOP immediately
  5. NO fallback methods — Do NOT attempt image generation any other way

📋 Output Display Rules / 输出展示规则

After running the script, present the generation result clearly.

  • Show the generated image URL(s) — images are temporary (30 days), remind user to save
  • Display the prompt used and generation parameters (size, quality)
  • If content_filter indicates issues, show the warning level

⚠️ Image Display / 图片展示注意:

The API returns a temporary image URL (valid for 30 days). You should:

  1. Show the image — Use the URL to display the image in the chat (if platform supports it)
  2. Remind user to save — "图片链接有效期 30 天,请及时下载保存"
  3. Offer to send to Feishu — If user wants the image sent to a Feishu chat, use the message tool with the image URL

How to Use / 使用方法

Generate from Prompt / 从提示词生成

python scripts/glm_image_cli.py --prompt "一只可爱的小猫咪,坐在阳光明媚的窗台上,背景是蓝天白云"

Specify Size / 指定尺寸

python scripts/glm_image_cli.py --prompt "赛博朋克风格的城市夜景" --size 1568x1056

HD Quality (default for glm-image) / 高清质量(glm-image 默认)

python scripts/glm_image_cli.py --prompt "中国山水画风格,远山近水,云雾缭绕" --quality hd

Disable Watermark (requires signed disclaimer) / 关闭水印(需签署免责声明)

python scripts/glm_image_cli.py --prompt "商业设计素材" --no-watermark

Save Image to Local File / 保存图片到本地

python scripts/glm_image_cli.py --prompt "中国水墨画风格" --save image.png
python scripts/glm_image_cli.py --prompt "赛博朋克城市" --size 1728x960 --save ~/Pictures/cyberpunk.png

Specify User ID (for content moderation) / 指定用户 ID(用于内容审核)

python scripts/glm_image_cli.py --prompt "..." --user-id "user_12345"

Specify Model / 指定模型

python scripts/glm_image_cli.py --prompt "..." --model glm-image
python scripts/glm_image_cli.py --prompt "..." --model cogview-4

CLI Reference / CLI 参数

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 / 保存生成的图片到本地文件

Supported Sizes / 支持的尺寸

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 / 自定义尺寸:

  • Width and height: 1024px - 2048px
  • Both dimensions must be multiples of 32 / 长宽均需为 32 的整数倍
  • Maximum total pixels: 2^22 (4,194,304 px) / 最大像素数不超过 2^22

Response Format / 响应格式

Official API Response:

{
  "created": 123,
  "data": [
    {
      "url": "\x3Cstring>"
    }
  ],
  "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 succeeded
  • model — model used for generation
  • image_url — extracted from data[0].url, temporary URL (valid 30 days)
  • prompt — the text prompt used
  • size — generated image dimensions
  • quality — hd or standard
  • created — Unix timestamp when request was created
  • content_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 failure

Content Safety / 内容安全

The 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.

Error Handling / 错误处理

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

Prompt Tips / 提示词技巧

Good prompts:

  • Specific details: "一只橘色的英国短毛猫,绿色眼睛,坐在木质窗台上"
  • Style keywords: "赛博朋克风格", "中国水墨画", "油画质感", "3D 渲染"
  • Lighting: "阳光明媚", "柔和的逆光", "电影感灯光"
  • Composition: "特写镜头", "广角视角", "俯视角度"

Avoid:

  • Vague descriptions: "好看的图片"
  • Contradictory elements: "白天和夜晚同时"
  • Too many subjects: Keep focus on 1-2 main elements
Usage Guidance
This skill is internally consistent and simply calls ZhiPu's GLM-Image API using the ZHIPU_API_KEY. Before installing: (1) ensure you trust the ZhiPu service and are comfortable storing the API key where OpenClaw will access it (shared env or skill-level config affects other ZhiPu skills); (2) confirm your runtime provides Python so the included CLI can run; (3) remember generated image URLs are temporary (30 days) and the script can save images to disk if you use --save; and (4) if you need stronger isolation, place the API key in a skill-scoped config rather than a global env so compromise is limited to this skill.
Capability Analysis
Type: OpenClaw Skill Name: glm-image-gen Version: 1.0.4 The glm-image-gen skill is a standard implementation for generating images via the ZhiPu GLM-Image API. The Python script (scripts/glm_image_cli.py) uses the standard library (urllib) to communicate exclusively with the official API endpoint (open.bigmodel.cn) and includes robust input validation and error handling. There is no evidence of data exfiltration, malicious execution, or harmful instructions in the SKILL.md file.
Capability Tags
requires-sensitive-credentials
Capability Assessment
Purpose & Capability
Name/description match the included Python CLI and the declared required env var (ZHIPU_API_KEY). The script calls the documented GLM-Image endpoint and exposes expected options (model, size, quality, watermark).
Instruction Scope
SKILL.md instructs the agent to run the included python script and to display the returned image URL and parameters. The script only reads ZHIPU_API_KEY, the user prompt, optional user_id, and downloads the image URL returned by the official endpoint — it does not attempt to read unrelated files or exfiltrate data to unknown endpoints.
Install Mechanism
There is no install spec (instruction-only) which minimizes install risk. The package includes a Python CLI file; SKILL.md shows running 'python scripts/glm_image_cli.py' but the registry metadata did not list a required 'python' binary. This mismatch is minor but worth noting: the runtime requires a Python interpreter to execute the script.
Credentials
Only ZHIPU_API_KEY is required and marked as primaryEnv. The key is appropriate for calling the documented BigModel/G LM-Image API; no unrelated secrets or excessive env variables are requested.
Persistence & Privilege
The skill does not request always:true, does not modify other skills or system configs, and only runs a one-off CLI when invoked. It does offer an option to save images locally, which is expected for this functionality.
How to Use
  1. Make sure OpenClaw is installed (local or Docker)
  2. Run the install command in chat: /install glm-image-gen
  3. After installation, invoke the skill by name or use /glm-image-gen
  4. Provide required inputs per the skill's parameter spec and get structured output
Version History
v1.0.4
- No user-facing changes or file modifications in this version. - Confirmed stability: no updates or new features added.
v1.0.3
- Removed requirement for the GLM_OCR_TIMEOUT environment variable; now only ZHIPU_API_KEY is needed. - Updated metadata to simplify environment requirements. - No other changes to functionality or usage instructions.
v1.0.2
glm-image-gen 1.0.2 - Skill renamed from glm-image-generation to glm-image-gen. - Skill homepage URL updated to reflect new naming. - Added new required environment variable: GLM_OCR_TIMEOUT. - No code or CLI changes detected.
v1.0.1
glm-image-gen 1.0.1 - Updated environment requirements: removed the unnecessary `GLM_OCR_TIMEOUT` variable from prerequisites. - No code or functionality changes detected. - Documentation now reflects simplified environment variable setup for improved clarity.
v1.0.0
**GLM-Image skill 1.0.0 - Major overhaul, now focused on official ZhiPu GLM-Image API** - Now requires ZHIPU_API_KEY and only supports official GLM-Image endpoint for secure, compliant image generation. - New CLI tool: `scripts/glm_image_cli.py` added; all other scripts and legacy configs removed. - Simplified setup: only ZhiPu API is supported (OpenRouter and multi-provider support removed). - Updated documentation to emphasize security, output rules, watermark control, and multi-aspect-ratio support. - Usage is now strictly via the new CLI script, with no fallbacks or alternative generation methods.
Metadata
Slug glm-image-gen
Version 1.0.4
License MIT-0
All-time Installs 0
Active Installs 0
Total Versions 5
Frequently Asked Questions

What is GLM-Image-Gen?

Official skill for generating high-quality images from text prompts using ZhiPu GLM-Image API. Excellent at scientific illustrations, high-quality portraits,... It is an AI Agent Skill for Claude Code / OpenClaw, with 614 downloads so far.

How do I install GLM-Image-Gen?

Run "/install glm-image-gen" in the OpenClaw or Claude Code chat to install it in one step — no extra setup required.

Is GLM-Image-Gen free?

Yes, GLM-Image-Gen is completely free, licensed under MIT-0. You can download, install and use it at no cost.

Which platforms does GLM-Image-Gen support?

GLM-Image-Gen is cross-platform and runs anywhere OpenClaw / Claude Code is available (cross-platform).

Who created GLM-Image-Gen?

It is built and maintained by Jared Wen (@jaredforreal); the current version is v1.0.4.

💬 Comments