Python SDK for ZeroQuant agentic DeFi vaults
Project description
ZeroQuant Python SDK
Python SDK for ZeroQuant agentic DeFi vaults with built-in LangChain support.
Installation
pip install zeroquant
With LangChain support
pip install zeroquant[langchain]
Quick Start
import asyncio
from zeroquant import ZeroQuantClient
from zeroquant.models import VaultConfig
async def main():
client = ZeroQuantClient(
provider="https://sepolia.infura.io/v3/YOUR_KEY",
config=VaultConfig(
owner="0x...",
permission_manager="0x...",
factory_address="0x..."
),
private_key="0x..."
)
# Create vault
vault_address = await client.create_vault(salt=12345)
print(f"Vault created: {vault_address}")
# Check balance
balance = await client.get_balance()
print(f"Balance: {balance / 10**18} ETH")
asyncio.run(main())
LangChain Integration
from langchain.agents import initialize_agent, AgentType
from langchain.chat_models import ChatOpenAI
from zeroquant.langchain import CreateVaultTool, ExecuteSwapTool, GetVaultBalanceTool
tools = [
CreateVaultTool(client=client),
ExecuteSwapTool(client=client, swap_intent=swap_intent),
GetVaultBalanceTool(client=client)
]
agent = initialize_agent(
tools,
ChatOpenAI(model="gpt-4"),
agent=AgentType.OPENAI_FUNCTIONS
)
result = agent.run("Create a vault and swap 1 ETH for USDC")
Authentication Modes
1. Agent Wallet
client = ZeroQuantClient(
provider="https://...",
config=config,
private_key="0x..." # Agent's private key
)
2. Delegated Signing
client = ZeroQuantClient(
provider="https://...",
config=config,
session_key="0x...",
delegation_proof="0x..."
)
3. API Key
client = ZeroQuantClient(
provider="https://...",
config=config,
api_key="zq_live_...",
api_url="https://api.zeroquant.io"
)
Features
- Async-first - Built with asyncio for efficient I/O
- Type-safe - Full Pydantic models with validation
- LangChain tools - Built-in tools for AI agents
- Multi-modal auth - Wallet, delegated, or API key
- Comprehensive - Feature parity with TypeScript SDK
Examples
See examples/ directory for complete examples:
basic_swap.py- Create vault and execute swaplangchain_agent.py- LangChain agent with ZeroQuant tools
Documentation
Full documentation: https://docs.zeroquant.io
License
MIT
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
zeroquant_sdk-0.1.0.tar.gz
(22.1 kB
view details)
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 zeroquant_sdk-0.1.0.tar.gz.
File metadata
- Download URL: zeroquant_sdk-0.1.0.tar.gz
- Upload date:
- Size: 22.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
7be06e10fcba6d74f467da29462cff43c5f60cdb725e2ebd3b4e8c4117aff3f3
|
|
| MD5 |
7ddeb12144b2b494c34b4fce6f8d4479
|
|
| BLAKE2b-256 |
cb30c185bf93aba02f51e447a6318383291c7e465f1a0fd330f5f6aa6832fbd2
|
File details
Details for the file zeroquant_sdk-0.1.0-py3-none-any.whl.
File metadata
- Download URL: zeroquant_sdk-0.1.0-py3-none-any.whl
- Upload date:
- Size: 17.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
8690db35ebb07d43381943cf50895f0cb932fc64703bcea0812fccac39a70032
|
|
| MD5 |
8f890955adf3b391eaff2ddbb28ad602
|
|
| BLAKE2b-256 |
835a3e2058d3dd00abe0f8d5b4d8de8d22982d3a2dcadab63edff04954790de9
|