Shepherd-Client
Shepherd Nova Testbed: https://testbed.nes-lab.org/
Testbed-WebAPI: https://shepherd.cfaed.tu-dresden.de:8000
Source Code: https://github.com/nes-lab/shepherd-webapi
Main Project: https://github.com/nes-lab/shepherd
The Testbed-Client links the user to the testbed. It's written in Python and uses http-requests to communicate with the web-API. As the source is open, you can modify and extend it as you like. You could also write your own tools based on these few hundred lines of code.
Features
- register & delete an account
- query user information
- create, schedule, query state of experiments
- download results
In the near future, the functionality will be extended to:
- list content like available energy environments, firmwares, virtual power sources (currently hardcoded in shepherd-core)
- query the testbed data-model (currently hardcoded in shepherd-core)
- query state of the observers (last seen alive)
- query statistics on the scheduler-queue
- CLI
Getting started
Install
You can install the client by using the package-manager of your choice. In the following example we show pip and uv:
pip3 install shepherd-client -U
# or modern uv with automatic virtual environment
uv pip install shepherd-client -U
Newest features can be obtained by directly installing from GitHub:
uv pip install git+https://github.com/nes-lab/shepherd-webapi.git@main#subdirectory=shepherd_client
Usage
The current interface is introduced in 5 short examples in the example-directory.
Release files for shepherd-client 2026.7.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| shepherd_client-2026.7.1.tar.gz | 9.3 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| shepherd_client-2026.7.1-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 21.2 kB
Release files / shepherd_client-2026.7.1.tar.gz
| Download URL | shepherd_client-2026.7.1.tar.gz |
|---|---|
| Size | 9.3 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
e38c56d8bee60a2a3be6f9095086cd41344964e5b6f8a880cf8d50fbd53d3bc5
|
|
BLAKE2b-256 checksum How to use checksums |
5d8d8be02c5ea61b0aafa43577399bcfda87878bdfe94728f62bab5e58ad61d2
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.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 Jul 21, 2026.
Transparency logRelease files / shepherd_client-2026.7.1-py3-none-any.whl
| Download URL | shepherd_client-2026.7.1-py3-none-any.whl |
|---|---|
| Size | 12.0 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
4b1d26082062018e8e249c6e9c2baebd2ac2b9f322d2185d5161f1897390b411
|
|
BLAKE2b-256 checksum How to use checksums |
bca2b3316cd5b0b08939ea4dfb80e8f43c976a807b3a4769496f736b7f86c3f9
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.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 Jul 21, 2026.
Transparency log