Python bindings (mehari-python/)

SkillDev tools

Apply when working in mehari-python/ — the PyO3/maturin Python extension.

Available today. Use it from your connected AI after setup.

Connect ahel once, and every AI you use reads what you have installed.

Then ask your AI: use the Python bindings (mehari-python/) skill

What this skill tells your AI

The instructions your AI receives, as published by varfish-org/mehari in .claude/skills/python-bindings/SKILL.md and read by ahel’s review.

  • Separate crate, excluded from the workspace (own [workspace] stub + Cargo.lock) so jemalloc isn't linked into the extension. Never add it to the root workspace members. It depends on mehari with default-features = false.
  • Stack: PyO3 0.28 (extension-module), maturin backend (module-name = "mehari._mehari"), uv for the env. Returns annotation results as Arrow RecordBatches (arrow 58 + serde_arrow); Python side uses polars/pyarrow. Requires Python ≥3.12. PyPI package name is mehari.
  • Dev loop (from mehari-python/): uv sync, then uv run pytest. Build the extension with uv run maturin develop.
  • The sync-lockfiles workflow keeps mehari-python/Cargo.lock aligned with root on release PRs — don't fight it.
  • release-please owns version bumps here too (pyproject.toml + Cargo.toml) — don't hand-edit.

Signals

GitHub stars
33
Forks
2
Last commit
Sep 2026
Advanced
Catalog kind
skill
Gateway key
python-bindings
Source
github.com/varfish-org/mehari