Skip to content
Search docs

Check and launch Runtime

After preparation, save the pre-start check and launch a localhost-only Runtime. Doctor readiness and full P0 acceptance are different facts.

Run from the repository root. Start only after Doctor exits 0. --no-sync prevents the check from downloading dependencies or changing the environment.

Terminal window
param([ValidateRange(1, 65535)][int]$Port = 8188)
# Run from the repository root before starting Runtime. Saves only a successful check.
$runtimeReadiness = uv run --project runtime/comfyui --no-sync python runtime/comfyui/manage.py doctor --json --port $Port
if ($LASTEXITCODE -ne 0) { throw "Doctor failed. An existing successful receipt was not overwritten." }
New-Item -ItemType Directory -Force -Path data | Out-Null
$runtimeReadiness | Out-File -Encoding utf8 data/runtime-readiness.json

Complete example: runtime/comfyui/examples/save-readiness.ps1 ↗

Terminal window
param([ValidateRange(1, 65535)][int]$Port = 8188)
# Run from the repository root. Keep this terminal open; press Ctrl+C to stop.
uv run --project runtime/comfyui --no-sync python runtime/comfyui/manage.py start --port $Port
if ($LASTEXITCODE -ne 0) { throw "Runtime stopped with an error. Inspect the startup checks and service log." }

Complete example: runtime/comfyui/examples/start.ps1 ↗

By default, the service listens only at http://127.0.0.1:8188 and does not open Canvas. A selected custom port still listens on localhost only. Keep this terminal running. Press Ctrl+C to stop it.

Doctor checks a free port. After launch, the transcription tool reuses the saved real successful receipt. Do not fabricate readiness on an occupied port.

Doctor checks actual BF16 CUDA work, the target device, pinned versions, node and inference imports, resampling, full model SHA256, disk, and port.

READY means inference prerequisites are available

Doctor does not load all weights or establish music quality. One readiness check does not change its p0_passed=false.

ResultRecovery action
Model missing / downloadingRun download-models. Retained .part bytes resume.
SHA256 or size mismatchPreserve or move the corrupt file, then download again. The command does not overwrite invalid files.
Port occupiedIdentify its owner. Preserve another owner's service. Select the same free -Port for checks, saving the receipt, launch, and transcription.
Probe timeout or nonzero exitRead last_stage, stdout_tail, and stderr_tail. Resolve that stage, then retry.

All four complete examples accept -Port, from 1 to 65535, with default 8188. If you select free port 8189, run & ./runtime/comfyui/examples/doctor.ps1 -Port 8189, & ./runtime/comfyui/examples/save-readiness.ps1 -Port 8189, and & ./runtime/comfyui/examples/start.ps1 -Port 8189 from the repository root. Keep the launch terminal running. In a second terminal, run & ./runtime/comfyui/examples/transcribe.ps1 -Port 8189. Transcription connects to http://127.0.0.1:8189. Omitting the parameter at any step selects default port 8188.

Return to preparation, or after a successful launch run the first transcription.

Source version: 1ce3268Page source: docs/learn/doctor.en.md