DZap is layered. Each layer has a clear contract; layers below don’t depend on layers above.Documentation Index
Fetch the complete documentation index at: https://docs.dzap.io/llms.txt
Use this file to discover all available pages before exploring further.
Surface layer
What integrators touch:- App —
app.dzap.io, the user-facing web app. - SDK —
@dzapio/sdkfor TypeScript apps. - API — REST endpoints at
api.dzap.io(Trade) andzap.dzap.io(Fuse). - MCP server — exposes every tool to LLM clients.
- CLI —
dzapaifor terminal-driven operations. - Skills — context bundles for AI editors (Cursor, Claude Code).
Reasoning layer
What ZapBot does between input and routing:- Tool selection — picks the right tool from the catalog based on intent.
- Plan generation — surfaces a plan before execution for write operations.
- Memory — short-term per-session, optional long-term per-user.
Routing engine
The heart. For every quote, the engine evaluates routes across:- DEX aggregators (ParaSwap, OKX, 1inch, …).
- Bridges (Across, Mayan, Allbridge, …).
- Native DEXs (when they beat the aggregators).
Execution layer
What lands on-chain:- DZapDiamond — the per-chain router. Single trusted spender. See Smart Contract Addresses.
- Permit2 — gasless approvals. Canonical address
0x000000000022D473030F116dDEE9F6B43aC78BA3on most EVM chains. - Bridge relayers — the actual cross-chain message carriers (Across CCIP, Mayan Wormhole, Chainflip, …).
Where the layers split
Different teams own different layers — deliberately. The routing engine doesn’t know about the surface; the execution layer doesn’t know about the reasoning layer. This makes:- The surface easy to extend (new SDKs, new clients).
- The execution layer easy to audit (no business logic mixed in).
- The reasoning layer easy to swap (different agents, different LLMs).