pyproject.toml 1.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071
  1. [project]
  2. name = "helloagents-deep-researcher"
  3. version = "0.0.1"
  4. description = "Fully local web research and summarization assistant powered by HelloAgents."
  5. authors = [
  6. { name = "Lance Martin" }
  7. ]
  8. readme = "README.md"
  9. license = { text = "MIT" }
  10. requires-python = ">=3.10"
  11. dependencies = [
  12. "fastapi>=0.115.0",
  13. "hello-agents>=0.2.4",
  14. "tavily-python>=0.5.0",
  15. "httpx>=0.28.1",
  16. "markdownify>=0.11.0",
  17. "python-dotenv==1.0.1",
  18. "requests>=2.31.0",
  19. "langsmith>=0.1.38",
  20. "openai>=1.12.0",
  21. "uvicorn[standard]>=0.32.0",
  22. "huggingface-hub>=0.35.3",
  23. "langchain-community>=0.4",
  24. "ddgs>=9.6.1",
  25. "loguru>=0.7.3",
  26. ]
  27. [project.optional-dependencies]
  28. dev = ["mypy>=1.11.1", "ruff>=0.6.1"]
  29. [build-system]
  30. requires = ["setuptools>=73.0.0", "wheel"]
  31. build-backend = "setuptools.build_meta"
  32. [tool.setuptools]
  33. packages = ["deep_researcher"]
  34. [tool.setuptools.package-dir]
  35. "deep_researcher" = "src/deep_researcher"
  36. [tool.setuptools.package-data]
  37. "*" = ["py.typed"]
  38. [tool.ruff]
  39. lint.select = [
  40. "E", # pycodestyle
  41. "F", # pyflakes
  42. "I", # isort
  43. "D", # pydocstyle
  44. "D401", # First line should be in imperative mood
  45. "T201",
  46. "UP",
  47. ]
  48. lint.ignore = [
  49. "UP006",
  50. "UP007",
  51. "UP035",
  52. "D417",
  53. "E501",
  54. ]
  55. [tool.ruff.lint.per-file-ignores]
  56. "tests/*" = ["D", "UP"]
  57. [tool.ruff.lint.pydocstyle]
  58. convention = "google"
  59. [dependency-groups]
  60. dev = [
  61. "ruff>=0.12.7",
  62. ]