{"skill":{"slug":"free-quota-image-skill","displayName":"free quota text to image","summary":"Generate images from text with a free-quota-first multi-provider workflow. Use this skill when a user asks for text-to-image generation that needs provider r...","description":"---\nname: free-quota-image-skill\ndescription: Generate images from text with a free-quota-first multi-provider workflow. Use this skill when a user asks for text-to-image generation that needs provider routing (Hugging Face, Gitee, ModelScope, A4F, OpenAI-compatible private endpoints), token pooling with automatic rotation on quota/auth failures, public API fallback for Hugging Face, prompt optimization, model fallback, batch generation in one command, and structured generation outputs.\nmetadata: {\"openclaw\":{\"homepage\":\"https://github.com/Amery2010/peinture\"}}\n---\n\n# Free Quota Image Skill\n\r\n## Overview\r\n\r\nUse this skill to run a provider-agnostic text-to-image pipeline with free-quota-first routing, token rotation, and prompt enhancement.\n\r\n## Workflow\r\n\r\n1. Load config from `{baseDir}/assets/config.example.yaml` or user-provided config.\n2. Resolve provider order (`--provider auto` follows `routing.provider_order`).\n3. Resolve model candidates per provider (`requested -> z-image-turbo -> provider default`).\r\n4. Prepare prompt for each attempt:\r\n   - optionally auto-translate for target models\r\n   - optionally optimize prompt with provider text model\r\n5. Execute generation request.\r\n6. On quota/auth failures, rotate token; if exhausted, move to next provider.\r\n7. Repeat the generation flow when `--count > 1`, and rotate provider/token start position per image to spread load.\n8. Return stable JSON output fields or direct URL output.\n\r\n## Commands\r\n\r\nInstall dependencies:\n\n```bash\npython -m pip install -r {baseDir}/scripts/requirements.txt\n```\n\r\nRun generation:\r\n\r\n```bash\npython {baseDir}/scripts/run_text2img.py --prompt \"cinematic rainy tokyo alley\" --json\n```\n\r\nRun with explicit provider/model:\r\n\r\n```bash\npython {baseDir}/scripts/run_text2img.py --prompt \"a fox astronaut\" --provider gitee --model flux-2 --json\n```\n\r\nSave image locally:\r\n\r\n```bash\npython {baseDir}/scripts/run_text2img.py --prompt \"retro sci-fi city\" --output ./out.png\n```\n\nGenerate multiple images in one run:\n\n```bash\npython {baseDir}/scripts/run_text2img.py --prompt \"anime passport portrait\" --count 4 --json\n```\n\r\n## CLI contract\r\n\r\nUse `{baseDir}/scripts/run_text2img.py` with the fixed contract:\n\r\n- `--prompt` (required)\r\n- `--provider` (`auto|huggingface|gitee|modelscope|a4f|openai_compatible`, default `auto`)\n- `--model` (default `z-image-turbo`)\r\n- `--aspect-ratio` (default `1:1`)\r\n- `--seed` (optional int)\r\n- `--steps` (optional int)\r\n- `--guidance-scale` (optional float)\r\n- `--enable-hd` (flag)\r\n- `--optimize-prompt` / `--no-optimize-prompt` (default on)\r\n- `--auto-translate` / `--no-auto-translate` (default off)\r\n- `--config` (default `{baseDir}/assets/config.example.yaml`)\n- `--output` (optional output file path)\n- `--count` (number of images in one run, default `1`)\n- `--json` (structured output)\n\r\n## Output contract\r\n\r\nWhen `--json` is used, output these fields on success:\r\n\r\n- `id`\r\n- `url`\r\n- `provider`\r\n- `model`\r\n- `prompt_original`\r\n- `prompt_final`\r\n- `seed`\r\n- `steps`\r\n- `guidance_scale`\r\n- `aspect_ratio`\r\n- `fallback_chain`\r\n- `elapsed_ms`\r\n\r\nOn failure, output structured error fields:\n\r\n- `error_type`\r\n- `error`\r\n- `fallback_chain`\n\nWhen `--count > 1`, JSON output contains:\n\n- `count`\n- `images` (array of standard success payloads)\n- `elapsed_ms`\n\r\n## References\r\n\r\nRead only what is needed:\r\n\r\n- Provider API wiring: `references/provider-endpoints.md`\n- Model coverage and fallback: `references/model-matrix.md`\n- Token rotation and date rules: `references/token-rotation-policy.md`\n- Prompt optimization pipeline: `references/prompt-optimization-policy.md`\n- OpenClaw setup details: `references/openclaw-integration.md`\n\r\n## Scope boundaries\r\n\r\nKeep this skill focused on text-to-image core only.\r\n\r\nDo not add image editing, video generation, or cloud storage workflows in this skill.\r\n","tags":{"latest":"1.0.0"},"stats":{"comments":0,"downloads":808,"installsAllTime":2,"installsCurrent":2,"stars":0,"versions":1},"createdAt":1772468919275,"updatedAt":1778994594964},"latestVersion":{"version":"1.0.0","createdAt":1772468919275,"changelog":"- Initial release of free-quota-image-skill.\n- Supports text-to-image generation via multiple providers, using a free-quota-first routing system.\n- Includes token pooling and automatic rotation on quota/auth failures; supports public API fallback for Hugging Face.\n- Provides prompt optimization, provider/model fallback, and batch image generation in one command.\n- Outputs structured JSON with stable fields for successful or failed generations.\n- Includes a CLI with flexible provider/model selection and configurable output options.","license":null},"metadata":{"setup":[],"os":null,"systems":null},"owner":{"handle":"chiayengu","userId":"s17cnnj6jmt6f6wt1ddcqrcv39885yfk","displayName":"ChiayenGu","image":"https://avatars.githubusercontent.com/u/47971475?v=4"},"moderation":null}