Releases: KashDAO/protocol-sdk-python
Releases · KashDAO/protocol-sdk-python
v0.1.0b1
Initial public beta release.
Added
- Two co-equal trading modes — pythonic parity with the TS
@kashdao/protocol-sdk:create_eoa_client(...)— vanilla EIP-1559 from a plain EOA. The
canonical Hummingbot path. No bundler, no smart account, no
ERC-4337 overhead. Bring a private key and an RPC URL.create_smart_account_client(...)— ERC-4337 v0.7 via SimpleAccount.
For users on AA stacks (Privy, Coinbase Smart Wallet, Pimlico).
Add a bundler URL to the EOA shape.
- Signer adapters —
viem_account_eoa_signer(...)accepts an
eth_account.Accountdirectly; bring-your-own implementations of
theEoaSignerprotocol for HSM / Fireblocks / AWS-KMS integrations. - Markets, quotes, trades — symmetric API across both
client types:client.markets.get(addr),client.markets.quote(addr, params)client.trades.build_buy(...),client.trades.build_sell(...),
client.trades.simulate(...),client.trades.send(...)
- Chain support — Base Sepolia (84532) for testnet integration
today. Base mainnet (8453) is registered inKNOWN_CHAIN_IDSbut
not yet inSUPPORTED_CHAIN_IDS;get_protocol_addresses(8453)
raises a clearKashConfigError(code="CHAIN_NOT_DEPLOYED")with
the testnet workaround rather than silently routing reads at the
zero address. - Typed errors —
KashConfigError,KashRpcError,
KashSignerError,KashContractRevertError,KashBundlerError,
KashSimulationError. Each carries a stablecode(matches the
TS SDK) and structuredcontextfor programmatic handling. - Cross-language parity — public surface mirrors
@kashdao/protocol-sdk
(TypeScript) modulocamelCase↔snake_case. The
tests/parity/suite asserts byte-equal typed-hash outputs and
contract-call encodings across both SDKs to catch drift. - Examples —
examples/eoa/(quote-and-buy, watch-market) and
examples/smart_account/(quote-and-buy, buy-with-simple-account). - Hummingbot integration guide —
HUMMINGBOT_INTEGRATION.md
walks through a complete Hummingbot connector implementation. - Type hints throughout —
py.typedshipped;mypy --strict
clean. Pydantic v2 models for all request/response types. web3.py-based — async support viaweb3.AsyncHTTPProvider.
Works with Python 3.10–3.13.
Beta status
The b1 (beta-1) marker reflects two gating constraints:
- Mainnet contracts are not yet deployed (only Base Sepolia is
SUPPORTED). The non-final version signals to users that the
contract surface MAY shift before the protocol locks mainnet
addresses. - External-integrator validation — we want 30 days of usage by
non-Kash teams before promoting to0.1.0stable.
The Python public API (function signatures, exported symbols, typed
error contracts) is locked at 0.1.0b1 — any breaking changes will
bump to 0.2.0 with a deprecation period.