Skip to content

Execution framework

The execution framework turns a type-specific strategy decision into a constrained blockchain operation. It is shared by current and future agent types.

flowchart LR
  Decision[Strategy decision] --> Wallet[Agent Wallet]
  Wallet --> Registry[Adapter Registry]
  Registry --> Adapter[Registered adapter]
  Adapter --> Target[Registered target]
  1. The runtime prepares an operation for a permitted action.
  2. The Agent Wallet validates the signer and operation.
  3. The registry confirms that the adapter and target are approved.
  4. The adapter validates protocol-specific parameters.
  5. The adapter executes in the wallet’s context.

Adapters are protocol-specific contracts. They should validate the target, asset, recipient, and other parameters relevant to their operation.

The arbitrary-call path is disabled for agent operations. A strategy runtime cannot turn a permitted function into an unrestricted transfer to an attacker-controlled destination.

The Adapter Registry controls which adapters and protocol targets are available. Removing a target, disabling an adapter, or pausing the registry can prevent future adapter operations.

A registered target is approved for a particular adapter; registration is not a guarantee that the underlying protocol is safe or liquid.

AgentWalletKit adapters execute through the Agent Wallet context. Assets and protocol receipts should remain associated with that wallet, while the adapter supplies protocol-specific validation and call encoding.

The framework is shared, but the operations and risk checks are type-specific. Vault Agent adapters support vault, lending, reward, and swap operations; a future type must document its own adapters and validation rules.

See Security for the user explanation and AgentWalletKit integration for implementation details.