Skip to main content

OpenTryOn

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

Documentation PyPI Discord License

Current release: v0.0.8 — Clad body measurement (measure), FLUX 3 Image Klein and FLUX 3 Video, NVIDIA LipSync and TRELLIS (audio-to-video, generate-3d), Nemotron 3.5 Super VL, VideoJev, and Gemini Embedding 2; 163 models, 13 services.

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

What you get

Category Highlights
Virtual try-on FLUX 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 / edit Nano Banana family, FLUX.2, GPT Image (1.5 + 2.5 Flare/Sunburst), 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
Understand Claude Haiku 5.5, Kimi K2.6 / K2.7 Code / K3 (API), Kimi-VL & LLaVA-NeXT (local), Qwen3.8-Max (API) + Qwen3.8-27B (local), NVIDIA Nemotron Omni / Cosmos 3 Reasoner, Hy4 preview (TokenHub + local vLLM)
Video Veo 3.1, Sora (deprecated), Luma Ray 2 + Ray 3.2, Seedance 2.5, Kling 3.0 / Omni / Turbo, Grok Imagine Video 1.5, Gemini Omni 1.1 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 + Relight), Wan (API + 3.0 + local 2.2), Runway Gen-4.5, NVIDIA Cosmos 3 (API + local)
Other BEN2 background removal, garment/human preprocessing, fashion datasets, planner agent (registry invoke_model)

Four ways to use it

  1. CLI — opentryon <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. Python — from 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
Service Purpose Example models
vton Virtual try-on flux-vto, p-image-tryon, fashn-tryon-max, …
generate Text-to-image nano-banana-pro, flux2-pro, gpt-image-2.5, …
edit Image editing nano-banana-2, flux2-flex, gpt-image-2.5-sunburst, …
understand Image/video understanding kimi-k2.6, kimi-k3, kimi-vl, …
video-generate Text/image-to-video veo, sora, flux3-video, …
audio-to-video Lip-sync / dubbing nvidia-lipsync
generate-3d Image or text to a mesh trellis
bg-remove Background removal ben2
tts Text-to-speech eleven-v4, eleven-v4-turbo
decide Calibrated yes/no, choice, score decisions jev, d1-3b, d1-omni-600m
classify Try-on safety gating (fixed-label classifier) tryon-safety-classifier
embed Multimodal embeddings (.npz) gemini-embedding-2, embeddinggemma-2, …
measure ISO 8559-1 body measurements clad-body-photo, clad-body-questionnaire, clad-body-local

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

Topic Where
Install & config Getting Started
CLI CLI guide
MCP MCP server · mcp-server/README.md
TryOn Studio Setup and screens · tryon-studio
OpenAPI / Postman Swagger guide · openapi/ · postman/
Per-provider APIs API Reference
Local / GPU models Local Models
Agents Agents
Roadmap Roadmap · ROADMAP.md
Add a new model New model checklist
TryOnDiffusion Overview · 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

Metadata

Release files for opentryon 0.0.8

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for opentryon 0.0.8
File Size Uploaded Provenance
opentryon-0.0.8.tar.gz 398.2 kB Without provenance Details

Built distribution (wheel)

Table of built distributions (wheels) for opentryon 0.0.8
File Interpreter ABI Platform
opentryon-0.0.8-py3-none-any.whl Python 3 none any Details

Total release size: 905.0 kB

Release files / opentryon-0.0.8.tar.gz

Download URL opentryon-0.0.8.tar.gz
Size 398.2 kB
Tags Source
SHA-256 checksum
How to use checksums
d2a39a5cbf2081cc24df367f71c87a9dafaa10ea96c6d51586368630a7c61412
BLAKE2b-256 checksum
How to use checksums
2da16ed9f471bdf298f681475fc471c620a7f70f0cbdcda6c17e359c8cd5cb82
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.11.13

Release files / opentryon-0.0.8-py3-none-any.whl

Download URL opentryon-0.0.8-py3-none-any.whl
Size 506.8 kB
Tags Python 3
SHA-256 checksum
How to use checksums
710fa972de8d62fe799a79dcba617236b9f67d22553574a5255534a338aa85dc
BLAKE2b-256 checksum
How to use checksums
31c672cb0b9b1566411ff04075fb204c1407e0c75fd7e0de0091cf49939d2f4d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.11.13

Security for opentryon 0.0.8

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page