[build-system] requires = [ "setuptools>=80", "wheel", ] build-backend = "setuptools.build_meta" [project] name = "ai-lsc" version = "3.0.5" description = "AI Local Stack Control — PySide6 desktop app for orchestrating local AI/ML tool stacks" readme = "README.md" license = {text = "MIT"} requires-python = ">=3.11" authors = [ {name = "AI-LSC Contributors"}, ] keywords = [ "ai", "llm", "local-ai", "stack-management", "pyside6", "ollama", "vllm", "container-management", "iac", "terraform", "pulumi", "opentofu", "crossplane", ] classifiers = [ "Development Status :: 4 - Beta", "Environment :: X11 Applications :: Qt", "Framework :: PySide6", "Intended Audience :: Developers", "Operating System :: POSIX :: Linux", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.12", "Programming Language :: Python :: 3.13", "Topic :: Scientific/Engineering :: Artificial Intelligence", "Topic :: System :: Systems Administration", ] dependencies = [ "PySide6>=6.6", "psutil>=5.9", ] [project.optional-dependencies] gpu-nvidia = ["cupy-cuda12x"] gpu-amd = ["cupy-rocm"] dev = [ "pytest>=7.0", "pytest-cov>=4.0", "mypy>=1.0", "ruff>=0.1", ] [project.scripts] ai-lsc = "ai_lsc.__main__:main" [tool.setuptools.packages.find] where = ["src"] include = ["ai_lsc*"] [tool.ruff] target-version = "py311" line-length = 100 [tool.ruff.lint] select = ["E", "F", "W", "I", "N", "UP"] [tool.mypy] python_version = "3.11" warn_return_any = true warn_unused_configs = true ignore_missing_imports = true [tool.pytest.ini_options] testpaths = ["tests"] python_files = ["test_*.py"] python_classes = ["Test*"] python_functions = ["test_*"]