Skills DirectorySkills Directory
SkillsLearnSecurityCategoriesDocsCommunityBlog
Sign InSubmit Skill
Skills Directory

Security-tested agent skills for Claude, coding agents, and AI workflows.

Directory

  • Browse Skills
  • All Skills A–Z
  • Claude Skills
  • Claude Code Skills
  • Agent Skills
  • Categories
  • Authors
  • Submit a Skill

Learn

  • Learn Hub
  • Install Claude Skills
  • Write SKILL.md
  • Skills vs MCP
  • Directories Compared

Security

  • Security
  • Methodology
  • Secure Claude Skills
  • Security Badges

Company

  • About
  • Community
  • Blog
  • API Docs
  • Advertise

2026 Skills Directory. All rights reserved.

ProTermsPrivacyRefunds
Back to skills

Generate Images Via Saa Backend

ASecurity

Enables AI agents to generate images using the Character Select Stand Alone App (SAA) image generation backend via command-line interface.

19 stars
0 votes
0 copies
1 views
Added 9/19/2026
ai-agentspythongobashdebugginggitbackend

Works with

cli

Security Analysis

A100/100

Scanned 9/19/2026

Install to Claude Code

$npx -y skills add rondoflow/rondoflow --skill generate-images-via-saa-backend --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Generate Images Via Saa Backend?

Add the live security badge to your README — it updates automatically with every re-scan.

