GnosisLab
Umbrella project — a composed research-automation distribution. Subsystems live in subfolders:
ml-scientist/— the scientific-experiment MCP stack (hypothesis → experiment → evidence → conclusion): five MCP servers, sealed execution, invariant suite, observability GUIs.openshell/— (planned) NVIDIA OpenShell launch-within-shell subsystem.
Host requirements
-
Linux — trial sandboxing uses bubblewrap mount namespaces.
-
Python ≥ 3.10 and
uv(curl -LsSf https://astral.sh/uv/install.sh | sh), or any pip for the PyPI path below. -
bubblewrap + strace — required by the sealed executor; the launchers refuse to start without them:
sudo apt install bubblewrap strace # Debian/Ubuntu
-
Ports 38050–38091 free (five servers × MCP + GUI; see
ml-scientist/ports.envto move them).
Install
From source (this repository)
git clone <this-repo> gnosislab && cd gnosislab
uv sync # one root env for the whole distribution
ml-scientist/ is also independently runnable — cd ml-scientist && uv sync gives it its own env.
From PyPI
pip install gnosislab # or, better for CLI use:
uv tool install gnosislab # isolated env, commands on PATH
This installs the gnosislab lifecycle command plus the five MCP
servers (ml-episteme-mcp, ml-anamnesis-mcp, ml-zetesis-mcp,
ml-arete-mcp, ml-agora-mcp):
gnosislab start all
gnosislab status
gnosislab config # resolved ports + config file location
Ports: built-in defaults (38050–38091) are overridden by
~/.config/gnosislab/ports.env (same KEY=VALUE format as the repo's
ports.env) and by ML_* environment variables. Runtime state lives
in ~/.ml-<name>/.
Run
gnosislab is a symlink at the repo root into ml-scientist/:
./gnosislab start all # upstreams first, agora last
./gnosislab status # pid/ports/health per server
./gnosislab logs arete
./gnosislab stop all
(./labloop still works — transition symlink, prints a rename
notice.)
To launch from anywhere, put it on PATH:
ln -sf "$PWD/gnosislab" ~/.local/bin/gnosislab
gnosislab start all
Per-server observability GUIs: anamnesis :38091, episteme :38081,
zetesis :38071, arete :38061, agora :38051 (lab-level status hub).
Each server also responds to ml-<name>-mcp run directly in the
foreground via ml-scientist/run-ml-<name>.sh for debugging.
Config: ml-scientist/ml-*.toml (per server) + ports.env.
Runtime state lives outside the repo in ~/.ml-<name>/
(databases, logs, pidfiles).
Test
uv run pytest -q # full suite (1289 tests)
Stats
- PyPI: https://pypi.org/project/gnosislab/
- Downloads: https://pepy.tech/project/gnosislab (per-day/week/month + total; also pypistats.org/packages/gnosislab for version/platform breakdowns — both populate after first downloads)
- Repo: https://github.com/cloudcell/gnosislab
Publish
uv build
uv publish --publish-url https://test.pypi.org/legacy/ # TestPyPI
uv publish # PyPI
Metadata
Release files for gnosislab 0.1.13
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| gnosislab-0.1.13.tar.gz | 7.5 MB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| gnosislab-0.1.13-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 8.3 MB
Release files / gnosislab-0.1.13.tar.gz
| Download URL | gnosislab-0.1.13.tar.gz |
|---|---|
| Size | 7.5 MB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
f238b6ee9c618b3e67a9edaee0a57e4dfe436ccdbb6fb72e573be20ed3904fef
|
|
BLAKE2b-256 checksum How to use checksums |
f17800cd849314014e1a7b7c459c90c151ce624ed55237fd872d5289825ba1bd
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.11.26 {"installer":{"name":"uv","version":"0.11.26","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Linux Mint","version":"22.3","id":"zena","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
|
Release files / gnosislab-0.1.13-py3-none-any.whl
| Download URL | gnosislab-0.1.13-py3-none-any.whl |
|---|---|
| Size | 805.3 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
259bf7c6da481ea6461c35beb79e4bededcd6b470aa6a19f6bb959e38d25e3c3
|
|
BLAKE2b-256 checksum How to use checksums |
8c239be249a3ade2c4b8847c3429589300d3c473bc3ad7a59b8ceea46d1afeea
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.11.26 {"installer":{"name":"uv","version":"0.11.26","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Linux Mint","version":"22.3","id":"zena","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
|