[build-system]
requires = ["setuptools>=68", "wheel"]
build-backend = "setuptools.build_meta"

[project]
name = "gamedesignos"
dynamic = ["version"]
description = "Local-first game design OS that turns AI output into reviewable decisions with evidence, experiments, Human Gates, and rollback"
readme = "runtime/cli/README.md"
requires-python = ">=3.11"
license = "MIT"
authors = [
  { name = "Paranoia" }
]
dependencies = [
  "PyYAML>=6.0",
  "jsonschema>=4.20"
]

classifiers = [
  "Development Status :: 4 - Beta",
  "Environment :: Console",
  "Operating System :: OS Independent",
  "Programming Language :: Python :: 3",
  "Programming Language :: Python :: 3.11",
  "Programming Language :: Python :: 3.12",
  "Programming Language :: Python :: 3.13",
  "Topic :: Games/Entertainment",
  "Topic :: Software Development :: Libraries :: Application Frameworks"
]

[project.optional-dependencies]
dev = [
  "build>=1.2",
  "coverage>=7.4",
  "skills-ref>=0.1.1"
]

[project.scripts]
gamedesignos = "gamedesignos.cli:main"

[tool.setuptools.packages.find]
include = ["gamedesignos*"]

[tool.setuptools.dynamic]
version = {attr = "gamedesignos._version.VERSION"}

[tool.setuptools.package-data]
gamedesignos = ["_data/**/*"]

[tool.ruff]
line-length = 100
