tryonlabs/opentryon

Open-source APIs, SDKs, and models for building virtual try-on and fashion AI applications. Generate models, edit garments, create photoshoots, and build personalized fashion experiences.

533

stars

251

commits

Jupyter Notebook

primary language

Sep 9, 2026

updated

tryonlabs.github.io/opentryon/
fashion-ai
open-source
toolkit
virtual-try-on

README

OpenTryOn

Documentation PyPI Discord License

Open-source AI toolkit for fashion technology: virtual try-on, image/video generation & editing, multimodal understanding, background removal, preprocessing, datasets, and TryOnDiffusion research code.

Current release: v0.0.4 — LTX-2.5, Hailuo 2.3, Wan dual-path, Runway Gen-4.5, Qwen3.8 understand (API + local), plus the v0.0.3 CLI/MCP media surface.

📚 Full documentation: https://tryonlabs.github.io/opentryon/
API tutorials, configuration, examples, and agent guides live there — not in this README.

What you get

CategoryHighlights
Virtual try-onFLUX VTO, Google Vertex VTO, OutfitAnyone-Plus, Photoroom (try-on + virtual model), Nova Canvas, Kling AI, Segmind, Pruna P-Image-Try-On, FASHN, Nano Banana 2 Lite, Qwen-Image (API + local), Leffa / CatVTON (local weights), Muse Image (composition)
Generate / editNano Banana family, FLUX.2, GPT Image, Luma Photon, Seedream 5.0 Pro, Ideogram 4.0, Grok Imagine Image, Pruna P-Image / P-Image-Ideogram / Edit / Upscale, Qwen-Image (API + local), Muse Image; local FLUX.2-dev Turbo
UnderstandKimi K2.6 / K2.7 Code / K3 (API), Kimi-VL & LLaVA-NeXT (local), Qwen3.8-Max (API) + Qwen3.8-27B (local), Hy4 preview (TokenHub + local vLLM)
VideoVeo, Sora, Luma Ray 2 + Ray 3.2, Seedance 2.5, Kling 3.0 / Omni / Turbo, Grok Imagine Video 1.5, Gemini Omni Flash, Pruna P-Video / Replace / Avatar / Animate, LTX-2.5 (API + local), Hailuo 2.3, MiniMax H3 / H3 Max (API + local H3 + Fal H3 Max), Wan (API + local 2.2), Runway Gen-4.5
OtherBEN2 background removal, garment/human preprocessing, fashion datasets, planner agent (registry invoke_model)

Four ways to use it

  1. CLIopentryon <service> --model <model> [params...]
  2. MCP server — expose every registry model as tools for Claude, Cursor, or TryOn Studio. Guide: MCP Server · mcp-server/README.md
  3. TryOn Studio — Next.js UI (Agent, Connect, Image, VTON, Understand, Video, BG Remove) over MCP HTTP. Setup: TryOn Studio
  4. Pythonfrom tryon.api import ... (and tryon.cli.runner.invoke_model)

Install

git clone https://github.com/tryonlabs/opentryon.git
cd opentryon
conda env create -f environment.yml
conda activate opentryon
pip install -e .
# Optional local/GPU models: pip install -e ".[local]"

Or with pip: pip install -r requirements.txt && pip install -e .

cp env.template .env   # add the API keys you need

Details: Installation · Configuration

Quick start

# Dry-run (no API call) — verifies CLI + registry wiring
opentryon vton --model flux-vto \
  --person-image data/model-1.jpg --garment-image data/garment.png --dry-run

# Real call (needs BFL_API_KEY in .env)
opentryon vton --model flux-vto \
  --person-image data/model-1.jpg --garment-image data/garment.png \
  --garment-description "olive green bomber jacket"

# Multimodal understanding (needs MOONSHOT_API_KEY)
opentryon understand --model kimi-k3 --image data/model-1.jpg \
  --prompt "Describe this outfit for a product listing." --reasoning-effort high
from tryon.api import KimiUnderstandAdapter

adapter = KimiUnderstandAdapter(model="kimi-k3")
result = adapter.understand_image(
    "data/model-1.jpg",
    prompt="Describe this outfit.",
    reasoning_effort="high",
)
print(result["text"])

More examples: Quickstart · CLI · API Reference

CLI services

opentryon <service> --model <model> [params...]
opentryon understand --help                    # list models
opentryon understand --model kimi-k3 --help    # list that model's flags
ServicePurposeExample models
vtonVirtual try-onflux-vto, p-image-tryon, fashn-tryon-max, …
generateText-to-imagenano-banana-pro, flux2-pro, gpt-image, …
editImage editingnano-banana-2, flux2-flex, gpt-image, …
understandImage/video understandingkimi-k2.6, kimi-k3, kimi-vl, …
video-generateText/image-to-videoveo, sora, gemini-omni, …
bg-removeBackground removalben2

