systemonemodels
The command line and Python client for System One, the registry for decision models — models that return a typed decision with a calibrated confidence instead of generated text: choose, score, rank, classify, route.
pip install systemonemodels
This installs the systemone command and the systemone Python package.
Python 3.10 or newer.
Sign in
systemone login
The CLI shows a one-time code and opens the registry in your browser, where you approve this machine. Over SSH, open the printed address on any device instead. For CI, skip the browser:
export SYSTEMONE_TOKEN=s1_pat_... # create one at systemonemodels.tech/settings/tokens
systemone whoami
Find and pull models
systemone search routing
systemone search --capability route --architecture laya --sort downloads
systemone show biplov/snake-balanced-multilingual
systemone pull biplov/snake-balanced-multilingual --variant onnx-int8
Files are cached by content: a second pull downloads nothing, and variants that
share a tokenizer store it once. --dest ./snake links the files into a folder
of your choosing; systemone cache info and systemone cache clear manage the
cache.
Publish
cd ~/my-workspace
systemone push
Run push in a folder and it finds every model underneath, however deep —
trained checkpoints, ONNX and Core ML exports, GGUF files, any folder holding
model.onnx, model.safetensors, a .gguf or an .mlpackage — lists them,
and asks which to publish (1,3-5 or all). Datasets, virtual environments and
caches are never searched.
# MODEL VARIANT SIZE FOLDER
1 banking77-balanced mlx 646.8 MB runs/banking77-balanced-0922-234657/model
2 snake-balanced-multilingual mlx 646.8 MB runs/snake-balanced-multilingual-0923-005225/model
3 snake-balanced-multilingual onnx-int8 342.7 MB exports/snake-balanced-multilingual-0923-005225-onnx-int8
Variants of one model are published together, as one version of one
repository with a folder each, so systemone pull you/snake-balanced-multilingual --variant onnx-int8 fetches only that folder. A model on its own keeps its
files at the top of the repository, the way it sits on disk.
To publish one folder under a name of your choosing:
systemone push ./runs/snake/model --repo you/laya-snake
What gets published, without retyping any of it:
- The model card. The folder's
README.md, with its Hugging Face front matter read for the licence, tags and base model rather than shown. A model without one gets a card written from its evaluation, questions and variants. - The manifest.
systemone.yaml— what the model decides, its runtime, and its evaluation: accuracy, calibration error and latency from a Laya Studio run'seval.json, or an export's own measurements. Pass--manifestto use your own, and check it first withsystemone validate systemone.yaml. - The version. The next minor version after the latest (
0.1.0,0.2.0, …), or--version.
push shows the plan and asks before sending anything, and warns when a file
would publish the path of your home folder. --dry-run prints the manifests,
cards and files and stops. --namespace publishes under an organization,
--license overrides the card's licence, and --all --yes publishes
everything found without a question, for scripts and CI.
Files the registry already holds are never sent again, so republishing with one changed file sends one file, and large files stream from disk with a progress bar that moves by the byte.
In Python
from systemone import snapshot_download
path = snapshot_download("biplov/snake-balanced-multilingual", variant="onnx-int8")
path is a local directory with the version's files, served from the cache on
every call after the first.
from systemone import Client
with Client() as registry:
results = registry.search("routing", capability="route")
model = registry.model("biplov/snake-balanced-multilingual")
Configuration
| Variable | |
|---|---|
SYSTEMONE_TOKEN |
Access token. Takes precedence over a stored login, for CI. |
SYSTEMONE_ENDPOINT |
API address, for a self-hosted registry. |
SYSTEMONE_HOME |
Where the login is stored (0600). Defaults to the platform config directory. |
SYSTEMONE_CACHE |
Where downloaded files are cached. |
Development
git clone https://github.com/systemonemodels/systemonemodels-sdk
cd systemonemodels-sdk
uv sync
uv run pytest
uv run ruff check . && uv run mypy
Issues and pull requests are welcome. For anything security-related, see SECURITY.md instead of opening a public issue.
Links
- Registry: https://systemonemodels.tech/models
- CLI guide: https://systemonemodels.tech/docs/sdk
- Manifest specification: https://systemonemodels.tech/docs/manifest
- Changelog: CHANGELOG.md
Licensed under Apache-2.0.
Release files for systemonemodels 0.2.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| systemonemodels-0.2.0.tar.gz | 47.3 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| systemonemodels-0.2.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 89.5 kB
Release files / systemonemodels-0.2.0.tar.gz
| Download URL | systemonemodels-0.2.0.tar.gz |
|---|---|
| Size | 47.3 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
b38898fbc83f55f8110021f5924641f97d44aef015859fe526e657dd10542d33
|
|
BLAKE2b-256 checksum How to use checksums |
507e431d5590ac4821e8f3ac73cc15b59e0c019724c2751cdf042918d5a01c40
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Sep 24, 2026.
Transparency logRelease files / systemonemodels-0.2.0-py3-none-any.whl
| Download URL | systemonemodels-0.2.0-py3-none-any.whl |
|---|---|
| Size | 42.2 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
87ef8414692de9e77655523b2f97e7c560ff21e66839767ac852608f8831ce0f
|
|
BLAKE2b-256 checksum How to use checksums |
2ee251c28906ba6d45f233b22782554f1f05ca9ab8bc885011d2fb5ffbaf4ca3
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Sep 24, 2026.
Transparency log