[project]
name = "Lilith-Shell"
version = "0.1.0"
description = "Enhanced MCP server enabling AI assistants to execute terminal commands through a secure shell interface"
authors = [
{name = "Charles Adedotun", email = "charles@adedot.un"}
]
license = "MIT"
dependencies = [
"mcp>=1.2.0,<2.0.0", # Pin to compatible version range
]
requires-python = ">=3.10"
readme = "README.md"
[project.optional-dependencies]
dev = [
"pytest>=7.0.0",
"pytest-asyncio",
"pytest-cov",
"mypy>=1.0.0",
"black>=23.0.0",
"isort>=5.0.0",
"bandit>=1.7.0",
]
[build-system]
requires = ["hatchling"]
build-backend = "hatchling.build"
[tool.hatch.metadata]
allow-direct-references = true
[tool.pytest.ini_options]
testpaths = ["tests"]
asyncio_mode = "auto"
asyncio_default_fixture_loop_scope = "function"
[tool.mypy]
python_version = "3.10"
warn_return_any = true
warn_unused_configs = true
disallow_untyped_defs = true
disallow_incomplete_defs = true
[tool.black]
line-length = 88
target-version = ['py310']
[tool.isort]
profile = "black"
line_length = 88
[tool.bandit]
skips = ["B101", "B104", "B404", "B603"]
exclude_dirs = ["tests", ".venv"]