plugins/fal-ai-master/skills/fal-model-guide/SKILL.md
Complete fal.ai model selection system. PROACTIVELY activate for: (1) Choosing image generation models (FLUX, SDXL), (2) Choosing video models (Kling, Sora, LTX), (3) Choosing audio models (Whisper, ElevenLabs), (4) Model quality vs speed comparison, (5) Cost optimization by model tier, (6) 3D generation models, (7) Model-specific parameters, (8) Development vs production model selection. Provides: Model comparison tables, decision trees, pricing tiers, performance benchmarks. Ensures optimal model selection for quality, speed, and cost.
npx skillsauth add JosiahSiegel/claude-plugin-marketplace fal-model-guideInstall 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.
| Category | Fast/Cheap | Balanced | Best Quality | |----------|------------|----------|--------------| | Image | FLUX Schnell | FLUX.1 Dev | FLUX.2 Pro | | Video | Runway Turbo | LTX-2 Pro | Kling 2.6 Pro | | Audio STT | Whisper Turbo | Whisper | Whisper Large v3 | | Audio TTS | Kokoro | XTTS | ElevenLabs |
| FLUX Model | Endpoint | Steps | Use Case |
|------------|----------|-------|----------|
| FLUX.2 Pro | fal-ai/flux-2-pro | 28 | Production |
| FLUX.1 Dev | fal-ai/flux/dev | 28 | High quality |
| FLUX Schnell | fal-ai/flux/schnell | 4 | Fast iteration |
| Video Model | Duration | Audio | Speed | |-------------|----------|-------|-------| | Kling 2.6 Pro | 5-10s | Yes | Slow | | LTX-2 Pro | 5s | Yes | Medium | | Runway Turbo | 5-10s | No | Fast |
Use for model selection decisions:
Related skills:
fal-text-to-imagefal-text-to-videofal-audioComprehensive guide to selecting the right fal.ai model for your use case.
| Model | Endpoint | Best For | Speed | Quality | Cost |
|-------|----------|----------|-------|---------|------|
| FLUX.2 [pro] | fal-ai/flux-2-pro | Production, best quality | Medium | Highest | $$$ |
| FLUX.1 [dev] | fal-ai/flux/dev | High quality, open-source | Medium | High | $$ |
| FLUX Schnell | fal-ai/flux/schnell | Fast iteration | Fast | Good | $ |
| FLUX LoRA | fal-ai/flux-lora | Custom trained styles | Medium | High | $$ |
| FLUX Realism | fal-ai/flux-realism | Photorealistic images | Medium | High | $$ |
FLUX.2 Pro - Latest and best quality
const result = await fal.subscribe("fal-ai/flux-2-pro", {
input: {
prompt: "Professional product photo of a watch",
image_size: "square_hd",
num_inference_steps: 28,
guidance_scale: 3.5
}
});
FLUX.1 Dev - Best open-source option
const result = await fal.subscribe("fal-ai/flux/dev", {
input: {
prompt: "A serene mountain landscape",
image_size: "landscape_16_9",
num_inference_steps: 28
}
});
FLUX Schnell - Fast 4-step generation
const result = await fal.subscribe("fal-ai/flux/schnell", {
input: {
prompt: "Quick concept sketch",
num_inference_steps: 4 // Optimized for 4 steps
}
});
| Model | Endpoint | Best For |
|-------|----------|----------|
| Fast SDXL | fal-ai/fast-sdxl | Speed, lower cost |
| SDXL | fal-ai/stable-diffusion-xl | Classic SDXL |
| SD 1.5 | fal-ai/stable-diffusion-v15 | Legacy compatibility |
| SDXL Turbo | fal-ai/sdxl-turbo | Ultra-fast |
// Fast SDXL - Good balance of speed and quality
const result = await fal.subscribe("fal-ai/fast-sdxl", {
input: {
prompt: "A colorful abstract painting",
image_size: "square_hd",
num_inference_steps: 25
}
});
| Model | Endpoint | Use Case |
|-------|----------|----------|
| Recraft V3 | fal-ai/recraft-v3 | Design assets, vectors |
| Ideogram | fal-ai/ideogram | Text in images |
| Playground v2.5 | fal-ai/playground-v25 | Creative/artistic |
| Kandinsky 3 | fal-ai/kandinsky-3 | Russian model |
| Model | Endpoint | Use Case |
|-------|----------|----------|
| FLUX i2i | fal-ai/flux/dev/image-to-image | Transform images |
| FLUX Inpaint | fal-ai/flux/dev/inpainting | Edit regions |
| FLUX ControlNet | fal-ai/flux/dev/controlnet | Guided generation |
| IP-Adapter | fal-ai/ip-adapter-flux | Style transfer |
// Image-to-Image transformation
const result = await fal.subscribe("fal-ai/flux/dev/image-to-image", {
input: {
image_url: "https://example.com/photo.jpg",
prompt: "Transform into watercolor painting style",
strength: 0.75 // 0-1, how much to change
}
});
// Inpainting (edit specific regions)
const result = await fal.subscribe("fal-ai/flux/dev/inpainting", {
input: {
image_url: "https://example.com/photo.jpg",
mask_url: "https://example.com/mask.png",
prompt: "A golden retriever"
}
});
// ControlNet (structural guidance)
const result = await fal.subscribe("fal-ai/flux/dev/controlnet", {
input: {
prompt: "Modern house design",
control_image_url: "https://example.com/edges.png",
controlnet_conditioning_scale: 0.8
}
});
| Model | Endpoint | Quality | Duration | Audio | Best For |
|-------|----------|---------|----------|-------|----------|
| Kling 2.6 Pro | fal-ai/kling-video/v2.6/pro | Highest | 5-10s | Native | Cinematic |
| Sora 2 | fal-ai/sora | Highest | 5-20s | Optional | Advanced |
| LTX-2 Pro | fal-ai/ltx-video-2-pro | High | 5s | Yes | Fast HQ |
| Runway Gen-3 | fal-ai/runway/gen3/turbo | High | 5-10s | No | Fast |
| Luma | fal-ai/luma-dream-machine | Good | 5s | No | Creative |
| CogVideoX | fal-ai/cogvideox | Good | 6s | No | Open source |
Kling 2.6 Pro - Best overall quality
const result = await fal.subscribe("fal-ai/kling-video/v2.6/pro", {
input: {
prompt: "A majestic eagle soaring over mountains at golden hour",
duration: 5,
aspect_ratio: "16:9",
negative_prompt: "blurry, distorted",
cfg_scale: 0.5
}
});
LTX-2 Pro - Fast with audio
const result = await fal.subscribe("fal-ai/ltx-video-2-pro", {
input: {
prompt: "Ocean waves crashing on rocks",
resolution: "720p",
enable_audio: true
}
});
| Model | Endpoint | Best For |
|-------|----------|----------|
| MiniMax Hailuo | fal-ai/minimax/video-01 | Image animation |
| Kling i2v | fal-ai/kling-video/v2.6/pro/image-to-video | HQ animation |
| Luma i2v | fal-ai/luma-dream-machine | Creative |
| Runway i2v | fal-ai/runway/gen3/turbo/image-to-video | Fast |
// Animate a still image
const result = await fal.subscribe("fal-ai/minimax/video-01", {
input: {
image_url: "https://example.com/portrait.jpg",
prompt: "Person slowly turns head and smiles",
prompt_optimizer: true
}
});
// Edit/transform existing video
const result = await fal.subscribe("fal-ai/kling-video/o1", {
input: {
video_url: "https://example.com/video.mp4",
prompt: "Change to anime style"
}
});
| Model | Endpoint | Best For |
|-------|----------|----------|
| Whisper | fal-ai/whisper | Accurate transcription |
| Whisper Turbo | fal-ai/whisper-turbo | Fast transcription |
const result = await fal.subscribe("fal-ai/whisper", {
input: {
audio_url: "https://example.com/speech.mp3",
task: "transcribe", // or "translate"
language: "en",
chunk_level: "segment"
}
});
console.log(result.text);
console.log(result.chunks); // With timestamps
| Model | Endpoint | Best For |
|-------|----------|----------|
| Elevenlabs | fal-ai/elevenlabs | Premium voices |
| F5-TTS | fal-ai/f5-tts | Voice cloning |
| Kokoro | fal-ai/kokoro | Multi-language |
// Text-to-speech with Elevenlabs
const result = await fal.subscribe("fal-ai/elevenlabs", {
input: {
text: "Hello, welcome to our service.",
voice_id: "voice_id_here"
}
});
| Model | Endpoint | Use Case |
|-------|----------|----------|
| TripoSR | fal-ai/triposr | Image to 3D mesh |
| InstantMesh | fal-ai/instantmesh | Fast 3D generation |
| Stable Zero123 | fal-ai/stable-zero123 | Novel view synthesis |
// Generate 3D mesh from image
const result = await fal.subscribe("fal-ai/triposr", {
input: {
image_url: "https://example.com/object.jpg"
}
});
console.log(result.model_mesh.url); // GLB/OBJ file
What do you want to create?
├── Image
│ ├── From text only?
│ │ ├── Need best quality? → FLUX.2 Pro
│ │ ├── Need fast iteration? → FLUX Schnell
│ │ ├── Need open-source? → FLUX.1 Dev
│ │ └── Budget conscious? → Fast SDXL
│ ├── Transform existing image?
│ │ ├── Style transfer → FLUX i2i
│ │ ├── Edit specific region → FLUX Inpainting
│ │ └── Follow structure → FLUX ControlNet
│ └── Need text in image? → Ideogram
│
├── Video
│ ├── From text only?
│ │ ├── Need best quality? → Kling 2.6 Pro
│ │ ├── Need fast preview? → Runway Gen-3 Turbo
│ │ └── Need audio? → LTX-2 Pro or Kling
│ ├── Animate image? → MiniMax Hailuo
│ └── Edit video? → Kling O1
│
├── Audio
│ ├── Speech to text?
│ │ ├── Accurate → Whisper
│ │ └── Fast → Whisper Turbo
│ └── Text to speech? → Elevenlabs / F5-TTS
│
└── 3D
└── Image to 3D? → TripoSR
| Model | ~Time (1024x1024) | |-------|-------------------| | FLUX Schnell | 1-2s | | Fast SDXL | 2-3s | | FLUX.1 Dev | 5-8s | | FLUX.2 Pro | 8-12s |
| Model | ~Time (5s video) | |-------|------------------| | Runway Gen-3 Turbo | 30-60s | | LTX-2 Pro | 60-90s | | Kling 2.6 Pro | 120-180s |
Development Phase
Production Phase
Batch Processing
Resource Efficiency
Visit https://fal.ai/models for the complete catalog of 600+ models including:
development
Use for Clerk sessions, tokens, webhooks, orgs, and security. PROACTIVELY activate for session tokens, JWT templates, getToken(), custom claims, pending sessions, multi-session UX, organizations, roles, permissions, system vs custom permissions, features/plans, MFA/passkeys/password policy/bot protection, Clerk webhooks, Svix signatures, verifyWebhook(), user/org sync, retries/replays, environment variables, custom domains, secret rotation, logs, and auth security reviews. Provides token semantics, webhook idempotency, authorization defaults, and hardening checklist.
tools
Use for Clerk in Next.js. PROACTIVELY activate for @clerk/nextjs setup, App Router auth()/currentUser(), clerkMiddleware(), proxy.ts/middleware.ts, createRouteMatcher(), protected pages/layouts/Route Handlers/Server Actions/API routes/tRPC, auth.protect() role/permission/token checks, ClerkProvider placement, server-only clerkClient, Link prefetch, redirects, 401/404 auth failures, custom domains, __clerk proxy paths, and deployment gotchas. Provides file patterns, server/client boundary rules, matcher templates, and production checks.
development
Use for Clerk frontend auth flows. PROACTIVELY activate for React, JavaScript, Vue, Nuxt, Astro, Expo, React Router, TanStack React Start, or SPA setup; ClerkProvider and publishable-key wiring; SignIn/SignUp/UserButton/UserProfile/OrganizationSwitcher; custom useUser/useAuth/useClerk/useSignIn/useSignUp/useSession/useOrganization flows; multi-session UX; cross-origin getToken() fetches; loading states, redirects, routing, CORS/cookies, or hydration bugs. Provides SDK selection, UI patterns, token-fetch templates, and frontend gotchas.
development
Use for Clerk dev/prod readiness, deployment, and multi-language implementation planning. PROACTIVELY activate for environment variables, pk_test/sk_test vs pk_live/sk_live, local dev, preview/staging/prod instances, domains/DNS, redirects, OAuth credentials, custom domains/proxy, authorizedParties, CSP, CORS/cookies, webhooks/tunnels, Vercel/Netlify/Cloudflare/API gateways, monitoring/troubleshooting, and backends in Node/Express/Fastify, Python/FastAPI/Django/Flask, Go, Ruby/Rails, Java/Spring, .NET, PHP/Laravel. Provides checklists, rollout plans, and language-portable patterns.