content: [project]
  name = "miroflow-agent"
  version = "0.1.0"
  description = "Add your description here"
  readme = "README.md"
  requires-python = ">=3.12"
  dependencies = [
      "miroflow-tools>=0.1.0",
      "huggingface-hub>=0.28.0",
      "requests>=2.32.3",
      "rich>=13.9.4",
      "jinja2>=3.1.4",
      "pillow>=11.0.0",
      "markdownify>=0.14.1",
      "duckduckgo-search>=6.3.7",
      "python-dotenv",
      "pdfminer-six",
      "python-pptx",
      "puremagic",
      "pydub",
      "SpeechRecognition",
      "youtube_transcript_api",
      "mcp",
      "fastmcp",
      "anthropic",
      "e2b-code-interpreter>=1.2.1",
      "jsonlines>=4.0.0",
      "mammoth>=1.9.0",
      "numpy>=2.2.5",
      "ipdb>=0.13.13",
      "datasets>=3.5.0",
      "openpyxl>=3.1.5",
      "markitdown-mcp>=0.0.1a3",
      "markitdown>=0.1.1",
      "regex>=2024.11.6",
      "openai>=1.78.1",
      "tenacity>=9.1.2",
      "transformers>=4.51.3",
      "omegaconf>=2.3.0",
      "wikipedia",
      "mutagen",
      "hydra-core",
      "google-genai",
      "tiktoken>=0.9.0",
      "aiohttp",
      "colorama>=0.4.6",
      "json-repair>=0.49.0",
      "tencentcloud-sdk-python>=3.0.1451"
  ]
  
  [build-system]
  requires = ["hatchling"]
  build-backend = "hatchling.build"
  
  [tool.hatch.build.targets.wheel]
  packages = ["src"]
  
  
  [tool.uv.sources]
  miroflow-tools = { path = "../../libs/miroflow-tools", editable = true }
  
  [dependency-groups]
  dev = [
      "inline-snapshot>=0.23.2",
      "pyright>=1.1.403",
      "pytest>=8.4.1",
      "pytest-asyncio>=1.0.0",
      "pytest-cov>=6.2.1",
      "pytest-html>=4.1.1",
      "pytest-xdist>=3.7.0",
      "ty>=0.0.1a14",
  ]
  
  [tool.pytest.ini_options]
  # see https://docs.pytest.org/en/stable/reference/customize.html#pyproject-toml
  minversion = "8.3.5"
  testpaths = ["tests"]
  # make warning go away
  # https://github.com/pytest-dev/pytest-asyncio/issues/924#issuecomment-2321921915
  asyncio_default_fixture_loop_scope = "function"
  addopts = [
      # summary for failed AND passed tests
      "-rA",
      # only show stderr for test. stdlog can contain sensitive information
      "--show-capture=stderr",
      # use `pytest-xdist` to run tests in parallel
      "-n=auto",
      # use `pytest-html` to generate test report in html format
      "--html=report.html",
      "--self-contained-html",
      # use `pytest-testmon` to run tests on changed files only
      # "--testmon",
      # use `pytest-cov` to generate test coverage report
      "--cov=miroflow_agent",
      "--cov-report=html",
  ]
  