[project] name = "assistant-agent" version = "0.2.1" description = "Assistant — the orchestrating agent for the classic-models estate" readme = "README.md" requires-python = ">=3.12" dependencies = [ # The A2A facade, and the client for calling specialists. The official SDK # rather than a framework's own: this estate exists to prove A2A # interoperability across five runtimes, so the reference implementation is # the safer base for the others to interoperate with. "a2a-sdk[http-server]>=1.1.2,<2", # The graph. The orchestrator is where routing is worth making explicit — # which specialist is consulted when, and where the answers are reconciled. "langgraph>=1.2.11,<2", # The model client. The inference endpoint speaks the OpenAI protocol. "langchain-openai>=1.6.0,<2", "langchain-core>=1.6.1,<2", "httpx>=0.28.1,<1", "pydantic-settings>=2.7", "uvicorn>=0.52.4", ] [project.optional-dependencies] dev = ["pytest>=8", "pytest-asyncio>=0.24"] [build-system] requires = ["hatchling"] build-backend = "hatchling.build" [tool.hatch.build.targets.wheel] packages = ["src/assistant_agent"] [tool.pytest.ini_options] pythonpath = ["src"] asyncio_mode = "auto"