[build-system] requires = ["pdm-backend"] build-backend = "pdm.backend" [project] name = "cua-computer" version = "0.3.0" description = "Computer-Use Interface (CUI) framework powering Cua" readme = "README.md" authors = [ { name = "TryCua", email = "gh@trycua.com" } ] dependencies = [ "pillow>=10.0.0", "websocket-client>=1.8.0", "websockets>=12.0", "aiohttp>=3.9.0", "cua-core>=0.1.0,<0.2.0", "pydantic>=2.11.1" ] requires-python = ">=3.11" [project.optional-dependencies] lume = [ ] lumier = [ ] ui = [ "gradio>=5.23.3", "python-dotenv>=1.0.1", "datasets>=3.6.0", ] all = [ # Include all optional dependencies "gradio>=5.23.3", "python-dotenv>=1.0.1", "datasets>=3.6.0", ] [tool.pdm] distribution = true [tool.pdm.build] includes = ["computer/"] source-includes = ["tests/", "README.md", "LICENSE"] [tool.black] line-length = 100 target-version = ["py311"] [tool.ruff] line-length = 100 target-version = "py311" select = ["E", "F", "B", "I"] fix = true [tool.ruff.format] docstring-code-format = true [tool.mypy] strict = true python_version = "3.11" ignore_missing_imports = true disallow_untyped_defs = true check_untyped_defs = true warn_return_any = true show_error_codes = true warn_unused_ignores = false [tool.pytest.ini_options] asyncio_mode = "auto" testpaths = ["tests"] python_files = "test_*.py"