content: [tool.poetry]
  name = "openadapt"
  version = "0.46.0"
  description = "Generative Process Automation"
  authors = [
      'Richard Abrich <richard@openadapt.ai>',
  ]
  classifiers = [
      "Programming Language :: Python :: 3",
      "Operating System :: OS Independent",
  ]
  
  readme = "README.md"
  
  repository = "https://github.com/OpenAdaptAI/OpenAdapt"
  homepage = "https://openadapt.ai/"
  
  [tool.poetry.urls]
  "Bug Tracker" = "https://github.com/OpenAdaptAI/OpenAdapt/issues"
  
  [tool.poetry.dependencies]
  python = ">=3.10,<3.12"
  alembic = "1.8.1"
  black = "^24.8.0"
  pygetwindow = { version = "<0.0.5", markers = "sys_platform == 'win32'" }
  pywin32 = { version = "306", markers = "sys_platform == 'win32'" }
  xcffib = { version = "1.5.0", markers = "sys_platform == 'linux'" }
  ascii-magic = "2.3.0"
  bokeh = "2.4.3"
  clipboard = "0.0.4"
  deepdiff = { extras = ["optimize"], version = "^6.3.0" }
  ascii_magic = "2.3.0"
  dictalchemy3 = "1.0.0"
  fire = "0.4.0"
  ipdb = "0.13.11"
  loguru = "0.6.0"
  matplotlib = "3.6.2"
  mss = "6.1.0"
  openai = "^1.51.0"
  pandas = "2.0.0"
  presidio_analyzer = "2.2.32"
  presidio_anonymizer = "2.2.32"
  pytesseract = "0.3.7"
  pytest = "7.1.3"
  rapidocr-onnxruntime = "1.2.3"
  scikit-learn = "1.2.2"
  scipy = "^1.11.0"
  torch = "^2.0.0"
  tqdm = "4.64.0"
  transformers = "4.29.2"
  python-dotenv = "1.0.0"
  pyinstaller = "6.11.0"
  setuptools-lint = "^0.6.0"
  sphinx = "7.0.1"
  spacy = "^3.5.3"
  fuzzywuzzy = "0.18.0"
  segment-anything = "^1.0"
  torchvision = "^0.15.2"
  sumy = "0.11.0"
  nltk = "3.8.1"
  pillow = "^10.4.0"
  pywinauto = { version = "^0.6.8", markers = "sys_platform == 'win32'" }
  flake8 = "^6.0.0"
  flake8-docstrings = "^1.7.0"
  moviepy = "1.0.3"
  python-levenshtein = "^0.21.1"
  magic-wormhole = "0.12.0"
  pyside6 = "^6.5.1.1"
  flake8-annotations = "^3.0.1"
  pre-commit = "^3.3.3"
  pympler = "^1.0.1"
  psutil = "^5.9.5"
  sentry-sdk = "^1.28.1"
  gitpython = "^3.1.32"
  pyobjc-framework-avfoundation = { version = "^9.2", markers = "sys_platform == 'darwin'" }
  fastapi = "^0.111.1"
  screen-recorder-sdk = { version = "^1.3.0", markers = "sys_platform == 'win32'" }
  pyaudio = { version = "^0.2.13", markers = "sys_platform == 'win32'" }
  oa-atomacos = { version = "3.2.0", markers = "sys_platform == 'darwin'" }
  presidio-image-redactor = "^0.0.48"
  pywebview = "^4.2.2"
  click = "^8.1.6"
  spacy-transformers = "^1.2.5"
  boto3 = "^1.28.30"
  botocore = "^1.31.30"
  easyocr = "^1.7.0"
  spacy-curated-transformers = "^0.2.0"
  anthropic = "0.42.0"
  orjson = "^3.9.15"
  replicate = "^0.25.0"
  gradio-client = "0.15.0"
  google-generativeai = "^0.5.0"
  uvicorn = {version = "^0.30.0", extras = ["standard"]}
  ultralytics = "^8.1.47"
  imagehash = "^4.3.1"
  pydantic-settings = "^2.2.1"
  pyqt-toast-notification = "^1.1.0"
  pudb = "^2024.1"
  sounddevice = "^0.4.6"
  soundfile = "^0.12.1"
  posthog = "^3.5.0"
  
  wheel = "^0.43.0"
  cython = "^3.0.10"
  av = "^12.3.0"
  beautifulsoup4 = "^4.12.3"
  dtaidistance = "^2.3.12"
  tokencost = "^0.1.12"
  numba = "^0.60.0"
  llvmlite = "^0.43.0"
  ell-ai = "^0.0.14"
  pynput = "^1.7.7"
  multiprocessing-utils = "^0.4"
  openai-whisper = "^20240930"
  [tool.pytest.ini_options]
  filterwarnings = [
      # suppress warnings starting from "setuptools>=67.3"
      "ignore:Deprecated call to `pkg_resources\\.declare_namespace\\('.*'\\):DeprecationWarning",
      "ignore:pkg_resources is deprecated as an API",
  ]
  
  [build-system]
  requires = ["poetry-core"]
  build-backend = "poetry.core.masonry.api"
  
  [tool.isort]
  profile = "black"
  group_by_package = true
  from_first = true
  
  [tool.poetry.scripts]
  visualize = "openadapt.visualize:main"
  record = "openadapt.record:start"
  replay = "openadapt.replay:start"
  app = "openadapt.app.tray:_run"
  reset = "openadapt.scripts.reset_db:reset_db"
  capture = "openadapt.capture:test"
  postinstall = "scripts.postinstall:main"
  
  [tool.black]
  line-length = 88
  extend-exclude = '''
  /(
      venv
    | .venv
    | .cache
    | alembic
    | contrib
    | __pycache__
  )/
  '''
  
  [tool.semantic_release]
  version_variable = ["openadapt/__init__.py:__version__"]
  version_toml = ["pyproject.toml:tool.poetry.version"]
  major_on_zero = false
  branch = "main"
  commit_subject = "chore(release): v{version}"
  commit_version_number = true
  upload_to_PyPI = false
  upload_to_release = true
  upload_to_repository = false
  repository_url = "https://upload.pypi.org/legacy/"
  build_command = "pip install poetry && poetry env use python3.10 && poetry build"
  