Models marked local need pip install opentryon[local]. Full table and flags: Unified CLI.

MCP server

cd mcp-server
pip install -r requirements.txt
python server.py                                    # stdio (Claude Desktop / Cursor)
python server.py --transport http --host 127.0.0.1 --port 8000   # TryOn Studio

Tools are generated from tryon/cli/registry.py — the same registry as the CLI. Guide: MCP Server · full tool table: mcp-server/README.md. Web UI: TryOn Studio.

Demos & notebooks

This package ships Gradio demos and Jupyter notebooks only:

python run_demo.py --name extract_garment   # also: model_swap, outfit_generator

Notebooks: notebooks/. Web UI: TryOn Studio.

Layout

opentryon/
├── tryon/           # Package: api/, cli/, models/, agents/, datasets/, preprocessing/
├── tryondiffusion/  # Research diffusion training / inference
├── mcp-server/      # FastMCP server (registry → tools)
├── openapi/         # OpenAPI / Swagger snapshot (upstream media APIs)
├── postman/         # Postman collection for media providers
├── demo/            # Gradio demos
├── notebooks/       # Jupyter examples
├── docs/            # Docusaurus documentation site
├── tests/           # CLI / adapter smoke checks
└── env.template     # API key template

Documentation map

TopicWhere
Install & configGetting Started
CLICLI guide
MCPMCP server · mcp-server/README.md
TryOn StudioSetup and screens · tryon-studio
OpenAPI / PostmanSwagger guide · openapi/ · postman/
Per-provider APIsAPI Reference
Local / GPU modelsLocal Models
AgentsAgents
RoadmapRoadmap · ROADMAP.md
Add a new modelNew model checklist
TryOnDiffusionOverview · paper

When contributing docs or APIs: put long tutorials in docs/, not this README. Keep README as the project front door only.

Contributing

See CONTRIBUTING.md. Open an issue before large changes; prefer PRs that update the registry, tests, and docs together.

License

Creative Commons BY-NC 4.0. Non-commercial use with attribution to this repository; indicate any changes you make.

Star History

Star History Chart


Made with ❤️ by TryOn Labs · Discord

Contributors

kailashahirwar

171 commits

tanayag

53 commits

Naveen56001

17 commits

rsamf

4 commits

tryonlabs/opentryon

Open-source APIs, SDKs, and models for building virtual try-on and fashion AI applications. Generate models, edit garments, create photoshoots, and build personalized fashion experiences.

533

stars

251

commits

Jupyter Notebook

primary language

Sep 9, 2026

updated

tryonlabs.github.io/opentryon/
fashion-ai
open-source
toolkit
virtual-try-on

README

OpenTryOn

Documentation PyPI Discord License

Open-source AI toolkit for fashion technology: virtual try-on, image/video generation & editing, multimodal understanding, background removal, preprocessing, datasets, and TryOnDiffusion research code.

Current release: v0.0.4 — LTX-2.5, Hailuo 2.3, Wan dual-path, Runway Gen-4.5, Qwen3.8 understand (API + local), plus the v0.0.3 CLI/MCP media surface.

📚 Full documentation: https://tryonlabs.github.io/opentryon/
API tutorials, configuration, examples, and agent guides live there — not in this README.

What you get

CategoryHighlights
Virtual try-onFLUX VTO, Google Vertex VTO, OutfitAnyone-Plus, Photoroom (try-on + virtual model), Nova Canvas, Kling AI, Segmind, Pruna P-Image-Try-On, FASHN, Nano Banana 2 Lite, Qwen-Image (API + local), Leffa / CatVTON (local weights), Muse Image (composition)
Generate / editNano Banana family, FLUX.2, GPT Image, Luma Photon, Seedream 5.0 Pro, Ideogram 4.0, Grok Imagine Image, Pruna P-Image / P-Image-Ideogram / Edit / Upscale, Qwen-Image (API + local), Muse Image; local FLUX.2-dev Turbo
UnderstandKimi K2.6 / K2.7 Code / K3 (API), Kimi-VL & LLaVA-NeXT (local), Qwen3.8-Max (API) + Qwen3.8-27B (local), Hy4 preview (TokenHub + local vLLM)
VideoVeo, Sora, Luma Ray 2 + Ray 3.2, Seedance 2.5, Kling 3.0 / Omni / Turbo, Grok Imagine Video 1.5, Gemini Omni Flash, Pruna P-Video / Replace / Avatar / Animate, LTX-2.5 (API + local), Hailuo 2.3, MiniMax H3 / H3 Max (API + local H3 + Fal H3 Max), Wan (API + local 2.2), Runway Gen-4.5
OtherBEN2 background removal, garment/human preprocessing, fashion datasets, planner agent (registry invoke_model)

