ZhaoJun233
dsh-imagegen
Provider-neutral image generation plugin for DeepSeek Harness with Gemini and OpenAI Images compatible APIs.
- Stars
- 0
- Language
- JavaScript
- Created
- Aug 15, 2026
- Updated
- Aug 15, 2026
Introduction
dsh-imagegen
Provider-neutral image generation plugin for DeepSeek Harness. It registers the image_generate agent tool and supports:
- Gemini-compatible
generateContentendpoints - image2 / OpenAI-compatible
/images/generationsendpoints - base64 and downloadable URL responses
- runtime configuration from the DSH plugin settings page
- secret redaction for API credentials
- workspace-confined output paths and image-size limits
Install
Install directly from GitHub into the DSH Web profile:
dsh plugin --profile web add github:ZhaoJun233/dsh-imagegen
For local development, link the checkout instead:
dsh plugin --profile web add link:C:\path\to\dsh-imagegen
Restart the DSH Web host after installing or updating plugin code.
Configure
Open Settings → Plugins → Plugin configuration → Image generation and set:
- protocol:
auto,gemini, orimage2 - API URL
- API Key or environment-variable name
- credential header and optional prefix
- default model
- default image2 quality
- workspace-relative output directory
The API Key field is write-only. Secret-role values are removed from settings responses and are never echoed by the page.
The public defaults use placeholder connection values. Configure a real endpoint and credential before calling the tool.
Gemini-compatible example
{
"protocol": "gemini",
"url": "<GEMINI_COMPATIBLE_ENDPOINT>",
"apiKeyEnv": "IMAGEGEN_API_KEY",
"apiKeyHeader": "x-goog-api-key",
"apiKeyPrefix": "",
"defaultModel": "your-image-model"
}
When a base URL is supplied, the plugin appends /v1beta/models/{model}:generateContent as needed.
image2-compatible example
{
"protocol": "image2",
"url": "<IMAGE_API_BASE_URL>",
"apiKeyEnv": "IMAGEGEN_API_KEY",
"apiKeyHeader": "Authorization",
"apiKeyPrefix": "Bearer ",
"defaultModel": "gpt-image-2",
"defaultQuality": "medium"
}
When a base URL is supplied, the plugin appends /images/generations as needed. It requests b64_json and also accepts providers that return a downloadable image URL.
Tool
image_generate accepts:
prompt(required)modelaspect_ratioimage_sizefor Gemini-compatible APIssizeandqualityfor image2-compatible APIsoutput_path, relative to the current workspace
Generated files default to generated-images/ in the current session workspace.
Legacy runtime file
The optional fallback file is:
~/.dsh/dsh-imagegen.json
It is read only when neither plugin settings nor the configured environment variable supplies a credential. Do not commit this file when it contains a Key.
Composition
- id: imagegen
name: dsh-imagegen
config:
runtimeConfigPath: ~/.dsh/dsh-imagegen.json
outputDirectory: generated-images
timeoutMs: 180000
maxImageBytes: 20971520