rf-detr Migration Check — Ultralytics YOLO ties

rf-detr migration check: flags Ultralytics YOLO (AGPL-3.0) ties in requirements.txt, pyproject.toml, environment.yml, Dockerfiles and Python code, with the Apache-2.0 RF-DETR line for each. Runs entirely in your browser — nothing is uploaded.

Same engine as the VS Code extension, byte for byte.

Get the full version $29

Scan every repo in the workspace and export a dated migration plan per repo, each Ultralytics tie mapped to its RF-DETR line; a team key adds a CI gate

One payment, one licence key for this tool. The key is shown right after payment.

Ultralytics' own pricing page: the Pro plan is $29 per seat a month and still AGPL-3.0; only the Enterprise plan, priced "Custom", includes the commercial Enterprise License.

Buy the full version — $29
Want the full version?
Enter your email and we send the download link.
ENDEJAESPT

Find a tool

· ReadyStack

Worked example

Real numbers from this tool, line by line.

Migrate from Ultralytics YOLO to RF-DETR: the six Dockerfile lines that keep a closed product on AGPL-3.0

Six Ultralytics YOLO ties turned up in a 12-line Dockerfile that a machine-learning engineer shipping a closed-source shelf-camera service checked before moving to RF-DETR: four errors and two warnings.

What Ultralytics says

The ultralytics package and its YOLO models are licensed AGPL-3.0. Ultralytics' licence page is direct: "An Enterprise License is required if you want to use Ultralytics YOLO without open-sourcing your entire project." Its list includes internal business tools, any commercial product, SaaS APIs that use YOLO behind the scenes, and edge devices, robots and cameras. It covers "the complete Ultralytics YOLO source code portfolio, including YOLO26, earlier YOLO versions".

There is no list price. The pricing page shows the Enterprise plan as "Custom". The Pro plan costs $29 per seat a month and is still AGPL-3.0, so it does not make a closed product compliant.

The six lines

LineUltralytics lineRF-DETR fixSeverity
2FROM ultralytics/ultralytics:8.3.40-cpuFROM python:3.12-slimerror
5pip install ultralytics==8.3.40pip install rfdetrerror
6git clone …/ultralytics/yolov5pip install rfdetr, drop the cloneerror
7ADD …/yolo11n.ptRFDETRMedium(), Apache-2.0 weightswarning
8yolo export … format=onnxRFDETRMedium().export()warning
9pip install yolov5==7.0.13pip install rfdetrerror

The four errors put Ultralytics code into the image: the base image, the ultralytics install, the cloned yolov5 repository and the yolov5 package. The two warnings are lines you rewrite once the dependency goes: the yolo11n.pt weights and the yolo export step, which calls the ultralytics command-line tool.

Why pip freeze is not enough

A dependency licence scanner reads installed packages. It sees ultralytics, but not the base image, the cloned folder, a torch.hub.load call that downloads the repository at runtime, or a weights file fetched with ADD. A chatbot rewrites the Dockerfile you paste, but rarely knows that RF-DETR is not one licence: Nano, Small, Medium and Large are Apache-2.0, while the XL and 2XL models and the rfdetr_plus extension are PML 1.0.

Checking every line at once

rf-detr Migration Check reads Dockerfiles, requirements.txt, pyproject.toml, environment.yml, setup files and Python code against 9 rules: the ultralytics package, the yolov5 package, ultralytics/* base images, cloned or git-installed Ultralytics repos, torch.hub.load of Ultralytics repos, ultralytics imports, YOLO weights files, the yolo command, and RF-DETR sizes under PML 1.0. Each finding names the line, the RF-DETR fix and the source. The fixed Dockerfile returns 0 findings.

The file itself changes the answer. A pyproject.toml that declares license = "AGPL-3.0-only" gets the same ultralytics line as an info finding, not an error, because the free licence allows it when the complete source is published. A detect.py already on RFDETRXLarge gets a warning pointing to RFDETRLarge.

What to do next

Start with the base image and the pip installs, since they decide what ships, then swap the imports and retrain on RFDETRMedium or RFDETRLarge.

The single-file check is free in VS Code and on the web page, with every rule and every fix. The paid version scans every repo in a workspace and exports a dated migration plan per repo; a team key adds a CI gate that fails a build adding new Ultralytics use.

15 seconds — what it actually does

Questions people ask

What does rf-detr Migration Check do?

rf-detr Migration Check reads Dockerfiles, requirements.txt, pyproject.toml, environment.yml, setup files and Python code, and flags every line that ties a project to Ultralytics YOLO: the ultralytics and yolov5 packages, ultralytics/* base images, cloned Ultralytics repos, torch.hub.load calls, imports, the yolo command and YOLO weights files. Each finding shows the RF-DETR replacement line and the source page.

Who is rf-detr Migration Check for?

It is for machine-learning engineers and CTOs who ship closed-source computer-vision products, internal tools, SaaS back ends or edge cameras on Ultralytics YOLO. Ultralytics states that an Enterprise License is required to use Ultralytics YOLO without open-sourcing the entire project. It also suits teams already on RF-DETR who need to confirm they use only the Apache-2.0 model sizes.

Why not use pip freeze, a licence scanner or a chatbot?

pip freeze and dependency licence scanners list the ultralytics package, but not the ultralytics/* Docker base image, a git-cloned yolov5 folder, a torch.hub.load call or a downloaded yolo11n.pt weights file. A chatbot rewrites the file you paste, yet it rarely knows that RF-DETR XL and 2XL models are PML 1.0 rather than Apache-2.0.

What is free and what does the paid version add?

The free version runs all 9 rules on the open file in VS Code and on the web page, with the RF-DETR fix on every finding and no cap. The paid version, $29 once with one licence key per person or team seat, scans every repo in the workspace and exports a dated migration plan per repo; a team key adds a CI gate.

What does staying on Ultralytics YOLO cost a closed-source product?

Ultralytics publishes no list price for its Enterprise License: the pricing page shows the Enterprise plan as Custom. Its Pro plan costs $29 per seat a month and is still AGPL-3.0, so it does not cover a closed product. RF-DETR Nano, Small, Medium and Large are Apache-2.0. The single-file check here is free.

Ask about this tool

One question, answered by the person who built it. Your email only if you want the answer sent.