open-swe/apps/agent/pyproject.toml

68 lines
1.5 KiB
TOML
Raw Normal View History

[project]
name = "open-swe-agent"
version = "0.1.0"
description = "Open SWE Agent - Python agent for automating software engineering tasks"
readme = "README.md"
requires-python = ">=3.11"
license = { text = "MIT" }
dependencies = [
# Core deepagents library
"deepagents>=0.3.12",
# FastAPI for webhook handling
"fastapi>=0.104.0",
"uvicorn>=0.24.0",
# HTTP client
"httpx>=0.25.0",
# JWT for service authentication
"PyJWT>=2.8.0",
# Encryption
"cryptography>=41.0.0",
# LangGraph SDK for thread management
"langgraph-sdk>=0.1.0",
# LangChain dependencies (will be pulled in by deepagents but listing for clarity)
"langchain>=0.2.0",
"langgraph>=0.2.0",
"markdownify>=1.2.2",
"langchain-anthropic>1.1.0",
"langgraph-cli[inmem]>=0.4.12",
]
[project.optional-dependencies]
dev = [
"pytest>=7.0.0",
"pytest-asyncio>=0.21.0",
"ruff>=0.1.0",
]
[build-system]
requires = ["hatchling"]
build-backend = "hatchling.build"
[tool.hatch.metadata]
allow-direct-references = true
[tool.hatch.build.targets.wheel]
packages = ["agent"]
[tool.ruff]
line-length = 100
target-version = "py311"
[tool.ruff.lint]
select = [
"E", # pycodestyle errors
"W", # pycodestyle warnings
"F", # Pyflakes
"I", # isort
"B", # flake8-bugbear
"C4", # flake8-comprehensions
"UP", # pyupgrade
]
ignore = [
"E501", # line too long (handled by formatter)
]
[tool.pytest.ini_options]
asyncio_mode = "auto"
testpaths = ["tests"]