Source profileQuality 91/100

event4u-app/agent-config/src/skills/image-provider-routing/SKILL.md

image-provider-routing

Select the right image-generation provider from job shape — text-in-image to Ideogram, photoreal to Flux, vector/logo to Recraft, general to Gemini/GPT.

Source repository stars
7
Declared platforms
0
Static risk flags
0
Last source update
2026-08-04
Source checked
2026-08-04

Decision brief

What it does—and where it fits

Route an image generation job to the right provider based on job shape. Adapters are scaffold-tier (dry-run only) — selection produces a plan; execution waits on promotion per provider-lifecycle-discipline.

Best for

  • Choosing which image model fits a brief (logo, banner, photo, icon, general art).
  • Before calling any nodemodules/@event4u/agent-config/src/scripts/ai-image/adapters/.sh adapter.
  • When the user asks "which image model should I use?" or "route this image job."

Not for

  • Tasks that require unconfirmed production actions or broad system permissions.
  • Environments where the pinned source and install steps cannot be inspected.

Compatibility matrix

Platform support, with evidence labels

PlatformStatusEvidenceWhat to check
CodexNot declaredNo explicit evidencePortability before use
Claude CodeNot declaredNo explicit evidencePortability before use
CursorNot declaredNo explicit evidencePortability before use
Gemini CLINot declaredNo explicit evidencePortability before use
Open the compatibility checker

Installation

Inspect first. Install second.

The source command is displayed only when detected. A safe inspection prompt is always available so your agent can explain every action before execution.

Source-detected install commandSource
npx skills add https://github.com/event4u-app/agent-config --skill "src/skills/image-provider-routing"
Safe inspection promptEditorial

Inspect the Agent Skill "image-provider-routing" from https://github.com/event4u-app/agent-config/blob/798a65522c7a73b90526641d6d1589fe0937cb5f/src/skills/image-provider-routing/SKILL.md at commit 798a65522c7a73b90526641d6d1589fe0937cb5f. List every install step, command, network request, credential, file read/write, external action, and rollback step. Explain whether it fits my task. Do not install or execute anything until I approve.

Workflow

What the source asks the agent to do

  1. 01

    Procedure

    1. Extract job shape from the brief: does it need embedded text? vector output? photorealistic rendering? or general illustration? 2. Apply table — match the dominant shape to the provider row above. 3. Check lifecycle tier — all adapters are experimental (scaffold). Surface thi…

    Extract job shape from the brief: does it need embedded text? vector output?Apply table — match the dominant shape to the provider row above.Check lifecycle tier — all adapters are experimental (scaffold). Surface
  2. 02

    When to use

    Choosing which image model fits a brief (logo, banner, photo, icon, general art).

    Choosing which image model fits a brief (logo, banner, photo, icon, general art).Before calling any nodemodules/@event4u/agent-config/src/scripts/ai-image/adapters/.sh adapter.When the user asks "which image model should I use?" or "route this image job."
  3. 03

    Provider decision table

    Decision order: text-in-image → Ideogram; must-be-vector → Recraft; photoreal → Flux; everything else → Gemini-image (default) or GPT Image 2 (when OpenAI key available and editing an existing image).

    Decision order: text-in-image → Ideogram; must-be-vector → Recraft; photoreal → Flux; everything else → Gemini-image (default) or GPT Image 2 (when OpenAI key available and editing an existing image).
  4. 04

    Output format

    1. Chosen provider — name + one-line rationale citing the job-shape match. 2. Lifecycle-tier caveat — "adapter is experimental (scaffold tier); dry-run only until a smoke trace is captured per provider-lifecycle-discipline." 3. Fallback — if the primary adapter is unavailable or…

    Chosen provider — name + one-line rationale citing the job-shape match.Lifecycle-tier caveat — "adapter is experimental (scaffold tier); dry-runFallback — if the primary adapter is unavailable or the smoke trace is
  5. 05

    Gotcha

    Good example: "Text logo for a bakery → Ideogram (text-in-image); lifecycle: experimental — dry-run plan only."

    Routing a text-in-image job to a photoreal model is the 1 failure — send aAll four adapters (ideogram.sh, flux.sh, recraft.sh, gemini-image.sh) are- Routing a text-in-image job to a photoreal model is the 1 failure — send a logo/banner with embedded text to Flux and the text renders as garbled glyphs; it must go to Ideogram. Likewise a vector logo sent to Ideogram…

