content: [build-system]
  requires = ["hatchling"]
  build-backend = "hatchling.build"
  
  [project]
  name = "code-puppy"
  version = "0.0.198"
  description = "Code generation agent"
  readme = "README.md"
  requires-python = ">=3.11"
  dependencies = [
      "pydantic-ai==1.0.6",
      "httpx>=0.24.1",
      "rich>=13.4.2",
      "logfire>=0.7.1",
      "pydantic>=2.4.0",
      "python-dotenv>=1.0.0",
      "bs4>=0.0.2",
      "pytest-cov>=6.1.1",
      "ruff>=0.11.11",
      "httpx-limiter>=0.3.0",
      "prompt-toolkit>=3.0.52",
      "pathspec>=0.11.0",
      "rapidfuzz>=3.13.0",
      "json-repair>=0.46.2",
      "fastapi>=0.110.0",
      "uvicorn>=0.29.0",
      "PyJWT>=2.8.0",
      "textual>=5.0.0",
      "termcolor>=3.1.0",
      "textual-dev>=1.7.0",
      "openai>=1.99.1",
      "ripgrep>=14.1.0",
      "tenacity>=8.2.0",
      "playwright>=1.40.0",
      "camoufox>=0.4.11",
  ]
  dev-dependencies = [
      "pytest>=8.3.4",
      "pytest-cov>=6.1.1",
      "pytest-asyncio>=0.23.1",
      "ruff>=0.11.11",
  ]
  authors = [
      {name = "Michael Pfaffenberger"}
  ]
  license = {text = "MIT"}
  classifiers = [
      "Programming Language :: Python :: 3",
      "Programming Language :: Python :: 3.11",
      "Programming Language :: Python :: 3.12",
      "Programming Language :: Python :: 3.13",
      "License :: OSI Approved :: MIT License",
      "Operating System :: OS Independent",
      "Topic :: Software Development :: Code Generators",
  ]
  
  [project.urls]
  repository = "https://github.com/mpfaffenberger/code_puppy"
  HomePage = "https://github.com/mpfaffenberger/code_puppy"
  
  
  [project.scripts]
  code-puppy = "code_puppy.main:main_entry"
  pup = "code_puppy.main:main_entry"
  
  [tool.logfire]
  ignore_no_config = true
  
  [tool.hatch.build]
  packages = ["code_puppy"]
  build_data = true
  
  [tool.hatch.build.targets.wheel.shared-data]
  "code_puppy/models.json" = "code_puppy/models.json"
  
  [[tool.hatch.build.targets.sdist.include]]
  path = "code_puppy/models.json"
  [tool.pytest.ini_options]
  addopts = "--cov=code_puppy --cov-report=term-missing"
  testpaths = ["tests"]
  asyncio_mode = "auto"
  
  [tool.coverage.run]
  omit = ["code_puppy/main.py"]
  