Spaces:
Paused
Paused
| [build-system] | |
| requires = ["hatchling"] | |
| build-backend = "hatchling.build" | |
| [project] | |
| name = "vgtc" | |
| version = "2.0.0" | |
| description = "AI for GTC — MCP-native agent platform with ERP integration, EU AI Act compliance, and multi-agent orchestration" | |
| readme = "README.md" | |
| license = { text = "Source Available - All Rights Reserved" } | |
| requires-python = ">=3.11" | |
| authors = [{ name = "Vora Labs", email = "founders@voralabs.dev" }] | |
| keywords = ["ai-agents", "trade-compliance", "mcp", "erp-integration", "eu-ai-act", "enterprise-ai", "autonomous-agents"] | |
| classifiers = [ | |
| "Development Status :: 4 - Beta", | |
| "Intended Audience :: Developers", | |
| "Intended Audience :: Information Technology", | |
| "Programming Language :: Python :: 3.11", | |
| "Topic :: Scientific/Engineering :: Artificial Intelligence", | |
| ] | |
| dependencies = [ | |
| "mcp[cli]>=1.0.0", | |
| "pydantic>=2.0.0", | |
| "pydantic-settings>=2.0.0", | |
| "httpx>=0.27.0", | |
| "python-dotenv>=1.0.0", | |
| "fastapi>=0.100.0", | |
| "uvicorn[standard]>=0.23.0", | |
| "click>=8.0.0", | |
| "starlette>=0.27.0", | |
| "pypdf>=4.0.0", | |
| "reportlab>=4.0.0", | |
| "jellyfish>=1.0.0", | |
| "uvloop>=0.19.0; sys_platform != 'win32'", | |
| "httptools>=0.6.0", | |
| "sqlalchemy[asyncio]>=2.0.0", | |
| "asyncpg>=0.29.0", | |
| "pyhscodes>=0.3.0", | |
| ] | |
| [project.optional-dependencies] | |
| dev = [ | |
| "pytest>=8.0.0", | |
| "pytest-asyncio>=0.23.0", | |
| "pytest-cov>=4.1.0", | |
| "pytest-mock>=3.12.0", | |
| "httpx>=0.27.0", | |
| "ruff>=0.2.0", | |
| "mypy>=1.8.0", | |
| "pre-commit>=3.6.0", | |
| "fakeredis>=2.21.0", | |
| "openai>=1.0.0", | |
| "anthropic>=0.18.0", | |
| "tiktoken>=0.5.0", | |
| ] | |
| ui = [ | |
| "streamlit>=1.30.0", | |
| ] | |
| phase1 = [ | |
| "docling>=2.0.0", | |
| "paddleocr>=2.7.0", | |
| "paddlepaddle>=2.6.0", | |
| ] | |
| all = ["vgtc[dev,ui,phase1]"] | |
| [project.scripts] | |
| hermes = "hermes.cli:main" | |
| [tool.ruff] | |
| target-version = "py311" | |
| line-length = 100 | |
| [tool.ruff.lint] | |
| select = ["E", "F", "W", "I", "N", "UP", "B", "A", "C4", "SIM", "TCH"] | |
| ignore = ["E501"] | |
| [tool.ruff.lint.isort] | |
| known-first-party = ["hermes"] | |
| [tool.mypy] | |
| python_version = "3.11" | |
| strict = true | |
| warn_return_any = true | |
| warn_unused_configs = true | |
| disallow_untyped_defs = true | |
| [tool.pytest.ini_options] | |
| testpaths = ["tests"] | |
| asyncio_mode = "auto" | |
| markers = [ | |
| "unit: Unit tests", | |
| "integration: Integration tests", | |
| "agent: Agent tests", | |
| "mcp: MCP tests", | |
| "slow: Slow tests", | |
| ] | |
| addopts = "-v --tb=short" | |
| [tool.hatch.build.targets.wheel] | |
| packages = ["src/hermes"] | |
| [tool.coverage.run] | |
| source = ["hermes"] | |
| omit = ["tests/*", "setup.py"] | |
| [tool.coverage.report] | |
| fail_under = 55 | |
| show_missing = true | |
| exclude_lines = [ | |
| "pragma: no cover", | |
| "def __repr__", | |
| "if __name__ == .__main__.", | |
| "raise NotImplementedError", | |
| "pass", | |
| "except ImportError", | |
| ] | |