uv 가 두 CLI surface 가짐. uv pip ... 가 drop-in pip 대체 — 모든 pip flag 작동. uv add / uv run / uv sync 가 모던 uv-native 워크플로우 — 새 프로젝트에 쓸 거.
uv init <name> 가 새 프로젝트 만듦 (pyproject.toml + .python-version + 초기 src 레이아웃). uv add <pkg> 가 dep 추가 — 필요하면 자동 venv 생성, 패키지 install, uv.lock 업데이트. uv add --dev <pkg> 가 dev dep. uv remove <pkg> 가 제거 (pip 와 다르게 깨끗하게 orphaned transitive deps 도 제거).
uv run <cmd> 가 프로젝트 venv 에서 명령 실행 — 자동으로 venv 활성화 후 실행. source .venv/bin/activate 더 이상 안 함. uv run pytest, uv run python main.py, uv run flask --app server run 다 그냥 작동.
uv python install <version> 이 관리되는 Python install — pyenv 대체. uv python pin <version> 이 이 프로젝트를 그 버전에 핀 (.python-version 작성). uv sync 가 uv.lock 에서 프로젝트의 정확한 상태 재현.
uvx <tool> 가 uv 의 npx / pipx run — install 없이 도구 실행. uvx ruff check ., uvx black . — commit 없이 도구 시도. uv tool install <tool> 이 도구를 글로벌 install (pipx install 대체).