image-edit implementation
Developer reference
The minimum core release must contain the exported elowen-plugin-shared/imageRuntime subpath and its declarations. The first containing release is recorded in each plugin's requiresCore manifest field and enforced by the existing marketplace compatibility gate before installation. The shared API number alone does not identify newly added subpaths. GenerateImage and EditImage each create the shared runtime once during registration; without a usable provider they register no tool. The runtime performs one host image render and one project-file write without polling or automatic sharing.
The supported image runtime entry is createImageRuntime(ctx) from elowen-plugin-shared/imageRuntime. Image-gen and Image-edit call it during registration. It returns null when no usable configured provider exists, so no image tool is registered; otherwise runtime.model preserves the trimmed configured model id, including an OpenRouter namespace, or selects the existing OpenAI/Codex default. A connected Codex account does not need an API key. Core owns rendering credentials and project file authority; providerUsable and resolveModel are private implementation functions. Creating the runtime does not render an image; GenerateImage or EditImage invokes the provider through runtime.render.