Four ways to use it

  1. CLIopentryon <service> --model <model> [params...]
  2. MCP server — expose every registry model as tools for Claude, Cursor, or TryOn Studio. Guide: MCP Server · mcp-server/README.md
  3. TryOn Studio — Next.js UI (Agent, Connect, Image, VTON, Understand, Video, BG Remove) over MCP HTTP. Setup: TryOn Studio
  4. Pythonfrom tryon.api import ... (and tryon.cli.runner.invoke_model)

Install

git clone https://github.com/tryonlabs/opentryon.git
cd opentryon
conda env create -f environment.yml
conda activate opentryon
pip install -e .
# Optional local/GPU models: pip install -e ".[local]"

Or with pip: pip install -r requirements.txt && pip install -e .

cp env.template .env   # add the API keys you need

Details: Installation · Configuration

Quick start

# Dry-run (no API call) — verifies CLI + registry wiring
opentryon vton --model flux-vto \
  --person-image data/model-1.jpg --garment-image data/garment.png --dry-run

# Real call (needs BFL_API_KEY in .env)
opentryon vton --model flux-vto \
  --person-image data/model-1.jpg --garment-image data/garment.png \
  --garment-description "olive green bomber jacket"

# Multimodal understanding (needs MOONSHOT_API_KEY)
opentryon understand --model kimi-k3 --image data/model-1.jpg \
  --prompt "Describe this outfit for a product listing." --reasoning-effort high
from tryon.api import KimiUnderstandAdapter

adapter = KimiUnderstandAdapter(model="kimi-k3")
result = adapter.understand_image(
    "data/model-1.jpg",
    prompt="Describe this outfit.",
    reasoning_effort="high",
)
print(result["text"])

More examples: Quickstart · CLI · API Reference

CLI services

opentryon <service> --model <model> [params...]
opentryon understand --help                    # list models
opentryon understand --model kimi-k3 --help    # list that model's flags
ServicePurposeExample models
vtonVirtual try-onflux-vto, p-image-tryon, fashn-tryon-max, …
generateText-to-imagenano-banana-pro, flux2-pro, gpt-image, …
editImage editingnano-banana-2, flux2-flex, gpt-image, …
understandImage/video understandingkimi-k2.6, kimi-k3, kimi-vl, …
video-generateText/image-to-videoveo, sora, gemini-omni, …
bg-removeBackground removalben2

Models marked local need pip install opentryon[local]. Full table and flags: Unified CLI.

MCP server

cd mcp-server
pip install -r requirements.txt
python server.py                                    # stdio (Claude Desktop / Cursor)
python server.py --transport http --host 127.0.0.1 --port 8000   # TryOn Studio

Tools are generated from tryon/cli/registry.py — the same registry as the CLI. Guide: MCP Server · full tool table: mcp-server/README.md. Web UI: TryOn Studio.

Demos & notebooks

This package ships Gradio demos and Jupyter notebooks only:

python run_demo.py --name extract_garment   # also: model_swap, outfit_generator

Notebooks: notebooks/. Web UI: TryOn Studio.

Layout

opentryon/
├── tryon/           # Package: api/, cli/, models/, agents/, datasets/, preprocessing/
├── tryondiffusion/  # Research diffusion training / inference
├── mcp-server/      # FastMCP server (registry → tools)
├── openapi/         # OpenAPI / Swagger snapshot (upstream media APIs)
├── postman/         # Postman collection for media providers
├── demo/            # Gradio demos
├── notebooks/       # Jupyter examples
├── docs/            # Docusaurus documentation site
├── tests/           # CLI / adapter smoke checks
└── env.template     # API key template

Documentation map

TopicWhere
Install & configGetting Started
CLICLI guide
MCPMCP server · mcp-server/README.md
TryOn StudioSetup and screens · tryon-studio
OpenAPI / PostmanSwagger guide · openapi/ · postman/
Per-provider APIsAPI Reference
Local / GPU modelsLocal Models
AgentsAgents
RoadmapRoadmap · ROADMAP.md
Add a new modelNew model checklist
TryOnDiffusionOverview · paper

When contributing docs or APIs: put long tutorials in docs/, not this README. Keep README as the project front door only.

Contributing

See CONTRIBUTING.md. Open an issue before large changes; prefer PRs that update the registry, tests, and docs together.

License

Creative Commons BY-NC 4.0. Non-commercial use with attribution to this repository; indicate any changes you make.

Star History

Star History Chart


Made with ❤️ by TryOn Labs · Discord

Contributors

kailashahirwar

171 commits

tanayag

53 commits

Naveen56001

17 commits

rsamf

4 commits

Languages

Jupyter Notebook

55.9%

Python

44.0%