The protocol also includes a direct private-basket settings instruction path, primarily for creator-controlled private setup flows. This path is not exposed in the SDK.
How Intents Work
Manager creates an intent
A manager calls one of the
edit*Tx methods (e.g., editFeesTx, addOrEditTokenTx).SDK checks modification delay
If modification delay is 0 AND no scheduled activation time, the intent is created and executed in the same transaction (immediate).
Intent waits (if delayed)
If there is a modification delay or scheduled activation, the intent is created on-chain and waits.
Intent Structure
Task Types
| TaskType | String | Description |
|---|---|---|
EditCreator (1) | edit_creator | Transfer vault creator role |
EditManagerSettings (2) | edit_manager_settings | Edit managers, weights, authorities |
EditFeeSettings (3) | edit_fee_settings | Update fee structure |
EditScheduleSettings (4) | edit_schedule_settings | Configure cycle timing |
EditAutomationSettings (5) | edit_automation_settings | Configure rebalance automation |
EditLpSettings (6) | edit_lp_settings | Configure LP settings |
EditMetadataSettings (7) | edit_metadata_settings | Update name, symbol, URI |
EditDepositsSettings (8) | edit_deposits_settings | Enable/disable deposits |
EditForceRebalanceSettings (9) | edit_force_rebalance_settings | Enable/disable force rebalance |
EditCustomRebalanceSettings (10) | edit_custom_rebalance_settings | Enable/disable custom rebalance |
EditAddTokenDelay (11) | edit_add_token_delay | Set time-lock for adding tokens |
EditUpdateWeightsDelay (12) | edit_update_weights_delay | Set time-lock for weight updates |
EditMakeDirectSwapDelay (13) | edit_make_direct_swap_delay | Set time-lock for direct swaps |
AddToken (14) | add_token | Add new token or edit oracle config |
UpdateWeights (15) | update_weights | Change token target weights |
MakeDirectSwap (16) | make_direct_swap | Execute a direct swap within the vault |
Settings Types
EditCreatorSettings
EditCreatorSettings
EditManagerSettings
EditManagerSettings
EditFeeSettings
EditFeeSettings
EditScheduleSettings
EditScheduleSettings
Configures repeating time cycles that control when deposits, automated rebalancing, and management actions are allowed. The current position within the cycle is computed as
(current_time - cycle_start_time) % cycle_duration. An action is allowed when the cycle position falls between its start and end offsets. If cycle_duration is 0, everything is always allowed. See Schedule & Cycles for full documentation.EditAutomationSettings
EditAutomationSettings
Configures automated keeper-initiated rebalancing. When Both
enabled, keepers can trigger rebalances when the vault’s token weights drift beyond the specified thresholds. See Rebalancing — Vault Rebalance for the full list of conditions.rebalance_activation_threshold_abs_bps AND rebalance_activation_threshold_rel_bps must be exceeded by at least one token for a rebalance to be triggered — they are not independent conditions.EditLpSettings
EditLpSettings
Configures LP (liquidity provider) mode. When
enabled, the vault can act as a liquidity provider. lp_threshold_bps sets the maximum deviation from target weights before LP swaps are restricted.EditMetadataSettings
EditMetadataSettings
EditDepositsSettings
EditDepositsSettings
Controls whether users can deposit into the vault. Always takes effect immediately (no modification delay).
EditForceRebalanceSettings
EditForceRebalanceSettings
Controls whether authorized managers can trigger rebalances that bypass the normal automation checks (schedule window, cooldown, deviation threshold). When
enabled: false, this override is disabled and all rebalances must go through normal automation conditions.EditCustomRebalanceSettings
EditCustomRebalanceSettings
Controls whether custom rebalances (type
VaultCustom) are allowed.EditAddTokenSettings / EditUpdateWeightsSettings / EditMakeDirectSwapSettings
EditAddTokenSettings / EditUpdateWeightsSettings / EditMakeDirectSwapSettings
AddOrEditTokenInput
AddOrEditTokenInput
UpdateWeightsInput
UpdateWeightsInput
MakeDirectSwapInput
MakeDirectSwapInput
TaskContext
Every edit method takes aTaskContext object:
Creating Intents
All edit methods follow the same pattern:Executing Intents
After the activation timestamp, a keeper (or any user) can execute the intent:MakeDirectSwap intents, use executeDirectSwapVaultIntentTx which builds the flash swap:
Cancelling Intents
After the expiration timestamp (or by the manager before activation):Fetching Intents
Bounty System
Each intent carries a bounty that incentivizes keepers to execute it:min_bounty and max_bounty based on how long the intent has been waiting, incentivizing faster execution.