plugins/fal-ai-master/skills/fal-text-to-image/SKILL.md
Complete fal.ai text-to-image system. PROACTIVELY activate for: (1) FLUX.1/2 Pro/Dev/Schnell generation, (2) SDXL and Fast SDXL, (3) Image size presets (square_hd, landscape_16_9), (4) Guidance scale and inference steps, (5) LoRA model application, (6) Seed for reproducibility, (7) Batch generation (num_images), (8) Ideogram for text in images, (9) Recraft for design assets. Provides: Model endpoints, parameter reference, prompt engineering, quality vs speed trade-offs. Ensures optimal text-to-image generation.
npx skillsauth add JosiahSiegel/claude-plugin-marketplace fal-text-to-imageInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
| Model | Endpoint | Speed | Quality | Cost |
|-------|----------|-------|---------|------|
| FLUX.2 Pro | fal-ai/flux-2-pro | Medium | Highest | $$$ |
| FLUX.1 Dev | fal-ai/flux/dev | Medium | High | $$ |
| FLUX Schnell | fal-ai/flux/schnell | Fast | Good | $ |
| Fast SDXL | fal-ai/fast-sdxl | Fast | Good | $ |
| Image Size | Preset | Dimensions |
|------------|--------|------------|
| Square HD | square_hd | 1024x1024 |
| Landscape | landscape_16_9 | 1024x576 |
| Portrait | portrait_16_9 | 576x1024 |
| Custom | { width, height } | Any |
| Parameter | FLUX Default | SDXL Default |
|-----------|--------------|--------------|
| guidance_scale | 3.5 | 7.5 |
| num_inference_steps | 28 | 25 |
| num_images | 1 | 1 |
Use for text-to-image generation:
Related skills:
fal-image-to-imagefal-model-guidefal-api-referenceComplete reference for all text-to-image generation models on fal.ai.
Endpoint: fal-ai/flux/dev
Pricing: $0.025/megapixel
Best For: High-quality open-source generation
The 12B parameter FLUX.1 model offers excellent quality with open-source accessibility.
import { fal } from "@fal-ai/client";
const result = await fal.subscribe("fal-ai/flux/dev", {
input: {
prompt: "A serene Japanese garden with cherry blossoms, koi pond, wooden bridge, soft morning light",
image_size: "landscape_16_9",
num_inference_steps: 28,
guidance_scale: 3.5,
num_images: 1,
seed: 42,
enable_safety_checker: true,
output_format: "jpeg"
}
});
console.log(result.images[0].url);
import fal_client
result = fal_client.subscribe(
"fal-ai/flux/dev",
arguments={
"prompt": "A serene Japanese garden with cherry blossoms",
"image_size": "landscape_16_9",
"num_inference_steps": 28,
"guidance_scale": 3.5,
"num_images": 1,
"seed": 42,
"enable_safety_checker": True,
"output_format": "jpeg"
}
)
print(result["images"][0]["url"])
Endpoint: fal-ai/flux/schnell
Pricing: Lower cost per image
Best For: Fast iteration, previews, 4-step generation
Optimized for speed with only 4 inference steps required.
const result = await fal.subscribe("fal-ai/flux/schnell", {
input: {
prompt: "A colorful abstract painting",
image_size: "square_hd",
num_inference_steps: 4, // Optimized for 4 steps
num_images: 1
}
});
Endpoint: fal-ai/flux-pro
Pricing: Premium
Best For: Production workloads
const result = await fal.subscribe("fal-ai/flux-pro", {
input: {
prompt: "Professional product photography of a luxury watch",
image_size: "square_hd",
num_inference_steps: 28,
guidance_scale: 3.5
}
});
Endpoint: fal-ai/flux-2-pro
Pricing: $0.03/megapixel
Best For: Highest quality, automatic prompt enhancement
The latest FLUX model with built-in prompt optimization.
const result = await fal.subscribe("fal-ai/flux-2-pro", {
input: {
prompt: "A majestic lion in the savanna at golden hour",
image_size: "landscape_16_9",
num_inference_steps: 28,
guidance_scale: 3.5,
// FLUX 2 Pro features
safety_tolerance: "2", // 1-6, higher = more permissive
raw: false // Set true to disable prompt enhancement
}
});
FLUX.2 Pro Specific Parameters:
safety_tolerance: 1-6, controls content filtering sensitivityraw: Boolean, set to true to disable automatic prompt enhancementEndpoint: fal-ai/flux-lora
Best For: Custom trained styles and subjects
Apply custom LoRA models to FLUX generation.
const result = await fal.subscribe("fal-ai/flux-lora", {
input: {
prompt: "A portrait in the style of <lora_trigger>",
loras: [
{
path: "https://huggingface.co/user/lora-model/resolve/main/lora.safetensors",
scale: 0.8
}
],
image_size: "portrait_4_3",
num_inference_steps: 28,
guidance_scale: 3.5
}
});
LoRA Parameters:
loras: Array of LoRA configurations
path: URL to LoRA weights (.safetensors)scale: 0-1, strength of LoRA effectEndpoint: fal-ai/flux-realism
Best For: Photorealistic images
const result = await fal.subscribe("fal-ai/flux-realism", {
input: {
prompt: "A photorealistic portrait of a young woman, natural lighting, 85mm lens",
image_size: "portrait_4_3",
num_inference_steps: 28
}
});
Endpoint: fal-ai/flux-pro/v1/fill
Best For: Extending images beyond boundaries
const result = await fal.subscribe("fal-ai/flux-pro/v1/fill", {
input: {
prompt: "Continue the landscape with mountains",
image_url: "https://example.com/partial-image.jpg",
mask_url: "https://example.com/outpaint-mask.png"
}
});
Endpoint: fal-ai/fast-sdxl
Best For: Speed and cost efficiency
const result = await fal.subscribe("fal-ai/fast-sdxl", {
input: {
prompt: "A fantasy castle on a cliff, dramatic lighting",
negative_prompt: "blurry, low quality, distorted",
image_size: "landscape_16_9",
num_inference_steps: 25,
guidance_scale: 7.5,
num_images: 1,
seed: 42
}
});
SDXL-Specific Parameters:
negative_prompt: What to avoid in generationguidance_scale (7-12) works better for SDXLEndpoint: fal-ai/stable-diffusion-v3-medium
Best For: SD3 architecture, good text rendering
const result = await fal.subscribe("fal-ai/stable-diffusion-v3-medium", {
input: {
prompt: "A sign that says 'Hello World' in neon lights",
negative_prompt: "blurry, distorted text",
image_size: "square_hd",
num_inference_steps: 28,
guidance_scale: 7.0
}
});
Endpoint: fal-ai/sdxl-turbo
Best For: Ultra-fast, single-step generation
const result = await fal.subscribe("fal-ai/sdxl-turbo", {
input: {
prompt: "A cute robot",
num_inference_steps: 1, // Single step!
guidance_scale: 0 // No guidance needed
}
});
Endpoint: fal-ai/fast-lightning-sdxl
Best For: Fast 4-step SDXL
const result = await fal.subscribe("fal-ai/fast-lightning-sdxl", {
input: {
prompt: "A beautiful sunset",
num_inference_steps: 4,
guidance_scale: 1.5
}
});
Endpoint: fal-ai/recraft-v3
Best For: Design assets, illustrations, vector-style
const result = await fal.subscribe("fal-ai/recraft-v3", {
input: {
prompt: "A minimalist logo for a tech startup, clean lines",
image_size: "square_hd",
style: "digital_illustration" // or "realistic_image", "vector_illustration"
}
});
Recraft Styles:
realistic_imagedigital_illustrationvector_illustrationiconEndpoint: fal-ai/ideogram
Best For: Text in images, typography
const result = await fal.subscribe("fal-ai/ideogram", {
input: {
prompt: "A vintage poster with the text 'JAZZ FESTIVAL' in art deco style",
aspect_ratio: "portrait_4_3"
}
});
Endpoint: fal-ai/playground-v25
Best For: Creative, artistic images
const result = await fal.subscribe("fal-ai/playground-v25", {
input: {
prompt: "A surreal dreamscape with floating islands",
image_size: "landscape_16_9",
guidance_scale: 3.0
}
});
Endpoint: fal-ai/aura-flow
Best For: Open-source flow-based model
const result = await fal.subscribe("fal-ai/aura-flow", {
input: {
prompt: "A magical forest with bioluminescent plants",
num_inference_steps: 28,
guidance_scale: 3.5
}
});
Endpoint: fal-ai/kolors
Best For: Artistic, colorful generations
const result = await fal.subscribe("fal-ai/kolors", {
input: {
prompt: "A vibrant street market in Morocco",
image_size: "landscape_4_3"
}
});
| Preset | Dimensions | Aspect Ratio |
|--------|------------|--------------|
| square | 512x512 | 1:1 |
| square_hd | 1024x1024 | 1:1 |
| portrait_4_3 | 768x1024 | 3:4 |
| portrait_16_9 | 576x1024 | 9:16 |
| landscape_4_3 | 1024x768 | 4:3 |
| landscape_16_9 | 1024x576 | 16:9 |
Custom Dimensions:
image_size: { width: 1920, height: 1080 }
interface TextToImageInput {
// Required
prompt: string;
// Image dimensions
image_size?:
| "square" | "square_hd"
| "portrait_4_3" | "portrait_16_9"
| "landscape_4_3" | "landscape_16_9"
| { width: number; height: number };
// Generation parameters
num_inference_steps?: number; // 1-50, default varies by model
guidance_scale?: number; // 1-20, default: 3.5 (FLUX) or 7.5 (SDXL)
num_images?: number; // 1-4, default: 1
seed?: number; // For reproducibility
// Output options
output_format?: "jpeg" | "png";
enable_safety_checker?: boolean;
// SDXL-specific
negative_prompt?: string;
// FLUX 2 Pro specific
safety_tolerance?: string; // "1" to "6"
raw?: boolean; // Disable prompt enhancement
// LoRA specific
loras?: Array<{
path: string;
scale: number;
}>;
}
interface TextToImageOutput {
images: Array<{
url: string;
width: number;
height: number;
content_type: string;
}>;
seed: number;
prompt: string;
has_nsfw_concepts?: boolean[];
timings?: {
inference: number;
};
}
| Use Case | Recommended Model | Why |
|----------|-------------------|-----|
| Best quality | fal-ai/flux-2-pro | Latest model, prompt enhancement |
| Open source | fal-ai/flux/dev | 12B params, high quality |
| Fast iteration | fal-ai/flux/schnell | 4-step generation |
| Budget | fal-ai/fast-sdxl | Lower cost per image |
| Ultra-fast | fal-ai/sdxl-turbo | Single step |
| Custom styles | fal-ai/flux-lora | LoRA support |
| Text in images | fal-ai/ideogram | Typography focus |
| Design assets | fal-ai/recraft-v3 | Vector-style output |
| Photorealistic | fal-ai/flux-realism | Realism optimized |
For FLUX models:
raw: true to disable)For SDXL models:
// Quality priority
const quality = await fal.subscribe("fal-ai/flux-2-pro", {
input: {
prompt: "...",
num_inference_steps: 28,
guidance_scale: 3.5
}
});
// Speed priority
const fast = await fal.subscribe("fal-ai/flux/schnell", {
input: {
prompt: "...",
num_inference_steps: 4
}
});
// Balance
const balanced = await fal.subscribe("fal-ai/flux/dev", {
input: {
prompt: "...",
num_inference_steps: 20,
guidance_scale: 3.5
}
});
// Generate multiple variations
const result = await fal.subscribe("fal-ai/flux/dev", {
input: {
prompt: "A beautiful landscape",
num_images: 4,
seed: 42 // Same seed = similar outputs
}
});
// Access all images
result.images.forEach((img, i) => {
console.log(`Image ${i + 1}: ${img.url}`);
});
// Use seed for reproducible results
const seed = 12345;
const result1 = await fal.subscribe("fal-ai/flux/dev", {
input: { prompt: "A cat", seed }
});
const result2 = await fal.subscribe("fal-ai/flux/dev", {
input: { prompt: "A cat", seed }
});
// result1 and result2 will be identical
development
This skill should be used when the user asks to train, debug, scale, or improve ML models. PROACTIVELY activate for: (1) PyTorch, TensorFlow/Keras, JAX, Flax, Hugging Face Trainer/Accelerate training loops, (2) distributed training, DDP/FSDP/DeepSpeed, TPU/GPU setup, (3) mixed precision AMP/bf16, gradient accumulation, checkpointing, seeding, (4) overfitting, imbalance, loss functions, regularization, LR schedules, warmup, (5) memory optimization, gradient checkpointing, offloading, quantization-aware training. Provides: reproducible training best practices across deep learning and classical ML.
development
This skill should be used when the user asks to productionize, track, version, govern, monitor, or automate ML systems. PROACTIVELY activate for: (1) MLflow, Weights & Biases, Neptune, Comet, ClearML experiment tracking, (2) model registry, model versioning, artifact lineage, reproducibility, (3) Kubeflow, SageMaker Pipelines, Vertex AI Pipelines, Azure ML pipelines, Databricks workflows, (4) CI/CD, continuous training/evaluation, A/B tests, canary/shadow deployments, (5) drift detection, model monitoring, data validation, responsible AI governance. Provides: end-to-end MLOps architecture and operational safeguards.
development
This skill should be used when the user asks to optimize, export, serve, compress, or accelerate ML inference. PROACTIVELY activate for: (1) latency, throughput, p95/p99, batching, concurrency, KV cache, memory, or cost issues, (2) quantization INT8/INT4, GPTQ, AWQ, bitsandbytes, pruning, sparsity, distillation, (3) ONNX export, ONNX Runtime, TensorRT, TorchScript, torch.compile, XLA, OpenVINO, Core ML, TFLite, (4) Triton, TorchServe, TF Serving, BentoML, Seldon, KServe configuration, (5) edge deployment, CPU/GPU/TPU/Inferentia serving. Provides: hardware-aware inference optimization and safe benchmarking.
testing
This skill should be used when the user asks to tune hyperparameters, run sweeps, optimize search spaces, or use AutoML. PROACTIVELY activate for: (1) Optuna, Ray Tune, FLAML, AutoGluon, Hyperopt, Nevergrad, KerasTuner, W&B sweeps, (2) grid search, random search, Bayesian optimization, TPE, Gaussian processes, evolutionary search, (3) ASHA, Hyperband, successive halving, multi-fidelity optimization, population-based training, (4) learning-rate finder, batch-size search, early stopping, pruning, (5) reproducible sweep design and experiment analysis. Provides: budget-aware hyperparameter search strategy.