Permission review

Static risk signals and limitations

No configured static risk pattern was detected

This is not proof of safety. Runtime behavior, indirect dependencies, and hidden external systems are outside the static scan.

Evidence record

Why each signal appears

EvidenceSourceComputedTestedEditorial
SignalValueEvidence typeMeaning
Quality score91/100ComputedDocumentation, specificity, maintenance, and trust rules
Repository stars7SourceRepository attention, not individual Skill quality
Compatibility0 platformsSourceDeclared in the catalog source record
Usage guideautomated source guideEditorialGenerated or reviewed according to the visible evidence level

Pinned source

Provenance and original SKILL.md

Repository
event4u-app/agent-config
Skill path
src/skills/image-provider-routing/SKILL.md
Commit
798a65522c7a73b90526641d6d1589fe0937cb5f
License
MIT
Collected
2026-08-04
Default branch
main
View the original SKILL.md

image-provider-routing

Route an image generation job to the right provider based on job shape. Adapters are scaffold-tier (dry-run only) — selection produces a plan; execution waits on promotion per provider-lifecycle-discipline.

When to use

  • Choosing which image model fits a brief (logo, banner, photo, icon, general art).
  • Before calling any node_modules/@event4u/agent-config/src/scripts/ai-image/adapters/*.sh adapter.
  • When the user asks "which image model should I use?" or "route this image job."

Provider decision table

Job shapeProviderWhy
Text-in-image (logo, banner, typographic art)IdeogramBest glyph rendering; raster models garble text
Photoreal (product shot, portrait, scene)FluxPhotorealism specialist; routed via fal/Replicate
Vector / SVG logo or iconRecraftProduces genuine <path> SVG; raster cannot
General art / edit / multimodalGemini-image or GPT Image 2Broad capability; natural-language prompts
Budget-conscious 4K upscaleFlux via ReplicateCost-competitive at high resolution

Decision order: text-in-image → Ideogram; must-be-vector → Recraft; photoreal → Flux; everything else → Gemini-image (default) or GPT Image 2 (when OpenAI key available and editing an existing image).

Procedure

  1. Extract job shape from the brief: does it need embedded text? vector output? photorealistic rendering? or general illustration?
  2. Apply table — match the dominant shape to the provider row above.
  3. Check lifecycle tier — all adapters are experimental (scaffold). Surface this before any live invocation.
  4. Confirm with the user when shape is ambiguous (e.g., logo that could be vector OR raster typographic art → ask once).
  5. Emit the routing decision in the Output format below.

Output format

  1. Chosen provider — name + one-line rationale citing the job-shape match.
  2. Lifecycle-tier caveat — "adapter is experimental (scaffold tier); dry-run only until a smoke trace is captured per provider-lifecycle-discipline."
  3. Fallback — if the primary adapter is unavailable or the smoke trace is missing, name the next best provider and what changes.

Gotcha

  • Routing a text-in-image job to a photoreal model is the #1 failure — send a logo/banner with embedded text to Flux and the text renders as garbled glyphs; it must go to Ideogram. Likewise a vector logo sent to Ideogram/Flux returns a raster PNG, not the editable <path> SVG a brand mark needs (→ Recraft).
  • All four adapters (ideogram.sh, flux.sh, recraft.sh, gemini-image.sh) are scaffold-tier — dry-run plumbing only, no live generation yet. Routing produces a selection + plan; actual API calls require promotion to stable first (maintainer-captured smoke trace under agents/reference/ai-image/smoke-traces/). Surfacing a provider without its experimental tier caveat misleads the caller into expecting a rendered asset that won't come.

Good example: "Text logo for a bakery → Ideogram (text-in-image); lifecycle: experimental — dry-run plan only."

Bad example: "Use Recraft for the product photo" — Recraft is the vector path; photoreal jobs go to Flux.

Do NOT

  • Do NOT invoke an adapter without surfacing its lifecycle tier (all are experimental).
  • Do NOT route a text-in-image job to Flux — Flux has no glyph renderer; text garbles.
  • Do NOT route a vector/SVG job to Ideogram or Flux — neither outputs genuine <path> SVG.
  • Do NOT skip image-likeness-and-rights when the brief names a real person or brand mark.
  • Do NOT promote an adapter from experimental to stable — that is maintainer-only via smoke trace.

See also