content: [build-system]
  build-backend = "pdm.backend"
  requires = ["pdm-backend"]
  
  [project]
  authors = [{ name = "TryCua", email = "gh@trycua.com" }]
  dependencies = [
      "openai<1.100.0",
      "anthropic>=0.67.0",
  ]
  description = "CUA (Computer Use Agent) mono-repo"
  license = { text = "MIT" }
  name = "cua-workspace"
  readme = "README.md"
  requires-python = "<3.14,>=3.12"
  version = "0.1.0"
  
  [project.urls]
  repository = "https://github.com/trycua/cua"
  
  [dependency-groups]
  dev = []
  examples = []
  
  [tool.pdm]
  distribution = false
  
  [tool.pdm.dev-dependencies]
  dev = [
      "-e core @ file:///${PROJECT_ROOT}/libs/python/core",
      "-e agent @ file:///${PROJECT_ROOT}/libs/python/agent",
      "-e computer @ file:///${PROJECT_ROOT}/libs/python/computer",
      "-e computer-server @ file:///${PROJECT_ROOT}/libs/python/computer-server",
      "-e cua-som @ file:///${PROJECT_ROOT}/libs/python/som",
      "-e mcp-server @ file:///${PROJECT_ROOT}/libs/python/mcp-server",
      "-e pylume @ file:///${PROJECT_ROOT}/libs/python/pylume",
      "black>=23.0.0",
      "ipykernel>=6.29.5",
      "jedi>=0.19.2",
      "jupyter>=1.0.0",
      "mypy>=1.10.0",
      "ruff>=0.9.2",
      "types-requests>=2.31.0",
      "hud-python[agent]==0.4.52"
  ]
  docs = ["mkdocs-material>=9.2.0", "mkdocs>=1.5.0"]
  test = [
      "aioresponses>=0.7.4",
      "pytest-asyncio>=0.21.1",
      "pytest-cov>=4.1.0",
      "pytest-mock>=3.10.0",
      "pytest-xdist>=3.6.1",
      "pytest>=8.0.0",
  ]
  
  [tool.pdm.resolution]
  respect-source-order = true
  
  [tool.black]
  line-length = 100
  target-version = ["py311"]
  
  [tool.ruff]
  fix = true
  line-length = 100
  select = ["B", "E", "F", "I"]
  target-version = "py311"
  
  [tool.ruff.format]
  docstring-code-format = true
  
  [tool.mypy]
  check_untyped_defs = true
  disallow_untyped_defs = true
  ignore_missing_imports = true
  python_version = "3.11"
  show_error_codes = true
  strict = true
  warn_return_any = true
  warn_unused_ignores = false
  
  [tool.pytest.ini_options]
  asyncio_mode = "auto"
  python_files = "test_*.py"
  testpaths = ["libs/*/tests"]
  