82 lines
1.6 KiB
TOML
82 lines
1.6 KiB
TOML
[project]
|
|
name = "framework"
|
|
version = "0.7.1"
|
|
description = "Goal-driven agent runtime with Builder-friendly observability"
|
|
readme = "README.md"
|
|
requires-python = ">=3.11"
|
|
dependencies = [
|
|
"pydantic>=2.0",
|
|
"anthropic>=0.40.0",
|
|
"httpx>=0.27.0",
|
|
"litellm==1.83.4",
|
|
"mcp>=1.0.0",
|
|
"fastmcp>=2.0.0",
|
|
"croniter>=1.4.0",
|
|
"tools",
|
|
]
|
|
|
|
[project.optional-dependencies]
|
|
webhook = ["aiohttp>=3.9.0"]
|
|
server = ["aiohttp>=3.9.0"]
|
|
testing = [
|
|
"pytest>=8.0",
|
|
"pytest-asyncio>=0.23",
|
|
"pytest-xdist>=3.0",
|
|
]
|
|
|
|
[project.scripts]
|
|
hive = "framework.cli:main"
|
|
|
|
[tool.uv.sources]
|
|
tools = { workspace = true }
|
|
|
|
[build-system]
|
|
requires = ["hatchling"]
|
|
build-backend = "hatchling.build"
|
|
|
|
[tool.hatch.build.targets.wheel]
|
|
packages = ["framework"]
|
|
|
|
[tool.ruff]
|
|
target-version = "py311"
|
|
line-length = 120
|
|
|
|
lint.select = [
|
|
"B", # bugbear errors
|
|
"C4", # flake8-comprehensions errors
|
|
"E", # pycodestyle errors
|
|
"F", # pyflakes errors
|
|
"I", # import sorting
|
|
"Q", # flake8-quotes errors
|
|
"UP", # py-upgrade
|
|
"W", # pycodestyle warnings
|
|
]
|
|
|
|
lint.per-file-ignores."demos/*" = ["E501"]
|
|
lint.isort.combine-as-imports = true
|
|
lint.isort.known-first-party = ["framework"]
|
|
lint.isort.section-order = [
|
|
"future",
|
|
"standard-library",
|
|
"third-party",
|
|
"first-party",
|
|
"local-folder",
|
|
]
|
|
[tool.pytest.ini_options]
|
|
addopts = "-m 'not live'"
|
|
markers = [
|
|
"live: Tests that call real external APIs (require credentials, never run in CI)",
|
|
]
|
|
filterwarnings = [
|
|
"ignore::DeprecationWarning:litellm.*"
|
|
]
|
|
|
|
[dependency-groups]
|
|
dev = [
|
|
"ty>=0.0.13",
|
|
"ruff>=0.14.14",
|
|
"pytest>=8.0",
|
|
"pytest-asyncio>=0.23",
|
|
"pytest-xdist>=3.0",
|
|
]
|