[build-system] requires = ["hatchling"] build-backend = "hatchling.build" [project] name = "claude-py" version = "0.2.1" description = "Python SDK for Claude API with streaming support - reverse engineered from Claude Code CLI" authors = [{name = "Claude Code Analysis"}] readme = "README.md" requires-python = ">=3.10" dependencies = [ "httpx[http2]>=0.27.0", "pydantic>=2.0.0", "httpx-sse>=0.4.0", ] [dependency-groups] dev = [ "pytest>=7.0.0", "pytest-asyncio>=0.21.0", "ruff>=0.9.0", "mypy>=1.14.0", ] [project.scripts] claude-py = "claude.cli:main" [tool.hatch.build.targets.wheel] packages = ["src/claude"] [tool.ruff] src = ["src", "test"] line-length = 100 [tool.ruff.lint] select = ["E", "W", "F", "I", "B", "C4", "UP"] ignore = ["E501"] [tool.ruff.format] quote-style = "double" indent-style = "space" [tool.mypy] python_version = "3.10" check_untyped_defs = true no_implicit_optional = true [[tool.mypy.overrides]] module = ["httpx_sse.*"] ignore_missing_imports = true