Anyverse ADP CLI and Python SDK
anyverse-adp provides the adp-cli command and a read-only Python SDK for reading the Anyverse Data Platform's registered LeRobot catalog and exporting Episode metadata CSV files.
Install it with pip install anyverse-adp. Create a Platform API Key with episodes:read, then configure it with an environment variable or reuse the CLI's secure ~/.adp-cli/config.toml.
adp-cli list
adp-cli --version
adp-cli browse
adp-cli info <dataset-slug>
adp-cli export <dataset-slug> <collection-key> --region <region> --output <directory-or-file.csv>
adp-cli browse is an inline terminal selector. It redraws a single Anyverse Data Platform CLI panel in the current terminal so the selected Dataset, Collection, region, and latest result stay together. Use Up/Down and Enter to select a Dataset, Collection, region, and export mode; type in Dataset and Collection menus to filter choices, and use Backspace to clear the filter. Press Esc to return to the previous level (or exit from Dataset). After a dry-run or completed export, its result remains visible and the selector offers continue or exit. It does not open a full-screen UI or switch to an alternate terminal screen.
The command reads catalog metadata, including the selected Artifact oss://bucket/prefix/ root in the oss_location CSV column, the Episode UUID, and video_refs keyed by the original camera/view feature name. Each video reference contains its stable OSS path and indexed start/end offsets in nanoseconds. It does not read or download dataset objects, expose raw annotations, or grant object-storage access.
Python SDK
The SDK uses a synchronous Client and lazy resource handles. Creating handles does not make a network request; iterating a collection or LeRobot reads pages as needed.
from anyverse_adp import AdpError, Client
client = Client() # explicit api_key, ADP_API_KEY, ADP_CLI_API_KEY, then ~/.adp-cli/config.toml
try:
dataset = client.get_dataset("agibot_world")
collection = dataset.get_collection("raw")
for lerobot in collection.get_lerobots():
for episode in lerobot:
print(lerobot.artifact_id, episode.index)
except AdpError as exc:
print(f"catalog request failed: {exc}")
finally:
client.close()
The default endpoint is https://data-platform.cloud.anyverse.work and the default region is cn-shanghai. Pass endpoint=, region=, or api_key= to override them. API Key precedence is explicit api_key, ADP_API_KEY, ADP_CLI_API_KEY, then the CLI config file ~/.adp-cli/config.toml. The SDK reads that file only, preserves its permission and symlink checks, never prompts, and never writes it.
Use client.get_episode(artifact_id, episode_index) or lerobot.get_episode(episode_index) for one Episode. This may scan multiple API pages because the current Platform API exposes cursor pagination rather than a direct index lookup. SDK failures are subclasses of AdpError; call client.close() when the client is no longer needed. The SDK only reads catalog metadata and does not download OSS objects.
可直接运行的完整示例位于 examples/sdk_catalog.py:
ADP_API_KEY='<完整 API Key>' \
python packages/anyverse-adp/examples/sdk_catalog.py agibot_world --collection raw
Metadata
Release files for anyverse-adp 0.3.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 | Provenance | |
|---|---|---|---|---|
| anyverse_adp-0.3.0.tar.gz | 19.8 kB | Without provenance | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| anyverse_adp-0.3.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 43.6 kB
Release files / anyverse_adp-0.3.0.tar.gz
| Download URL | anyverse_adp-0.3.0.tar.gz |
|---|---|
| Size | 19.8 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
28645c61c62072613937c88dbc4eae1e08c05a8863befc89f5b1f4e81de275fd
|
|
BLAKE2b-256 checksum How to use checksums |
07d64653c72bd72ca9f5219d892d6a9c8d5553c9b13553b94b23bc4c328b7c9f
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.11.13 {"installer":{"name":"uv","version":"0.11.13","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
|
Release files / anyverse_adp-0.3.0-py3-none-any.whl
| Download URL | anyverse_adp-0.3.0-py3-none-any.whl |
|---|---|
| Size | 23.8 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
7fdedec2dd8fa75bc0c29d34087b144272a5cb547ca1b1faff59ed18a9882402
|
|
BLAKE2b-256 checksum How to use checksums |
f117cd6e4490f2056c25d5b4af136d0e664245d790c2b8e6de65f6a81c121191
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.11.13 {"installer":{"name":"uv","version":"0.11.13","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
|
Security for anyverse-adp 0.3.0
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.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.