Security grade badge for Generate Images Via Saa Backend
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/rondoflow-generate-images-via-saa-backend/badge)](https://www.skillsdirectory.com/skills/rondoflow-generate-images-via-saa-backend)

More formats (shields.io, HTML) on the badges page.

Download with Pro
Files
SKILL.md
---
name: generate-images-via-saa-backend
description: "Enables AI agents to generate images using the Character Select Stand Alone App (SAA) image generation backend via command-line interface."
category: "AI & Agents"
author: community
version: "1.0.1"
icon: bot
---

# SAA CLI Tool

A command-line interface for interacting with Character Select Stand Alone App (SAA) via WebSocket connections. Supports both ComfyUI and WebUI backends for AI image generation.

## Prerequisites

**CRITICAL:** Before invoking this tool, confirm with the user that:
1. The SAA backend is running, and version is above 2.4.0
2. The SAAC (SAA Client) feature is enabled
3. The WebSocket address is available
4. Some Mac users uses `python3` instead of `python` to invoke Python 3.x

For SAA setup details, let your owner visit the [project repository](https://github.com/mirabarukaso/character_select_stand_alone_app).

## Basic Usage

The tool requires minimal parameters to function. The examples below demonstrate the standard usage pattern:

### Minimal Command With Model Selection (Recommended for Most Cases)

```bash
python saa-agent.py \
  --ws-address "user_provided_ws_address" \
  --model "waiIllustriousSDXL_v160.safetensors" \
  --positive "your detailed prompt here" \
  --negative "low quality, blurry, bad anatomy"
```
### Regional Prompting (Split Composition)

```bash
python saa-agent.py \
  --ws-address "user_provided_ws_address" \
  --model "waiIllustriousSDXL_v160.safetensors" \
  --regional \
  --positive-left "1girl, warrior, red armor" \
  --positive-right "1boy, mage, blue robes"
```

### More Examples
Get more usage examples and detailed parameter explanations:

```bash
python saa-agent.py
python saa-agent.py --help
```

## Key Parameters

### Required
- `--ws-address`: WebSocket address (obtain from user)
- `--positive`: Main prompt OR use `--regional` mode with `--positive-left` and `--positive-right`

### Commonly Modified
- `--model`: Change the checkpoint model (default: `waiIllustriousSDXL_v160.safetensors`)
- `--negative`: Specify unwanted elements
- `--width` / `--height`: Image dimensions (defaults: 1024x1360)
- `--steps`: Sampling steps (default: 28)
- `--seed`: Set specific seed or -1 for random

### Advanced (Use Sparingly)
- `--cfg`: CFG scale (default: 7.0)
- `--sampler`: Sampling algorithm (default: `euler_ancestral`)
- `--scheduler`: Scheduler type (default: `normal`)

## Important Guidelines

### HiResFix Warning

**DO NOT use `--hifix` unless specifically requested by the user.**

HiResFix significantly increases generation time and requires substantial GPU resources. Only enable if:
- User explicitly requests high-resolution upscaling
- User confirms their GPU can handle the additional load

### Backend Busy State

If the generation returns either of these errors:

```
Error: WebUI is busy, cannot run new generation, please try again later.
Error: ComfyUI is busy, cannot run new generation, please try again later.
```

**Actions to take:**

1. **DO NOT** automatically retry the generation
2. Inform the user: "The SAA backend is currently busy. This could mean another process is generating an image, or the backend is locked from a previous error."
3. Advise: "Please wait 20-60 seconds before trying again."
4. Let the user manually retry

**DO NOT** chain multiple retry attempts as this can worsen backend congestion.

### Skeleton Key Usage

The `--skeleton-key` parameter forcefully unlocks the backend's atomic lock.

**When to use:**
- User confirms no other processes are using the backend
- Backend appears stuck despite waiting
- User explicitly requests unlocking

**How to use:**

```bash
python saa-agent.py \
  --ws-address "user_provided_ws_address" \
  --skeleton-key \
  --positive "test prompt"
```

**Rules:**
1. **ALWAYS** ask for user confirmation before using `--skeleton-key`
2. **ONLY** use it once per user request
3. Explain to the user that this forcefully terminates any locks

Example conversation:
```
AI: "The backend appears to be locked. Would you like me to use the skeleton key to force unlock it? This will terminate any existing locks."
User: "Yes, please unlock it."
AI: [proceeds to run command with --skeleton-key]
```

## Parameter Defaults

When in doubt, rely on these defaults - they work well for most cases:

- Model: `waiIllustriousSDXL_v160.safetensors`
- Dimensions: 1024x1360
- CFG: 7.0
- Steps: 28
- Sampler: `euler_ancestral`
- Scheduler: `normal`
- Seed: -1 (random)

## Output Handling

By default, images are saved to `generated_image.png`. You can specify a custom output path:

```bash
--output "custom_filename.png"
```

For programmatic handling, use base64 output:

```bash
--base64
```

This outputs base64-encoded image data(huge!!!) to stdout instead of saving a file.

## Example Workflow

1. User requests: "Generate an anime girl with long blue hair"

2. AI executes:
```bash
python saa-agent.py \
  --ws-address "user_ws_address" \
  --positive "1girl, long hair, blue hair, anime style, detailed" \
  --negative "low quality, blurry, bad anatomy"
```

3. If backend busy error occurs:
   - Inform user
   - Wait for user to retry (don't auto-retry)

4. If success:
   - Confirm image was generated
   - Provide file path if relevant

## Common Pitfalls to Avoid

1. **Don't use `--hifix`** unless explicitly requested
2. **Don't auto-retry** on backend busy errors
3. **Don't use `--skeleton-key`** without user permission
4. **Don't add excessive parameters** - unless explicitly requested, the defaults are well-tuned
5. **Don't assume backend is ready** - always confirm with user first

## Error Codes

- Exit code 0: Success
- Exit code 1: Connection error (check backend is running)
- Exit code 2: Authentication error (check credentials)
- Exit code 3: Generation error (check parameters)
- Exit code 4: Timeout (backend may be overloaded)
- Exit code 5: Invalid parameters (check command syntax)

## Best Practices

1. Start with minimal parameters with model selection if needed
2. Ask user for WebSocket address on first use
3. Handle busy states gracefully - don't spam retries
4. Use `--verbose` flag when debugging issues
5. Respect the skeleton key - it's a powerful override tool

## AI Agent Guidelines for This Skill

These rules help maintain appropriate transparency and user control when executing generation tasks.

1. **Command Execution & User Notification**  
   By default, execute the command directly without asking for confirmation.  
   Show the full command and ask for approval only when:  
   - The user explicitly requests to review it first  
   - The operation involves sensitive or high-impact parameters  
   - The agent judges that showing the command is prudent in context  

   Example (when disclosure is needed):  
    ```
    python3 saa-agent.py --ws-address "wss://..." --username "..." --password "..." --positive "[prompt]" --negative "[prompt]" --output "[path]" [--verbose]
    ```

2. **--verbose Flag**  
  - Not used by default  
  - Add automatically or recommend when:  
    - Task fails and debugging is needed  
    - User specifically asks for detailed logs or seed  

3. **Result Reporting**  
  After completion, provide a short summary to the user by default, including:  
  - Success/failure status  
  - Positive & negative prompts (or meaningful summary)  
  - Seed (if available)  
  - Output path  

  Example:
    ```
    Generation completed
    • Positive: [...]
    • Negative: [...]
    • Seed: 123456789
    • Output: [path]
    ```
  
  Skip detailed reporting only if the user has clearly requested silent / minimal feedback.  
  Always report errors, even in silent mode.

4. **Error Handling**  
  - On failure: consider one retry with `--verbose` to capture diagnostic information  
  - Communicate the main error cause clearly  
  - Do not perform unlimited retries; defer to user after one attempt if needed

Attribution

rondoflowrondoflow
View sourceMore from rondoflow →
SSkills DirectorySkills Directory

Know which skills are safe — weekly.

Best new skills + every skill we flagged as malicious. From the team that scanned 103,619.

Join free

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments (0)

No comments yet. Be the first to comment!

SSkills DirectorySkills Directory

Know which skills are safe — weekly.

Best new skills + every skill we flagged as malicious. From the team that scanned 103,619.

Join free

Related Skills

Caveman

Ultra-compressed communication mode that cuts output tokens while keeping technical accuracy. Levels: lite, full, ultra and the wenyan variants. Use for /caveman, "caveman mode", "talk like caveman", "be brief" or "less tokens".

1066601 votes

Hyperplan

Adversarial multi-agent planning skill. Self-orchestrates 5 hostile category members (unspecified-low, unspecified-high, deep, ultrabrain, artistry) via team-mode for ruthless cross-critique debate, distills only the defensible insights, then MANDATORILY hands the distilled insight bundle to the `plan` agent for executable plan formalization. Use when planning needs maximum rigor and surfacing of weak assumptions, blind spots, and over-engineering. Triggers: 'hyperplan', 'hpp', '/hyperplan', ...

693161 votes

Mcp Code Execution

Routes multi-tool workflows through MCP servers for large datasets and pipelines. Use when Bash tool overhead is limiting throughput on data-heavy tasks.

3351 votes

catchup

Recovers the conversation and failed tool calls of a previous Codex, Claude Code, Antigravity, Cline, Copilot CLI, Cursor, DeepSeek Harness, Kimi, OpenCode, Pi Agent, or ZCode session. Use when the user says "catch up", "what did the last session do", "get me up to speed", "I switched agents", asks to recover/summarize a previous session before continuing, or asks to diagnose or report a catchup failure. Do NOT use for the current conversation, git history, or any non-agent log.

691 votes

math-skill

A comprehensive mathematical reasoning skill for AI assistants — handles arithmetic to research-level problems with rigorous step-by-step reasoning, systematic verification, and transparent uncertainty handling

381 votes
View all in ai-agents →