diagnos
The diagnos vault from Python — zero-knowledge SDK, command line and REST API, in one package.
English · Português (Brasil)
Everything clinical is encrypted inside your process before it touches the network — the vault only ever sees ciphertext. One package carries every way in; you install only the layers you use.
Install what you need
| You want | Install | You get |
|---|---|---|
| A first look | pip install diagnos |
diagnos docs, version, setup, help — no dependencies at all |
| The SDK, in your code | pip install "diagnos[sdk]" |
from diagnos import Diagnos |
| The command line | pip install "diagnos[cli]" |
diagnos login, diagnos patients list, … |
| The REST API | pip install "diagnos[api]" |
diagnos-api — FastAPI with mandatory mTLS |
Extras combine ("diagnos[cli,api]"). Two more sit on top: openbao (OpenBao auto-unseal for servers) and
dev-certs (diagnos-api dev-certs, local certificates). With uv:
uv add "diagnos[sdk]" in a project, uv tool install "diagnos[cli]" for the command line. The REST API also
ships as a signed container image: ghcr.io/diagnos-tech/diagnos-api.
Python 3.11 to 3.13, on Linux (glibc and musl, x86_64 and arm64), macOS (Apple silicon and Intel) and Windows (x86_64). Every wheel carries the prebuilt Rust memory enclave — no compiler needed.
Let diagnos set it up
The base install knows how to install the rest, step by step:
uv tool install diagnos # or: pipx install diagnos
diagnos setup sdk # adds the SDK to the Python project in this folder (uv)
diagnos setup cli # gives this `diagnos` every command (uv)
diagnos setup api # pulls the API image and verifies its signature (Docker, cosign)
Every command is shown before it runs and confirmed once. --dry-run only prints the plan; --yes runs it without
asking, for scripts. A missing tool (uv, Docker) is never installed for you: setup says where to get it and exits
with 69.
The base commands
| Command | Does |
|---|---|
diagnos docs [help|dev|trust] [--open] [--json] |
Lists the Help Center, Developer Central and Trust Center, or prints (or opens) one |
diagnos version [--json] |
This installation: version, interpreter, platform and which extras are in |
diagnos setup sdk|cli|api [--yes] [--dry-run] |
Installs one layer, step by step |
diagnos help [command] |
The overview, or one command's options |
Once diagnos[cli] is installed, diagnos is the full command line and still answers these four. Exit codes: 0
success, 1 a step failed or was declined, 2 usage error, 69 something this needs is not installed.
Quick start
from diagnos import Diagnos
with Diagnos() as vault: # enrolls on entry: prints the approval link + code
print(vault.security_groups)
Set DIAGNOS_API_TOKEN first — a workspace admin issues it in the diagnos web app. The
quickstart goes from here to
your first encrypted patient and file.
Verify what you install
Every release is built by one GitHub Actions workflow and signed there, keylessly, with
Sigstore. PyPI shows each file's provenance; the same files, their .sigstore.json
bundles and SHA256SUMS are attached to the
GitHub release. With cosign:
cosign verify-blob diagnos-0.1.0.tar.gz \
--bundle diagnos-0.1.0.tar.gz.sigstore.json \
--certificate-identity "https://github.com/diagnos-tech/integration/.github/workflows/release.yml@refs/tags/v0.1.0" \
--certificate-oidc-issuer "https://token.actions.githubusercontent.com"
cosign verify ghcr.io/diagnos-tech/diagnos-api:0.1.0 \
--certificate-identity "https://github.com/diagnos-tech/integration/.github/workflows/release.yml@refs/tags/v0.1.0" \
--certificate-oidc-issuer "https://token.actions.githubusercontent.com"
Or with the GitHub CLI: gh attestation verify diagnos-0.1.0.tar.gz --repo diagnos-tech/integration.
Learn more
- Help Center — https://docs.diagnos.health
- Developer Central — https://dev.diagnos.health
- Trust Center — https://trust.diagnos.health
- Source, issues and changelog — https://github.com/diagnos-tech/integration
Licensed under Apache-2.0. Report a vulnerability privately through GitHub Security Advisories.
Metadata
Release files for diagnos 0.1.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 | |
|---|---|---|---|
| diagnos-0.1.0.tar.gz | 271.7 kB | Details |
Built distributions (wheels)
| File | Reset | |||
|---|---|---|---|---|
| diagnos-0.1.0-cp311-abi3-win_amd64.whl | CPython 3.11 | abi3 | Windows x86-64 | Details |
| diagnos-0.1.0-cp311-abi3-musllinux_1_2_x86_64.whl | CPython 3.11 | abi3 | Linux musl 1.2+ x86-64 | Details |
| diagnos-0.1.0-cp311-abi3-musllinux_1_2_aarch64.whl | CPython 3.11 | abi3 | Linux musl 1.2+ ARM64 | Details |
| diagnos-0.1.0-cp311-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl | CPython 3.11 | abi3 | Linux glibc 2.17+ x86-64 | Details |
| diagnos-0.1.0-cp311-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl | CPython 3.11 | abi3 | Linux glibc 2.17+ ARM64 | Details |
| diagnos-0.1.0-cp311-abi3-macosx_11_0_arm64.whl | CPython 3.11 | abi3 | macOS 11.0+ ARM64 | Details |
| diagnos-0.1.0-cp311-abi3-macosx_10_12_x86_64.whl | CPython 3.11 | abi3 | macOS 10.12+ x86-64 | Details |
Total release size: 5.5 MB
Release files / diagnos-0.1.0.tar.gz
| Download URL | diagnos-0.1.0.tar.gz |
|---|---|
| Size | 271.7 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
3d377d3d504325fe8f3df85875003d220a84049457742285aa5ec3ddd0174363
|
|
BLAKE2b-256 checksum How to use checksums |
98ee3ef068812ee23dcd53e5ec80c8bd7291c8300a1d218778c3ac58dd584f7f
|
| 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 Oct 13, 2026.
Transparency logRelease files / diagnos-0.1.0-cp311-abi3-win_amd64.whl
| Download URL | diagnos-0.1.0-cp311-abi3-win_amd64.whl |
|---|---|
| Size | 634.8 kB |
| Tags | CPython 3.11 Windows x86-64 abi3 |
|
SHA-256 checksum How to use checksums |
67ffeb41d8e81990b87ac2e0697419c97c7293d279d4887bf8ddbfedbf45a023
|
|
BLAKE2b-256 checksum How to use checksums |
c0e39cd3fc5c326f7d49764d58eaf052183c43cce13d82bd1f0d34e8f469da48
|
| 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 Oct 13, 2026.
Transparency logRelease files / diagnos-0.1.0-cp311-abi3-musllinux_1_2_x86_64.whl
| Download URL | diagnos-0.1.0-cp311-abi3-musllinux_1_2_x86_64.whl |
|---|---|
| Size | 922.7 kB |
| Tags | CPython 3.11 Linux musl 1.2+ x86-64 abi3 |
|
SHA-256 checksum How to use checksums |
06de1469e9a81e2811e2cdb10ee2656c339291ad93d105188b3797beaddc6617
|
|
BLAKE2b-256 checksum How to use checksums |
fc2eadb77f9b83190bc92717c0d19de9f9d269008c0770b2c4115bb0fb5f2d8f
|
| 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 Oct 13, 2026.
Transparency logRelease files / diagnos-0.1.0-cp311-abi3-musllinux_1_2_aarch64.whl
| Download URL | diagnos-0.1.0-cp311-abi3-musllinux_1_2_aarch64.whl |
|---|---|
| Size | 870.1 kB |
| Tags | CPython 3.11 Linux musl 1.2+ ARM64 abi3 |
|
SHA-256 checksum How to use checksums |
f0af2e76eb66c1a8a808d8d40f4448b1c4e24cf959dbd34eabd457ad8e19e6d3
|
|
BLAKE2b-256 checksum How to use checksums |
e1ce4e4d8dc5ab178497a840ce6ded194e7782725b08f7f95d9c8dac66970dcc
|
| 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 Oct 13, 2026.
Transparency logRelease files / diagnos-0.1.0-cp311-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
| Download URL | diagnos-0.1.0-cp311-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl |
|---|---|
| Size | 709.6 kB |
| Tags | CPython 3.11 Linux glibc 2.17+ x86-64 abi3 |
|
SHA-256 checksum How to use checksums |
19e74020edda9f92d8718b16766e732350956625c93c64897cc3ab3d2d230358
|
|
BLAKE2b-256 checksum How to use checksums |
4091097241d39b4b0f3ca00e996b6fb5264e663556c838266300f8dcf0870b0c
|
| 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 Oct 13, 2026.
Transparency logRelease files / diagnos-0.1.0-cp311-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
| Download URL | diagnos-0.1.0-cp311-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl |
|---|---|
| Size | 691.1 kB |
| Tags | CPython 3.11 Linux glibc 2.17+ ARM64 abi3 |
|
SHA-256 checksum How to use checksums |
a4fbca8b2cf1113621b102fdf232db5044b43ed06891ea1f353cbbe7e7baac17
|
|
BLAKE2b-256 checksum How to use checksums |
e84b01ecd37ead5dfc25456e5af7bbe3ccc21f1c3f9f46e08e70ac20f1874810
|
| 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 Oct 13, 2026.
Transparency logRelease files / diagnos-0.1.0-cp311-abi3-macosx_11_0_arm64.whl
| Download URL | diagnos-0.1.0-cp311-abi3-macosx_11_0_arm64.whl |
|---|---|
| Size | 667.5 kB |
| Tags | CPython 3.11 abi3 macOS 11.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
8f0a717673248a3b580d8c0d20b2ea00cc8e93211f4381d04e6f01b18c8d1e88
|
|
BLAKE2b-256 checksum How to use checksums |
3b625671b4858e69503ff0cf7134f9ff56b24bca17802e6d74235034fb291092
|
| 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 Oct 13, 2026.
Transparency logRelease files / diagnos-0.1.0-cp311-abi3-macosx_10_12_x86_64.whl
| Download URL | diagnos-0.1.0-cp311-abi3-macosx_10_12_x86_64.whl |
|---|---|
| Size | 697.7 kB |
| Tags | CPython 3.11 abi3 macOS 10.12+ x86-64 |
|
SHA-256 checksum How to use checksums |
5f5fa858ac107d6948a633cca78ee220979406c397b7e54403dfa35cf92e9697
|
|
BLAKE2b-256 checksum How to use checksums |
4163c636f69f259744340c010309600c28212747ac2e3d382ab2c13949e7da32
|
| 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 Oct 13, 2026.
Transparency log