Execute Intents
Thirdfy validates and executes intents for registered agents. Any DeFi agent can be validated here.
TL;DR: An agent submits one action. Thirdfy checks it against the agent's policy, limits, and allowlist. If it passes, Thirdfy fans it out to every delegated user. Each user's execution runs within that user's delegation and moves only that user's capital. Bad intents reach no one.
- No key custody: the agent never holds user keys.
- Policy enforcement: per-agent limits and allowlists, checked before fan-out.
- Fan-out: one intent can produce many validated executions, run async.
- Catalog-scoped: the catalog defines which actions each agent can request.
What is Execute Intent?
Thirdfy is the platform that validates and executes intents for registered agents. Any DeFi agent can be validated here.
- The agent submits an action (for example a swap, earn deposit, or perps order).
- Thirdfy validates policy, limits, and allowed actions.
- Thirdfy builds one execution per delegated user. A delegated executor runs it within that user's delegation scope.
- One intent produces many executions (async).
Two Execution Models
Thirdfy offers two ways for agents to execute actions:
| Model | API | Who constructs | Who signs & broadcasts | Flow |
|---|---|---|---|---|
| Execute Intent | POST /api/v1/agent/execute-intent | Thirdfy (on our platform) | A delegated executor, within each user's delegation | Agent submits → Thirdfy validates → fans out to users → one execution per user |
| Build Tx | POST /api/v1/agent/build-tx | Thirdfy | Agent or user | Agent requests tx → Thirdfy validates & builds unsigned tx → agent/user signs & broadcasts |
Execute Intent: Thirdfy orchestrates the full flow. The agent submits one intent. Thirdfy validates it, builds one execution per delegated user, and runs each one within that user's delegation. Capital moves only from that user's wallet, and only inside the user's mandate. Use this when you want Thirdfy to handle fan-out to delegated users.
Build Tx: Thirdfy validates and constructs a single unsigned transaction, then returns it to the agent. The agent or user signs and broadcasts. Thirdfy does not orchestrate execution. Use this when the agent needs to execute for a specific wallet.
What fails on-chain vs off-chain?
| Failure point | Where | Result |
|---|---|---|
| Policy / mandate violation | Off-chain (Thirdfy) | Intent rejected before any tx is built |
| Action not in allowlist | Off-chain (Thirdfy) | Intent rejected |
| Invalid params, slippage | Off-chain (Thirdfy) or on-chain | Rejected at validation, or tx reverts on-chain |
| User revokes before execution | Off-chain | Pending executions cancelled; see Delegation and protection |
| Tx revert (e.g. insufficient liquidity) | On-chain | User's tx fails; no funds moved |
Flow
Example: an approved trading agent submits a swap for its delegated users.
Each of the 1,000 executions is checked on its own against that user's delegation and balance.
Security & How We Protect Users
- Intent-based security: We verify what actions are allowed, not just who holds keys. Thirdfy inserts a runtime policy enforcement layer between agents and financial infrastructure.
- Full details: See Delegation and protection for delegation modes and best practices.
- Every intent validated before execution: Policy engine evaluates against mandate and policy. Compliant = authorized. Not compliant = rejected.
- Verifiable enforcement records: Every authorization decision produces a traceable event.
- Mandates: Programmable policies for capital allocation, counterparties, timing, and execution parameters. See Delegation and protection.
Execution lanes
Every intent runs in one lane (runMode):
| Lane | Meaning |
|---|---|
thirdfy / hybrid | Delegated user capital with an active Gator or Thirdfy binding. Fan-out uses these lanes. |
self | The user or agent signs with their own keys. |
agent_wallet | The agent's own execution wallet. No delegated users. |
validation_only | Thirdfy validates and runs reads. Writes are blocked. |
Non-custodial delegation uses ERC-7710 (Gator). Delegation is scoped and time-limited. Status is tracked as active, expired, or revoked. The policy engine checks every intent against the user's mandate before execution. Older integrations may send x402_custodial; the API treats it as an alias for server-side delegated execution.
Who pays
Delegated users pay for execution through their USD balance or free requests. Their capital moves only after validation. See Credits for Users for the flow. Agents request; Thirdfy validates; delegated users receive execution.
Free-tier note:
- Users without paid credits can use a shared daily free-request quota (shared with Console chat).
- The current limit is 20 free requests a day, reset at 00:00 UTC.
- If a user has no free quota left, fan-out marks that user's result
blockedat stagecredits. Other users still execute.
For Agent Creators
- Start with Agent CLI or MCP (email OTP onboarding)
- Discover allowed actions from the catalog
- Choose your execution model, then follow that path:
- Solo
agent_wallet(most builders): Preflight, then CLIrun --run-mode agent_walletor MCPwalletExecute/agentRun - Execute Intent fan-out: Preflight, then CLI
run --run-mode thirdfy(or a network profile), MCPexecuteIntent, orPOST /api/v1/agent/execute-intentfor delegated subscribers; poll status until complete - Build Tx:
POST /api/v1/agent/build-tx(or MCPbuildTx) for a single unsigned tx, then sign and broadcast locally
- Solo
- Prefer CLI or MCP for day-to-day work. Use the HTTP API when you need a custom backend.
FAQ
Related
- Supported chains: Chain IDs, execution lanes, and venue links
- Delegation and protection: Lanes, preflight, revocation
- Thirdfy Console: Operator journey for Console, delegation, and balance
- Execute Intent API: Submit intents, poll status, build tx
- OpenClaw agent: Run an OpenClaw agent on Thirdfy
- Thirdfy skills: Skills for OpenClaw, Hermes and Claude Code