[project] name = "omniglyph" version = "0.8.0b0" description = "Local-first symbol ground truth MCP server for AI agents" readme = "README.md" license = "Apache-2.0" authors = [ { name = "OmniGlyph contributors" } ] keywords = ["mcp", "unicode", "agent", "homoglyph", "llm", "claude"] classifiers = [ "Development Status :: 4 - Beta", "Intended Audience :: Developers", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.12", "Topic :: Software Development :: Quality Assurance", "Topic :: Text Processing :: Linguistic", ] requires-python = ">=3.10" dependencies = [ "fastapi>=0.110", "uvicorn[standard]>=0.27", ] [project.optional-dependencies] dev = [ "build>=1.2", "pytest>=8.0", "httpx>=0.27", "ruff>=0.4", "mypy>=1.10", "setuptools>=68", "tomli>=2.0; python_version < \"3.11\"", "twine>=5.0", ] [project.scripts] omniglyph = "omniglyph.cli:main" omniglyph-mcp = "omniglyph.mcp_server:main" [build-system] requires = ["setuptools>=68"] build-backend = "setuptools.build_meta" [tool.pytest.ini_options] testpaths = ["tests"] pythonpath = ["src"] [tool.ruff] target-version = "py310" line-length = 120 [tool.ruff.lint] select = ["E", "F", "W", "I", "UP", "B", "SIM"] ignore = ["E501"] [tool.mypy] python_version = "3.10" warn_return_any = true warn_unused_configs = true ignore_missing_imports = true [tool.setuptools.package-data] "omniglyph.domain_packs" = ["*.csv"] [project.urls] Homepage = "https://github.com/aidi1723/OmniGlyph" Repository = "https://github.com/aidi1723/OmniGlyph" Issues = "https://github.com/aidi1723/OmniGlyph/issues" Documentation = "https://github.com/aidi1723/OmniGlyph#readme"