[build-system]
requires = ["hatchling"]
build-backend = "hatchling.build"
[project]
name = "sentient-brain-smithery"
dynamic = ["version"]
description = "Multi-Agent AI Code Developer System for Smithery.ai deployment"
readme = "README.md"
requires-python = ">=3.11"
license = "MIT"
keywords = [
"ai", "multi-agent", "code-developer", "surrealdb",
"groq", "langraph", "mcp", "smithery"
]
authors = [
{ name = "Sentient Brain Team", email = "team@sentient-brain.ai" },
]
classifiers = [
"Development Status :: 4 - Beta",
"Intended Audience :: Developers",
"License :: OSI Approved :: MIT License",
"Operating System :: OS Independent",
"Programming Language :: Python :: 3",
"Programming Language :: Python :: 3.11",
"Programming Language :: Python :: 3.12",
"Topic :: Software Development :: Libraries :: Python Modules",
"Topic :: Scientific/Engineering :: Artificial Intelligence",
]
dependencies = [
"mcp>=1.0.0",
"pydantic>=2.10.0",
"fastapi>=0.115.13",
"uvicorn>=0.30.0",
"groq>=0.28.0",
"google-genai>=1.21.0",
"langchain>=0.3.0",
"langgraph>=0.2.0",
"surrealdb>=1.0.4",
"redis>=5.0.0",
"python-dotenv>=1.0.0",
"httpx>=0.27.0",
"asyncio-mqtt>=0.16.0",
"pydantic-settings>=2.6.0",
"loguru>=0.7.0",
]
[project.optional-dependencies]
dev = [
"pytest>=8.0.0",
"pytest-asyncio>=0.24.0",
"black>=24.0.0",
"isort>=5.13.0",
]
ui = [
"streamlit>=1.40.0",
"plotly>=5.24.0",
"networkx>=3.4.0",
]
[project.urls]
Documentation = "https://docs.sentient-brain.ai"
Issues = "https://github.com/sentient-brain/smithery-deployment/issues"
Source = "https://github.com/sentient-brain/smithery-deployment"
[tool.hatch.version]
path = "src/__init__.py"
[tool.hatch.build.targets.wheel]
packages = ["src"]
[tool.black]
line-length = 88
target-version = ['py311']
include = '\.pyi?$'
extend-exclude = '''
/(
# directories
\.eggs
| \.git
| \.hg
| \.mypy_cache
| \.tox
| \.venv
| build
| dist
)/
'''
[tool.isort]
profile = "black"
multi_line_output = 3
line_length = 88
known_first_party = ["sentient_brain"]
[tool.pytest.ini_options]
minversion = "6.0"
addopts = "-ra -q --strict-markers"
testpaths = [
"tests",
]
python_files = [
"test_*.py",
"*_test.py",
]