Dataset plugins define canonical metric schemas — the stable tables thattransforms write into andsurfaces read from. They are the contract between data producers and consumers.
A dataset is a versioned table schema, declared as a Python dataclass extending DatasetTable. It specifies the column names, types, units, and primary key for a canonical metric — for example,daily_hrv, transaction, or activity.
Multiple source-transform pairs can write into the same dataset table. A fitness-tracker source + a geofence transform and a phone-health source + a SQL transform can both write activity rows. Surfaces then read a unified, schema-stable table regardless of origin.
duration_s, distance_m, weight_kg). All units are SI unless the upstream API forces otherwise.shenas.datasets. Install with shenasctl source add --local; shenas creates the table on first transform run.The canonical community datasets (activity, daily_hrv, transaction, sleep, event, note) are maintained under plugins/datasets/in the main repository: shenas-org/shenas Public mirror (shenas-org/shenas): Last updated 2026-05-23. Treat it as frozen; do not rely on it for current releases. If a dataset you need doesn't exist, open a PR to propose the schema — the bar is stability and SI units.
This list is illustrative; authoritative definitions are in the repo. Dataset schemas are still being finalized — check theroadmap for stability status.