HOL HCS SDK (Python)
| Python reference implementation of the Hiero Consensus Specifications (HCS) and Registry Broker utilities with parity against the TypeScript and Go SDKs. 📚 Standards SDK Documentation 📖 Hiero Consensus Specifications Documentation |
|---|
Quick Start
cd standards-sdk-py
python -m venv .venv
source .venv/bin/activate
pip install -e ".[dev]"
pytest -q
Install
pip install standards-sdk-py
conda install -c hashgraph-online standards-sdk-py
Multi-Language SDK Links
Canonical SDK docs URL: https://hol.org/docs/libraries/standards-sdk/
| Language | Package | Source | Canonical Documentation |
|---|---|---|---|
| TypeScript | @hol-org/standards-sdk |
hashgraph-online/standards-sdk | https://hol.org/docs/libraries/standards-sdk/ |
| Go | github.com/hashgraph-online/standards-sdk-go |
hashgraph-online/standards-sdk-go | https://hol.org/docs/libraries/go-sdk/overview |
| Python | standards-sdk-py |
hashgraph-online/standards-sdk-py | https://hol.org/docs/libraries/python-sdk/overview |
Developer Tooling
cd standards-sdk-py
.venv/bin/pre-commit install
.venv/bin/pre-commit run --all-files
Documentation
For standards and API documentation:
- Standards SDK Documentation
- HCS Standards Documentation
- Libraries.io Package Page
- piwheels Package Page
Citation and Archival
- Citation metadata:
CITATION.cff - Zenodo metadata:
.zenodo.json - Software Heritage origin: https://archive.softwareheritage.org/browse/origin/?origin_url=https://github.com/hashgraph-online/standards-sdk-py
Supported Packages
| Package | Coverage |
|---|---|
standards_sdk_py.hcs2 |
HCS-2 registry topic creation, indexed entry operations, memo helpers, mirror reads. |
standards_sdk_py.hcs3 |
HCS-3 recursive file loading helpers. |
standards_sdk_py.hcs5 |
HCS-5 hashinal inscription and minting helpers. |
standards_sdk_py.hcs6 |
HCS-6 non-indexed registry creation, registration helpers, memo helpers. |
standards_sdk_py.hcs7 |
HCS-7 indexed registry and metadata registration helpers. |
standards_sdk_py.hcs10 |
HCS-10 topic/message builders and communication helpers. |
standards_sdk_py.hcs11 |
HCS-11 profile models/builders, validation, inscription helpers. |
standards_sdk_py.hcs12 |
HCS-12 action/assembly/hashlinks helpers. |
standards_sdk_py.hcs14 |
HCS-14 UAID parsing and resolution helpers. |
standards_sdk_py.hcs15 |
HCS-15 account creation and memo helpers. |
standards_sdk_py.hcs16 |
HCS-16 flora account/topic/message helpers. |
standards_sdk_py.hcs17 |
HCS-17 state-hash helpers. |
standards_sdk_py.hcs18 |
HCS-18 discovery topic/message helpers. |
standards_sdk_py.hcs20 |
HCS-20 points message and validation helpers. |
standards_sdk_py.hcs21 |
HCS-21 adapter declaration helpers. |
standards_sdk_py.hcs26 |
HCS-26 memo parser/resolver helpers. |
standards_sdk_py.hcs27 |
HCS-27 checkpoint helpers. |
standards_sdk_py.inscriber |
Inscriber auth, quote, submit, and polling workflows. |
standards_sdk_py.registry_broker |
Full Registry Broker client (search, adapters, registries, credits, verification, chat/encryption, skills, ledger auth). |
standards_sdk_py.mirror |
Mirror node client used by standards and inscriber modules. |
standards_sdk_py.shared |
transport, config, network/operator helpers, and shared typing. |
CodeSandbox Examples
- Examples index
- standards-sdk-discovery
- registry-broker-free-tier-registration
- hcs2-create-registry
- hcs5-build-mint
- hcs6-create-registry
- hcs7-register-metadata
- hcs10-build-message
- hcs11-build-agent-profile
- hcs12-build-register
- hcs14-parse-uaid
- hcs15-build-account-tx
- hcs16-build-flora-topic-tx
- hcs17-build-state-message
- hcs18-build-announce
- hcs20-deploy-points
- hcs21-build-declaration
- hcs26-parse-memos
- hcs27-publish-checkpoint
- inscriber-auth-client
- mirror-topic-messages
- registry-broker-skill-domain-proof
- registry-broker-uaid-dns-verification
Environment Variables
Common:
HEDERA_NETWORKHEDERA_ACCOUNT_IDorHEDERA_OPERATOR_IDHEDERA_PRIVATE_KEYorHEDERA_OPERATOR_KEY
Network-scoped overrides:
TESTNET_HEDERA_ACCOUNT_IDTESTNET_HEDERA_PRIVATE_KEYMAINNET_HEDERA_ACCOUNT_IDMAINNET_HEDERA_PRIVATE_KEY
Registry Broker:
REGISTRY_BROKER_BASE_URLREGISTRY_BROKER_API_KEYREGISTRY_BROKER_LEDGER_API_KEY
Inscriber integration:
RUN_INTEGRATION=1RUN_INSCRIBER_INTEGRATION=1
Tests
Unit and contract tests:
cd standards-sdk-py
.venv/bin/pytest -q
Parity checks:
cd standards-sdk-py
.venv/bin/standards-sdk-py-generate-inventory --repo-root ..
.venv/bin/standards-sdk-py-check-parity
Live testnet inscriber end-to-end:
cd standards-sdk-py
cp ../standards-sdk/.env ./.env
pip install hedera-sdk-py
set -a
source <(grep -E '^[A-Za-z_][A-Za-z0-9_]*=' ./.env)
set +a
export RUN_INTEGRATION=1
export RUN_INSCRIBER_INTEGRATION=1
.venv/bin/pytest -m integration -k inscriber_registry_broker_end_to_end_testnet -vv -rs
Live testnet HCS-2 end-to-end:
cd standards-sdk-py
export RUN_INTEGRATION=1
export RUN_HCS2_INTEGRATION=1
export HEDERA_NETWORK=testnet
export TESTNET_HEDERA_ACCOUNT_ID="<your-testnet-account-id>"
export TESTNET_HEDERA_PRIVATE_KEY="<your-testnet-private-key>"
.venv/bin/pytest -m integration -k hcs2_end_to_end_testnet -vv -rs
Notes:
- Set
HEDERA_NETWORK=testnet(and do not set a conflictingINSCRIBER_HEDERA_NETWORK). - The test uses ledger challenge auth from your testnet credentials to avoid accidentally using a mainnet-scoped API key.
CI/CD and Security
- Python matrix CI (
3.11,3.12,3.13) forruff,black,mypy, unit tests, parity checks, and package validation. - Security workflows for dependency review,
pip-audit, Bandit SARIF upload, CodeQL, and verified TruffleHog secret scanning. - Release workflow for build +
twine check, TestPyPI/PyPI trusted publishing, checksum artifacts, provenance attestations, and GitHub release notes. - Conda workflow for building packages and uploading to
anaconda.org/hashgraph-onlinewhenANACONDA_API_TOKENis configured. - Release indexing automation verifies PyPI + Libraries.io pages and submits a Software Heritage save request.
Contributing
Open issues or pull requests in the repository:
Security
For disclosure and response policy, see SECURITY.md.
Maintainers
Maintained by HOL.
Resources
📝 Blog Tutorials
- Building a Decentralized Registry with Go & HCS-2
- HCS-14: Profiles and Agent AID Resolution
- ERC-8004: Trustless Agent Registry
- Universal Agent Discovery with MCP
License
MIT
Metadata
Release files for standards-sdk-py 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 | Provenance | |
|---|---|---|---|---|
| standards_sdk_py-0.1.13.tar.gz | 351.0 kB | With provenance | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| standards_sdk_py-0.1.13-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 520.8 kB
Release files / standards_sdk_py-0.1.13.tar.gz
| Download URL | standards_sdk_py-0.1.13.tar.gz |
|---|---|
| Size | 351.0 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
1ae0fa7aa27d8ea184eaf5b4b5279ee501e6111b01cf6f6b570717f0270e182c
|
|
BLAKE2b-256 checksum How to use checksums |
3deea4a8eba048e1a62d86277828e26de014e1610c439b9ece85fd55905dd686
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.7
|
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 Apr 5, 2026.
Transparency logRelease files / standards_sdk_py-0.1.13-py3-none-any.whl
| Download URL | standards_sdk_py-0.1.13-py3-none-any.whl |
|---|---|
| Size | 169.8 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
5c59a9e651e89b82efdd9063a078da0a2a05ef131120f0cc57be583c887ccf70
|
|
BLAKE2b-256 checksum How to use checksums |
04d3600f9cbda2762a1da4c48aae2e5a83c6b65646d7b73ffc08050a7677d545
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.7
|
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 Apr 5, 2026.
Transparency logSecurity for standards-sdk-py 0.1.13
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.
Full provenance
All 2 files in this release have been uploaded with provenance metadata.
Attestation for standards_sdk_py-0.1.13.tar.gz
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 Apr 5, 2026.
Transparency logA 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.