[project] name = "takopi" authors = [{name = "banteg"}] version = "0.17.0.dev0" description = "Telegram bridge for Codex, Claude Code, and other agent CLIs." readme = "readme.md" license = { file = "LICENSE" } requires-python = ">=3.14" dependencies = [ "anyio>=4.12.0", "httpx>=0.28.1", "markdown-it-py", "msgspec>=0.20.0", "openai>=2.15.0", "pydantic>=2.12.5", "pydantic-settings>=2.12.0", "questionary>=2.1.1", "rich>=14.2.0", "structlog>=25.5.0", "sulguk>=0.11.1", "typer>=0.21.0", "watchfiles>=0.21.0", ] classifiers = [ "License :: OSI Approved :: MIT License", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.14", "Programming Language :: Python :: 3 :: Only", "Operating System :: OS Independent", ] [project.urls] Homepage = "https://github.com/banteg/takopi" Repository = "https://github.com/banteg/takopi" Issues = "https://github.com/banteg/takopi/issues" [project.scripts] takopi = "takopi.cli:main" [project.entry-points."takopi.engine_backends"] codex = "takopi.runners.codex:BACKEND" claude = "takopi.runners.claude:BACKEND" opencode = "takopi.runners.opencode:BACKEND" pi = "takopi.runners.pi:BACKEND" [project.entry-points."takopi.transport_backends"] telegram = "takopi.telegram.backend:BACKEND" [build-system] requires = ["uv_build>=0.9.18,<0.10.0"] build-backend = "uv_build" [dependency-groups] dev = [ "pytest>=9.0.2", "pytest-anyio>=0.0.0", "pytest-cov>=7.0.0", "ruff>=0.14.10", "ty>=0.0.8", ] [tool.pytest.ini_options] addopts = ["--cov=takopi", "--cov-report=term-missing", "--cov-fail-under=70"] testpaths = ["tests"]