Make the recommended MCP profile visible from the first help and docs pass without changing 3.x behavior. Rework help, top-level docs, public-contract wording, and shipped MCP/OpenAI examples so is the recommended first profile while stays the compatibility default for full-surface hosts. Bump the package and catalog to 3.8.0, mark the roadmap milestone done, and add regression coverage for the new MCP help and docs alignment. Validation included uv lock, targeted profile/help tests, make check, make dist-check, and a real guest-backed server smoke.
88 lines
2.6 KiB
TOML
88 lines
2.6 KiB
TOML
[project]
|
|
name = "pyro-mcp"
|
|
version = "3.8.0"
|
|
description = "Stable Firecracker workspaces, one-shot sandboxes, and MCP tools for coding agents."
|
|
readme = "README.md"
|
|
license = { file = "LICENSE" }
|
|
authors = [
|
|
{ name = "Thales Maciel", email = "thales@thalesmaciel.com" }
|
|
]
|
|
requires-python = ">=3.12"
|
|
classifiers = [
|
|
"Development Status :: 5 - Production/Stable",
|
|
"Environment :: Console",
|
|
"Intended Audience :: Developers",
|
|
"License :: OSI Approved :: MIT License",
|
|
"Operating System :: POSIX :: Linux",
|
|
"Programming Language :: Python :: 3",
|
|
"Programming Language :: Python :: 3.12",
|
|
"Topic :: Software Development :: Testing",
|
|
"Topic :: System :: Systems Administration",
|
|
]
|
|
dependencies = [
|
|
"mcp>=1.26.0",
|
|
]
|
|
|
|
[project.urls]
|
|
Homepage = "https://git.thaloco.com/thaloco/pyro-mcp"
|
|
Repository = "https://git.thaloco.com/thaloco/pyro-mcp"
|
|
Issues = "https://git.thaloco.com/thaloco/pyro-mcp/issues"
|
|
PyPI = "https://pypi.org/project/pyro-mcp/"
|
|
|
|
[project.scripts]
|
|
pyro = "pyro_mcp.cli:main"
|
|
|
|
[build-system]
|
|
requires = ["hatchling"]
|
|
build-backend = "hatchling.build"
|
|
|
|
[tool.hatch.build.targets.wheel]
|
|
packages = ["src/pyro_mcp"]
|
|
|
|
[tool.hatch.build.targets.wheel.force-include]
|
|
"src/pyro_mcp/runtime_bundle/NOTICE" = "pyro_mcp/runtime_bundle/NOTICE"
|
|
"src/pyro_mcp/runtime_bundle/linux-x86_64/bin/firecracker" = "pyro_mcp/runtime_bundle/linux-x86_64/bin/firecracker"
|
|
"src/pyro_mcp/runtime_bundle/linux-x86_64/bin/jailer" = "pyro_mcp/runtime_bundle/linux-x86_64/bin/jailer"
|
|
"src/pyro_mcp/runtime_bundle/linux-x86_64/guest/pyro_guest_agent.py" = "pyro_mcp/runtime_bundle/linux-x86_64/guest/pyro_guest_agent.py"
|
|
"src/pyro_mcp/runtime_bundle/linux-x86_64/manifest.json" = "pyro_mcp/runtime_bundle/linux-x86_64/manifest.json"
|
|
|
|
[tool.hatch.build.targets.sdist]
|
|
include = [
|
|
"docs/**",
|
|
"src/pyro_mcp/**/*.py",
|
|
"src/pyro_mcp/runtime_bundle/NOTICE",
|
|
"src/pyro_mcp/runtime_bundle/linux-x86_64/bin/firecracker",
|
|
"src/pyro_mcp/runtime_bundle/linux-x86_64/bin/jailer",
|
|
"src/pyro_mcp/runtime_bundle/linux-x86_64/guest/pyro_guest_agent.py",
|
|
"src/pyro_mcp/runtime_bundle/linux-x86_64/manifest.json",
|
|
"README.md",
|
|
"LICENSE",
|
|
"AGENTS.md",
|
|
"pyproject.toml",
|
|
]
|
|
|
|
[dependency-groups]
|
|
dev = [
|
|
"mypy>=1.19.1",
|
|
"pre-commit>=4.5.1",
|
|
"pytest>=9.0.2",
|
|
"pytest-cov>=7.0.0",
|
|
"ruff>=0.15.4",
|
|
]
|
|
|
|
[tool.pytest.ini_options]
|
|
testpaths = ["tests"]
|
|
addopts = "--cov=pyro_mcp --cov-report=term-missing --cov-fail-under=90"
|
|
|
|
[tool.ruff]
|
|
target-version = "py312"
|
|
line-length = 100
|
|
|
|
[tool.ruff.lint]
|
|
select = ["E", "F", "I", "B"]
|
|
|
|
[tool.mypy]
|
|
python_version = "3.12"
|
|
strict = true
|
|
warn_unused_configs = true
|
|
files = ["src", "tests", "examples"]
|