# Architecture

Squid is built around one principle: blockchains are settlement layers, not execution layers. Everything that can be handled offchain, is. Squid Intents is the intent-based settlement protocol at the core of this architecture. It takes what you want to do and handles all the coordination, routing, and verification offchain, so the chain only ever sees what must be true in any trade: a token transfer.

Because execution logic lives offchain rather than in smart contracts deployed on individual chains, Squid is not constrained by which chains support smart contracts. This is what gives Squid access to any chain and any token, including Bitcoin, Solana, XRPL, and beyond.

### The Execution Engine

Squid Intents uses TEE-verified settlement. A TEE is a sealed environment inside a processor where code runs in hardware-enforced isolation, producing a cryptographic proof that execution was correct. Squid's TEEs are powered by Cubist, who have secured over $10B and maintain decentralized upgrade and deployment pathways.

<figure><img src="/files/aVMysY4W7Ve0lqlUWcTq" alt=""><figcaption></figcaption></figure>

### How a Transaction Gets Routed

1. **You submit your intent via the Squid API, SDK, or widget.** You receive the best quote, sign, and deposit on the source chain.
2. **The Squid API opens an offchain RFQ auction. Market makers compete in real time to fill your order.** The winning market maker fills the order on the destination chain and submits proof to the TEE.
3. **The TEE verifies the fill and signs the release. Funds are released to the market maker on the source chain.**
4. **You receive your tokens on the destination chain once settled. Only a token transfer ever touched the chain.** If anything fails, you are automatically refunded on the source chain within 15 minutes.

<figure><img src="/files/fmpS0Jf0cboLBjyHqdtF" alt=""><figcaption></figcaption></figure>


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.squidrouter.com/additional-resources/architecture.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
