- your runtime gets an API key, not raw private keys
- the wallet owner pairs once in the Cobo Agentic Wallet app
- your runtime submits a pact for a task
- CAW enforces policy rules and approval escalation server-side
Canonical path
If you want the fastest path from zero to a real runnable flow, use this sequence:- Install the
cawCLI - Pair with the owner wallet using a pairing code
- Run the first program in Python or TypeScript
- Submit a pact, wait for approval, execute a blockchain action, and inspect audit logs
CLI Setup
Download
caw, pair with the owner wallet, and verify your local setup.Python Hello World
Run the canonical Python quickstart with pact submission, denial handling, and audit logs.
TypeScript Hello World
Run the canonical TypeScript quickstart with the same end-to-end flow.
Pacts
Understand the authorization object your runtime operates within.
Most developers should ignore the advanced integration modes at first. Start in standard Agent Mode: your runtime integrates with CAW, and Cobo provides the owner-facing pairing, policy, and approval surfaces. Core Mode and Owner Mode exist, but they are available upon request.
First run outcome
After the canonical path, your runtime should have:- one paired wallet it can inspect and operate
- one pact approved by the owner
- one successful blockchain action
- one denied action with structured retry guidance
- one audit trail you can inspect programmatically
Choose your language first
The primary onboarding branch is language, not framework.- Python
- TypeScript
Use this if your runtime logic is Python-first or you expect to adopt LangChain, OpenAI Agents SDK, Agno, or CrewAI later.
- Run CLI Setup
- Run Python SDK
- Expand to LangChain, OpenAI Agents SDK, Agno, or CrewAI
What you get
Across the canonical flow, CAW gives your runtime:- scoped onchain authority through pacts
- server-side policy enforcement
- owner approval when thresholds are crossed
- audit logs and structured denial feedback
- MPC signing without exposing key material to your code
Start with a narrow tool subset
Do not hand your runtime all 20 tools on day one unless it truly needs them. A narrower tool set is easier to prompt, easier to review, and safer to operate. Start with one of these presets:- Pact Drafting —
submit_pact,get_pact,list_pacts - Execution —
transfer_tokens,contract_call,estimate_transfer_fee,estimate_contract_call_fee,get_transaction_record_by_request_id - Observer —
list_wallets,get_wallet,get_balance,list_transaction_records,get_audit_logs
- one path to request scoped authority
- one path to perform approved blockchain actions
- one path to inspect state, track results, and explain what happened
Add a framework only after the hello world works
Once the hello-world path works, choose the surface that fits your runtime:- Python SDK — the primary async path for custom logic and long-running runtimes.
- TypeScript SDK — the primary typed Node.js path for backend services and agent runtimes.
- MCP Server — best when your client already speaks MCP.
- LangChain / OpenAI Agents SDK — good when you want one framework path that can work in Python or TypeScript.
- Vercel AI SDK / Mastra — good when your runtime is TypeScript-first.
- Agno / CrewAI — good when you already have a Python framework loop and want CAW tools inside it.
Python SDK
Canonical Python hello-world flow.
TypeScript SDK
Canonical TypeScript hello-world flow.
MCP Server
Wallet tools for MCP-compatible clients.
LangChain
Use CAW with LangChain in Python or TypeScript.
OpenAI Agents
Use CAW with OpenAI Agents SDK in Python or TypeScript.
Vercel AI SDK
Build CAW-backed tools for TypeScript agent flows.
Mastra
Build TypeScript agents with CAW-backed tools.
Agno
Inject wallet tools into an Agno agent.
CrewAI
Inject wallet tools into a CrewAI crew.
Where advanced modes fit
If you are only building an agent, bot, or automation, stay on the standard developer path above.- Agent Mode — default path in these docs; available now
- Core Mode — for teams that want the core engine without the standard owner-facing product; available upon request
- Owner Mode — for teams building their own owner interface; available upon request