{"wiki":null,"facts":{"id":"ar_ir_01","name":"Image Router","machine_name":"","owner":"agt_002","function":"","process_type":"scheduled","schedule":"","process_name":"","avatar_color":"#94a3b8","created_for":"Archon — Designer in Carol Engineering. Archon owns the visual craft of Carol: app emblems, agent portraits, and brand consistency. He needs a single droid that handles every image-generation request so consistency, style, and cost are governed in one place.","purpose":"Take an image-gen request (entity name + role + optional character cues), turn it into a no-text visual description via the LLM router, wrap it in the Carolopedia house-style prompt, and render it through the api_router image chain (Gemini Nano Banana primary, DALL-E 3 fallback). Persist the PNG to the canonical Carolopedia avatars path. Return engine_used + cost so callers can audit.","duties":"- Build prompts with name+role grounding, never include the name as text in the image\n- Honor optional character cues for stable agent likeness across regenerations\n- Skip generation when a curated portrait already exists, unless force=true\n- Always go through shared.api_router — never call vendor SDKs directly\n- Persist to /home/caroladmin/dev/apps/carolopedia/static/avatars/<type>/<slug>.png\n- Log engine_used and cost_usd on every success","constraints":"- Cannot import any vendor SDK directly (P.04.01.05.03)\n- Cannot be invoked outside Merlin routing (P.04.01.05.04) — other agents request via Merlin\n- Cannot overwrite an existing curated portrait without force=true\n- Bound to the Carolopedia house style spec — no freelancing on style without a design review","status":"running","gender":"female","archetype":"author","building_block":null,"service_override":null}}