[build-system] requires = ["hatchling"] build-backend = "hatchling.build" [project] name = "codex" version = "0.1.0" description = "Personal knowledge base for scientific papers — provenance, citation graph, semantic search." readme = "README.md" requires-python = ">=3.12" dependencies = [ "psycopg[binary]>=3.1", "pgvector>=0.3", "pydantic-settings>=2", "sentence-transformers>=3", "typer>=0.12", "httpx>=0.27", "tenacity>=8", ] [project.scripts] codex = "codex.cli:app" [dependency-groups] dev = [ "ruff>=0.4", "mypy>=1.10", "pytest>=8", "pytest-mock>=3", ] [tool.ruff] target-version = "py312" line-length = 100 [tool.ruff.lint] select = ["E", "F", "I", "UP", "B", "SIM"] ignore = [] [tool.mypy] python_version = "3.12" strict = true ignore_missing_imports = true [tool.pytest.ini_options] testpaths = ["tests"]