[build-system] requires = ["hatchling"] build-backend = "hatchling.build" [project] name = "metabrain" version = "1.1.2" description = "A zero-dependency SQLite memory layer for AI agents that learns what works: patterns graduate to proven preferences via a built-in experiment loop." readme = "README.md" requires-python = ">=3.10" license = "MIT" authors = [{ name = "Aria Han" }] keywords = [ "mcp", "mcp-server", "model-context-protocol", "claude-code", "codex", "agent-memory", "ai-agents", "sqlite", "agents", "memory", "llm", "ai", "checkpoint", "orchestration", "self-improving", "reinforcement", ] classifiers = [ "Development Status :: 5 - Production/Stable", "Intended Audience :: Developers", "License :: OSI Approved :: MIT License", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.12", "Programming Language :: Python :: 3.13", "Topic :: Software Development :: Libraries", "Typing :: Typed", ] dependencies = [] [project.urls] # Homepage points at the author site, not the repo. PyPI project pages carry # real authority and every link here went to GitHub, so the domain the work is # actually published under got nothing back. Homepage = "https://ariaxhan.com" Documentation = "https://ariaxhan.com/projects/metabrain/" Repository = "https://github.com/ariaxhan/metabrain" Issues = "https://github.com/ariaxhan/metabrain/issues" [project.scripts] metabrain-mcp = "metabrain.mcp_server:main" [project.optional-dependencies] dev = ["pytest>=7.0"] # The MCP server (`metabrain-mcp`) is opt-in: the core stays zero-dependency. mcp = ["mcp>=1.2"] # Reserved for an opt-in semantic-recall backend. The core stays zero-dependency; # the moat is the learn → prove → graduate loop, not embedding search. embeddings = [] [tool.hatch.build.targets.wheel] packages = ["src/metabrain"] # Explicit list, not "everything unignored": a stray local directory must never # be able to leak a machine path into a published sdist. [tool.hatch.build.targets.sdist] include = [ "src/metabrain", "tests", "README.md", "llms.txt", "CHANGELOG.md", "DESIGN.md", "LICENSE", "pyproject.toml", ] [tool.pytest.ini_options] testpaths = ["tests"]