Official AMEIDE Python SDK
Project description
Ameide Python SDK
ameide-sdk-python ships the unified AmeideClient with defaults and service coverage defined in sdk/README.md and sdk/manifest/ameide-client.json.
Install
- Buf BSR (primary registry): configure Buf auth in
~/.netrc(or setPIP_NETRC=1+NETRC=...) and install from the Buf Python index:cat >~/.netrc <<'NETRC' machine buf.build login user password ${BUF_TOKEN:?set BUF_TOKEN to a Buf API token} NETRC PIP_EXTRA_INDEX_URL=https://buf.build/gen/python \ pip install ameide-sdk-python==<version>
- GitHub Packages mirror:
pip install \ --extra-index-url https://<USER>:<PAT>@pypi.pkg.github.com/ameideio/simple/ \ --index-url https://pypi.org/simple \ ameide-sdk-python==<version>
- GHCR (OCI) mirror for air-gapped installs:
printf '%s' "${PAT_WITH_READ_PACKAGES}" | oras login ghcr.io --username "${GITHUB_USER}" --password-stdin VERSION=<version> oras pull ghcr.io/ameideio/ameide/ameide-sdk-python:${VERSION} wheel_path=$(find . -name 'ameide-sdk-python-*.whl' -print -quit) pip install "${wheel_path}"
Tokens & handling
- PAT scope:
read:packages(addwrite:packagesonly when publishing). - Local dev: keep the PAT in
.envand feed it to pip (PIP_INDEX_URL/PIP_EXTRA_INDEX_URL) or inline in the mirror URL; never commit credentials. - CI: store the PAT in repo/org secrets (e.g.,
PKG_GITHUB_COM_TOKEN) and inject at runtime for mirror installs; PyPI publishes usePYPI_TOKEN.
Usage
from ameide_sdk.client import AmeideClient
client = AmeideClient(
endpoint="api.ameide.io:443",
tenant_id="...",
user_id="...",
auth=lambda: "...token...",
)
The client supports async/sync auth providers, tracing, retries, timeouts, tenant/user metadata, request-id injection, and transport overrides via channel or channel_factory.
Optional helper factory: create_element_service(client.graph) yields convenience methods for elements/relationships without mutating the core client surface.
Integration settings
Integration tests read INTEGRATION_GRPC_ADDRESS (or NEXT_CORE_GRPC_URL), plus INTEGRATION_TENANT_ID, INTEGRATION_USER_ID, INTEGRATION_ORGANIZATION_ID, and INTEGRATION_BEARER_TOKEN; enable with RUN_INTEGRATION_TESTS=1. See sdk/README.md for the full option contract.
Notes
- Import stubs directly from
ameide_core_proto.*; legacyameide_sdk.generated.*paths have been removed. - The wheel bundles the generated proto/gRPC code so no additional Buf wheels or registry credentials are required beyond the registry hosting
ameide-sdk-python. - Align release/process documentation with
backlog/388-ameideio-sdks.mdand keep AmeideClient behavior in sync withsdk/README.md.
Development (no committed generated code)
- Generate stubs locally when working from source:
./packages/ameide_sdk_python/scripts/gen_protos.sh(requiresbufand the core proto workspace present). - CI runs the same generation step before packing/tests; the generated files stay git-ignored but are included in the wheel/sdist.
Versioning
- Source version stays
0.0.0in Git. CI copies the package to a temp dir, stampspyproject.tomlwith the tag-derived version, and runsuv build/uv publish. No committedVERSIONfile or env override participates in version resolution. - Local builds keep
0.0.0(for ad-hoc/dev use only). The published artifacts always carry the tag-derived version.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file ameide_sdk_python-0.1.15.dev20251124.tar.gz.
File metadata
- Download URL: ameide_sdk_python-0.1.15.dev20251124.tar.gz
- Upload date:
- Size: 143.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.9.11 {"installer":{"name":"uv","version":"0.9.11"},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
e9fdce3395d72483da3e5f88056630e74b34e058d5afc783fd425ebc05f68a95
|
|
| MD5 |
ec777cd874da03e16c73ee5af4bcd643
|
|
| BLAKE2b-256 |
eae50283599a5f83a08df6e6f078b2a0da1fbcfa310345c662910f0c7e804b45
|
File details
Details for the file ameide_sdk_python-0.1.15.dev20251124-py3-none-any.whl.
File metadata
- Download URL: ameide_sdk_python-0.1.15.dev20251124-py3-none-any.whl
- Upload date:
- Size: 188.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.9.11 {"installer":{"name":"uv","version":"0.9.11"},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
fbf7c7c519462dab1c359d6477c9bc5f5e28695c4777c87ae0c8e66059ef1e0d
|
|
| MD5 |
0eced38900c35db2951f708ae84b5ab1
|
|
| BLAKE2b-256 |
fa407e1dab3e92a16be732b0d1baf013e6b71017bbc9fd32781b0cac2e35dac2
|