跳到主要内容
    ↑↓ 选择↵ 打开esc 关闭
    中文English
    caoool

    Gpt Image

    v0.1.0工具与命令
    opencode-gpt-image-plugin

    opencode plugin for OpenAI GPT image generation (gpt-image-2, gpt-image-1.5) via a CLIProxyAPI/OpenAI-compatible endpoint.

    GitHub 星标

    0

    月装机量

    275

    近 7 天 186

    综合评分SCORE

    33.4

    生态多维模型

    最近提交

    1 个月前

    2026-07-14

    快速安装与配置

    opencode.json

    写入当前项目的 opencode.json,只对这个仓库生效。

    opencode.json

    {
      "$schema": "https://opencode.ai/config.json",
      "plugin": ["opencode-gpt-image-plugin@0.1.0"]
    }

    opencode 启动时会通过内嵌运行时自动加载 npm 依赖并缓存至本地目录,无需手动在全局环境执行安装。

    An opencode plugin that adds image generation with OpenAI's GPT image models through any OpenAI-compatible / CLIProxyAPI endpoint.

    It registers one tool your agents can call:

    Tool Purpose Models
    gpt_image Still images gpt-image-2 (default), gpt-image-1.5

    The agent picks the specific model via the model argument, guided by per-model hints baked into the tool schema, and can set size, quality, background, and output_format.

    For adult/explicit image generation, use the companion opencode-grok-imagine-plugin; GPT image models refuse explicit content upstream.

    Why a plugin (and not model config)

    opencode's model config only drives the chat/completions interface. GPT image generation uses a different endpoint (/v1/images/generations) and returns base64 image data to write to disk. A plugin tool is the supported way to reach it and save results.

    Install

    npm install -D opencode-gpt-image-plugin
    

    Then reference it in opencode.json:

    {
      "$schema": "https://opencode.ai/config.json",
      "plugin": ["opencode-gpt-image-plugin"]
    }
    

    Restart opencode (plugins load at startup).

    Configure

    Configuration is read from plugin options first, then environment variables.

    Option A — environment variables

    export GPT_IMAGE_BASE_URL="https://your-proxy.example.com"   # or CPA_BASE_URL
    export GPT_IMAGE_API_KEY="sk-..."                            # or CPA_API_KEY
    # Only for self-signed LAN proxies (see TLS below):
    # export GPT_IMAGE_INSECURE_TLS=1
    

    opencode.json:

    {
      "plugin": ["opencode-gpt-image-plugin"]
    }
    

    Option B — plugin options (tuple form)

    {
      "plugin": [
        ["opencode-gpt-image-plugin", {
          "baseURL": "https://your-proxy.example.com",
          "apiKey": "{env:MY_KEY}",
          "insecureTLS": false
        }]
      ]
    }
    

    Config matrix

    Setting Plugin option Env var(s) Default
    Base URL baseURL GPT_IMAGE_BASE_URL, CPA_BASE_URL — (required)
    API key apiKey GPT_IMAGE_API_KEY, CPA_API_KEY — (required)
    Skip TLS verify insecureTLS GPT_IMAGE_INSECURE_TLS false

    The base URL may include or omit a trailing /v1; the plugin normalizes it.

    TLS

    TLS certificates are verified by default. Only disable verification for a self-signed LAN proxy you control, via insecureTLS: true or GPT_IMAGE_INSECURE_TLS=1.

    Usage

    Just ask an agent:

    • "generate an image of a minimalist mountain logo on white"gpt_image
    • "make a 1024x1536 transparent-background icon of a rocket"gpt_image

    Where files are saved

    • Project assets — pass output_dir (e.g. assets/img, public/images).
    • Scratch / experiments — omit output_dir. Files go to a self-ignored <project>/.gpt-tmp/ folder.

    gpt_image arguments

    Arg Type Notes
    prompt string required
    model enum gpt-image-2 | gpt-image-1.5
    count 1–4 number of images
    size enum auto, 1024x1024, 1536x1024, 1024x1536
    quality enum auto, low, medium, high
    background enum auto, transparent, opaque
    output_format enum png, jpeg, webp
    output_dir string asset path, or omit for scratch

    Depending on the upstream proxy, some parameters (notably exact size) may be approximated rather than honored precisely.

    Response & endpoint

    • POST /v1/images/generations{ data: [{ b64_json }], size, quality, ... }

    Notes

    • Model availability depends on your upstream account/proxy. The plugin surfaces the upstream error text when a model or parameter isn't available.
    • Content policy is enforced upstream by OpenAI, independent of this plugin.

    License

    MIT © Lu Cao