Documentation Index
Fetch the complete documentation index at: https://cobo.com/products/agentic-wallet/manual/llms.txt
Use this file to discover all available pages before exploring further.
Before you start
Complete the CLI quickstart first so your runtime already has a paired wallet, API key, and wallet UUID.
5-minute outcome
- Register
CoboAgentWalletTools with Agno agent
- Submit a pact and wait for owner approval
- Execute success plus denial sequence
- Retry based on denial guidance
- Validate in audit logs
Step 1: Install
pip install "cobo-agentic-wallet[agno]"
export AGENT_WALLET_API_URL=https://api.agenticwallet.cobo.com
export AGENT_WALLET_API_KEY=your-api-key
export OPENAI_API_KEY=your-openai-api-key
Step 3: Create Agno agent
import asyncio
import os
from agno.agent import Agent
from agno.models.openai import OpenAIChat
from cobo_agentic_wallet import WalletAPIClient
from cobo_agentic_wallet.integrations.agno import CoboAgentWalletTools
INCLUDE_TOOLS = [
"submit_pact", "get_pact", "transfer_tokens",
"estimate_transfer_fee", "get_transaction_record_by_request_id", "get_audit_logs",
]
async def main() -> None:
_ = os.environ["OPENAI_API_KEY"] # consumed implicitly by Agno's OpenAIChat
wallet_id = os.environ["AGENT_WALLET_WALLET_ID"]
destination = os.environ.get("CAW_DESTINATION", "0x1111111111111111111111111111111111111111")
prompt = (
f"Use wallet {wallet_id}. Submit a pact for a controlled transfer task and wait until "
f"it is active. Using the newly created pact, transfer 0.001 SETH to {destination} on "
f"SETH. Next, using the same pact, attempt 0.005 SETH. If denied, follow the denial "
f"guidance and retry with a compliant amount. Track the result by request_id and "
f"summarize what happened."
)
async with WalletAPIClient(
base_url=os.environ["AGENT_WALLET_API_URL"],
api_key=os.environ["AGENT_WALLET_API_KEY"],
) as client:
toolkit = CoboAgentWalletTools(client=client, include_tools=INCLUDE_TOOLS)
try:
agent = Agent(
model=OpenAIChat(id="gpt-4.1-mini"),
tools=[toolkit],
markdown=True,
)
response = await agent.arun(prompt)
print(response.content)
finally:
await toolkit.aclose()
asyncio.run(main())
If you want to keep the runtime narrower at first, select a smaller tool subset:
tools = CoboAgentWalletTools(
client=client,
include_tools=[
"submit_pact",
"get_pact",
"transfer_tokens",
"estimate_transfer_fee",
"get_transaction_record_by_request_id",
"get_audit_logs",
],
)
Step 4: Validate behavior
Look for:
- pact submission and activation confirmation
- successful first transfer
- denial details surfaced as tool output
- corrected retry
- audit confirmation
Go further
CoboAgentWalletTools gives you the widened CAW runtime toolkit as Agno-native tools. You can extend it:
- Write custom Agno tools — subclass or define additional tool functions backed by
WalletAPIClient for your specific use case (e.g. multi-step DeFi flows, price-conditional transfers). Register them alongside CoboAgentWalletTools.
- Use the Python SDK for structured operations — call
WalletAPIClient directly outside the agent for operations that need deterministic outcomes: pact management, batch queries, and policy dry-runs.
- Pair with CLI for onboarding and ops — use
caw for provisioning and debugging without touching agent code.
- Use role-based presets — start with Pact Drafting, Execution, and Observer responsibilities rather than giving every agent the full toolkit.
Python SDK
Use WalletAPIClient directly for custom tool functions.