The mem0-cli package on PyPI. Typer-based, entry point mem0.
pip install -e ".[dev]" # dev install: ruff + pytest
ruff check . # lint
ruff format . # format
pytest # test
hatch build # buildLine length is 100 here, not 120. The root Python SDK uses 120. Running the root
make formatover this directory reformats every file and fails CI. Use the localruffinvocations above.
- Python 3.10+. Not 3.9, unlike the root SDK.
- Ruff with an extended rule set:
E,F,I,W,UP,B,SIM,RUF. IgnoresE501(formatter handles it),B008(required by Typer's argument defaults), andSIM108. - Ruff format: double quotes, space indent,
docstring-code-format = true. - isort first-party is
mem0_clionly. - pytest for tests.
- Target version pinned to
py310.
cli/python/
├── src/mem0_cli/ package source (src layout)
└── tests/
Entry point: mem0 = "mem0_cli.app:main".
Typer + Rich + httpx. mem0ai is optional, exposed through the [oss] extra for OSS mode. Do not promote it to a required dependency.
- CI:
cli-python-ci.yml, ruff + pytest +hatch buildon Python 3.10, 3.11, 3.12. - Release: tag prefix
cli-v*dispatchescli-python-cd.yml, publishing to PyPI over OIDC.