- Composable retries support has been added which enables constraint and nonce based retries in a sequential order
- Fixed the timeframe policy issue for smart sessions
- noble curves peer dependency added
-
Smart Sessions Core Revamp
- Refactored Smart Sessions core architecture.
- Introduced new abstractions for:
- Policy construction
- Session action definition
- Modular Smart Session execution flow
- Improved extensibility and maintainability.
- Full backward compatibility maintained
-
Smart Session Action Batching
- Added dynamic batching and unbatching of session actions.
- Allow developers to enable a large action sets within a single session.
-
Composable Transactions in
preparepermission flowpreparepermission flow now supports composable transactions.- Enables:
- Runtime value injection
- Composable batching
- Transaction cleanups
- Flexible execution strategies
- Unlocks advanced enable Smart Session workflows.
-
Payment Policy Enhancements
- Added conflict resolution between payment policies and developer-defined policies.
- Ensures deterministic policy evaluation.
- Improves reliability and security guarantees.
-
SDK Debug Mode
- Provides detailed error logging
-
Stateless STX Validator + MEE v3.0.0 Support
- Added support for Stateless STX Validator.
- Integrated MEE v3.0.0.
- Enables:
- Passkeys support
- Safe Fusion mode support
- Improves authentication flexibility and validation capabilities.
- prepareForPermissions flow now only supports building instructions via buildComposable.
-
Feautues:
- Biconomy hosted sponsorship optimization which will optimisitically skip the payment userOp with offchain signature verification which reduces gas costs for end users
- Conditional execution support for rawCalldata builder
- Minor patch for Safe type kit dependencies
Breaking changes:
- sponsorshipOptions.rpcUrl field has been removed now with respect to the sponsorship optimization
- Supertransactions are supported for
Safe smart walletsnow. You can execute supertransaction with Safe Multisig wallet withSafe fusion mode Custom execution simulation retryfeature is supported which enables you to create a long running supertransaction by adjusting the simulation interval as neededLatency optimizations- Concurrent nonce calculation, improved sponsorship nonce calculation, reduced RPC calls for permit mode and other pre validation checks to reduce latency for different scenarios.- Support for
ERC-7739Readable Typed Signatures for Smart Accounts
toDefaultModuleandtoMeeK1Modulenow require WalletClient object instead of signer object to enable 7739 signatures Ownables and SS modules do not support 7739 thus still accept signer toValidator() now accepts any of WalletClient or signer objects.- New methods:
signMessageErc7739andsignTypedDataErc7739are exposed for Validator objects to sign for 7739. (used by Nexus account under the hood) - Nexus account will by default always use
7739if current module supports it. sponsorshipOptions.rpcUrl- Sponsorship options now expects a RPC url, by default public RPC is used or if the chain is defined in chainConfig, it will be reused. It is recommended to pass a reliable RPC url or define a sponsorship chain in chain config
- Added EIP-712 typed data signing support for smart account mode, upgraded to MEE v2.2.1 contracts with new addresses, and improved quote execution with proper version handling. This enables using 712 typed signatures for signing supertransactions when using non-fusion modes.
-
Features included:
- Permit flow enhancements: Automatic permit flaw detection and fallback to onchain mode
- Permit flow enhancements: Different EIP 712 domain types support for different exotic permit based tokens
- Smart sessions sponsorship support for prepare permission flow
- Instruction level timebound support to customize the instruction execution time and its expiry as needed.
Check the documentation for more information on these changes
-
Feature included:
- New smart session smart contracts are supported and used for smart session flows
- Sophon mainnet and testnet are supported
- Multichain accountAddress overrides for 7702 flow and Nexus upgrades.
- Simulation support for MEE version 2.2.0 for all the fusion modes
- Enhancements for cleanup userOps to cover native token cleanup for various target types such as EOA, SCA, and delegated EOA.
- Gloabl accountAddress overrides are removed. Now all the accountAddress should be overriden per chainConfig basis
const mcNexus = await toMultichainNexusAccount({
signer: eoaAccount,
accountAddress: randomAddressOne.address,
chainConfigurations: [
{
chain: baseSepolia,
transport: http(),
version: getMEEVersion(MEEVersion.V2_1_0),
},
]
})
const mcNexus = await toMultichainNexusAccount({
signer: eoaAccount,
chainConfigurations: [
{
chain: baseSepolia,
transport: http(),
version: getMEEVersion(MEEVersion.V2_1_0),
accountAddress: randomAddressOne.address
},
]
})
- New MEE version 2.2.0 stable support has been added with Audited contracts. This should enable runtime native token flows out of the box along with some other improvements
- Simulations support added for cleanup instructions
-
Features included:
- Supertransaction simulations: Multichain and Single chain simulations for end to end transaction across the chains and protocols
- Gas limit optimization: With the help of simulations, the gas limits are super optimized for the users
- Gas prize optimization: Gas prices are highly optimized to reduce the gas fees for users
- Fast block mode: Fast block mode enables a quick status resolution for supertransaction which highly improves the user experience
Please read more about these features in the biconomy docs
-
Patches:
- Enhanced the permit tokens flow support for more uncovered exotic tokens
- Fixed the native token transfer issue in withdraw and nativeTokenTransfer builder to cover more cases such as EOA, Delegated EOA, and SCA's
-
Features included:
- Transaction metadata for instructions to provide rich context about supertransaction.
- Conditional execution to enable developers to add custom conditions to the composable calls.
- Added a support for monad mainnet and testnet chains in SDK
- fixed the rawCalldata builder encoding issues
- Patch: Smart sessions enhancement to have session batching. All the actions will be grouped into one session on the same chain.
-
Patches included:
- Fixed Smart session mode usage
- Added a universal policy to support payment token with warning
-
Features included:
- Native token runtime values are supported
- Native token runtime cleanups are supported
- Custom verification gas limit for smart sessions are supported
-
Changes included:
- Removed param v from the MEEAuthorization interface. So v is not mandatory anymore
- verificationGasLimit field will be applied for all the instructions and not just payment instruction
- Payment userOps will be excluded from the supertransaction status checks
- Added custom gas refund address param for the entrypoint refunds
-
Features/improvements included:
- Native token cleanup support with fixed amounts
- Modular SDK - Decoupled some dependencies on batcher and builder functions to ease the SDK usage in backend environments
- Default cleanup userOps constraints are removed to speed up the cleanup execution
- Improved CommonJS and ESM build support
- Improved the getQuoteType util to reduce the number of RPC calls to detect the quote type
- Added a Nexus MEE version check bypass flag which avoid checking all the contract deployment status to improve latency in backend environments
- Added a utils to getGasTank for sponsorship
Breaking changes:
- Intent builder interface has changed a bit. Token field expects both mcToken and unified balance now
mcNexus.build({ type: "intent", data: { depositor: mcNexus.addressOn(paymentChain.id, true), recipient: mcNexus.addressOn(targetChain.id, true), amount: 1n, token: { mcToken: mcUSDC, unifiedBalance: await mcNexus.getUnifiedERC20Balance(mcUSDC) }, toChainId: targetChain.id } })getPaymentTokenmethod has been renamed intogetSupportedFeeTokennow
- Improved the permit token on-chain details fetch with batched multicall for better performance
- Added fallback version for permit flow
-
Features included:
- Multichain 7702 authorization support.
- Permit fusion mode improvements to cover more permit based tokens
- SDK test case revamp
- More across spoke pools are integration for composable across wrapper
-
Features included:
- MEE versioning - Version aware SDK which enables developers to use four different MEE versions based on their needs. Currently the SDK support MEE versions 1.0.0, 1.1.0, 2.0.0 and 2.1.0. Check documentation for more info on this
- Modular Signing utils for preparing the signable payload and prepare executable signed quote. This enables the abstractjs to be used in backend
- Across intent wrapper - A composable across wrapper which enables composable bridge swaps with the help of MEE composability stack
Breaking changes:
- MEE version needs to be added explicitly for all the nexus or multichain nexus instances. Field such as chains, transports are removed and grouped with a object called chainConfigurations. This object defines the chain, transport and version for nexus account and MEE stack. Check the docs for more info
- Fixed the verification gas limit issue for metamask delegation toolkit fusion mode
- fixed the metamask delegation toolkit import issues
- Fixed the metamask delegation tool kit peer dependency issue
-
Features released:
- Eth forwarder - It enables native token to be transferred via trigger
- Custom trigger call - It enables the developer to define custom call in trigger instead of just token triggers
- Metamask DTK - Experimental metamask delegation flow is supported
- Custom Recipient for token triggers - It enables developers to add a custom recipient address for token transfers in trigger
- Custom Recipient for Eth Forwarder - It enables developers to add a custom recipient address for native currency transfers in trigger
- Max available Eth Forwarder transfer - It enables developers to transfer maximum available native tokens excluding gas fee via trigger
- Custom fee payer - This enables anyone to provide custom fee payer address which will take care of fee payment via pre approved allowance
- Code and test suite improvements
-
Features included:
- Self hosted sponsorship support where the developers can utilize third party sponsorship services to sponsor the super transactions
- toGasTankAccount support addded. This helps self hosted sponsorship developers to manage gas tanks easily
- Eth Forwarder - A fusion flow for native tokens. This enables anyone to trigger Native tokens to their SCA accounts
- One click template builder is added. This lets the developer to easily build cross chain actions easily to have a one click experience
-
Features includes:
- Multichain smart session support is added
- Nexus 102 support is added
- New mee node changes have been adjusted
- Improved error handling and added a utility function chainToAddressMap
- Added support for custom gas limit for payment and cleanup userops and increased the cleanup execution window
- Added support for MEE biconomy hosted sponsorship and enhanced the max fund usage in trigger (include fee -> useMaxAvailableFunds)
- remove log
- add explorer catch
- auths
- Fix gasLimit bug
- Fusion gasLimit
- Change maxAvailableAmount -> includeFee
- Fix wallet client bug with browsers
- Fix for includeFee
- signTransaction signer fix
- Cleanups
- Improved gas efficiency
- 7702 replay support
- Added a includeFee to trigger
- 7702 support
- Raw call data
-
- Added callData helper for composability
- Improved error reporting during tests
- Fix 6492 signature verification
- Added composability module by default resulting in a change of address for all users of latest SDK
- Renamed
getDefaultFactoryDatatogetFactoryDatafor more generic module support - Renamed
getDefaultNexusAddresstogetlNexusAccountto reflect universal module initialization - Updated module initialization structure to support any validator type extending BaseModule
- Changed module configuration format to require explicit type declarations
- Added universal module initialization support for Nexus accounts
- Same account for both mee and 4337 flows
- Introduced flexible module configuration system allowing extended properties
- Added support for custom bootstrap addresses during account initialization
- Implemented smart session helpers for improved session management
- Added new utility functions
toInitDataandtoInstallDatafor standardized module formatting - Added composability module for multi-transaction batching in a single userOp
- Added support for Nexus v1.2.0 with improved composability features
- Added custom gas limits for composability calls
- Added EIP-6492 compatibility for account signatures
- Integrated userOp status reporting and receipt tracking
- Enable mode for smart sessions by default
- Streamlined factory data and counterfactual address calculations
- Enhanced type safety for module configurations
- Improved error handling for module initialization
- Reduced bundle size through code optimization (-5.45% ESM, -7.42% CJS)
- Added comprehensive test coverage for new module initialization flows
- Improved status reporting for userOps
- Fixed initCode computation for accurate counterfactual address generation
- Enhanced batch builder with better composability checks
- Change attester address for Mee users. Results in change in MEE users' addresses
- Added an additional configuration to version config to cater for accounts < 0.0.34
- Added an upgradeSmartAccount decorator to the smart account client
- Added a new test for the upgradeSmartAccount decorator
- Update K1_VALIDATOR_FACTORY_ADDRESS address, resulting in changed default addresses for users
- Added GasBuffer option to increase gasValues returned from the bundler prior to sending the userOp
- Update BICONOMY_ATTESTER address, resulting in changed default addresses for users
- Improved batching logic
- Added mcWeth
- Fixed getAccountMeta helper
- Fixed EIP712Sign logic after EIP 7779 changes
- Added tests for installing & uninstalling smart sessions
- Fixed mee signer issues with metamask
- Added export for UniswapSwapRouterAbi
- Introduced optimistic mode parameter for across relayer
- Made interfacing with multichain contracts consitent while building instructions
- Added getSupertransactionReceipt helper
- Added buildBatch instruction helper
- Nexus init using custom validator
- BREAKING:
getMeeFactoryDatahelper now renamed togetDefaultFactoryData - BREAKING:
getMeeNexusAddresshelper now renamed togetNexusAddress
- BREAKING:
- Moved useTestBundler datapoint to the bundler client instead of the account & renamed to 'mock'.
- Use pimlico gasEstimates if string 'pimlico' is in the bundlerUrl
- Added confirmations: 2 to waitForUserOperationReceipt in signOnChainQuote helper to avoid race condition
- Changed threshold :bigint to :number in getOwnableValidator helper
- Added Fusion support
- BREAKING:
createSmartAccountClientnow requires an explicit account instance instead of account parameters - BREAKING: Removed
executeSignedFusionQuotehelper - BREAKING:
toMultichainNexusAccountnow requires an explicittransportsparameter, to encourate the use of paid RPCs - Made
createSmartAccountClientan alias ofcreateBicoBundlerClient - Added / modified MEE client methods:
- getFusionQuote
- executeFusionQuote
- signFusionQuote
- Additional transaction types:
- Transfer
- TransferFrom
- Approve
- Withdrawal
- BREAKING:
- MeeNode info validation
- Ownables fix for moduleInitArgs
- Fix the rhinestone module-sdk version
- Updated default attester addresses
- Add waitForConfirmedUserOperationReceipt and getUserOperationStatus decorators
- Fix paymaster + smartSessions
- 0.0.32
- move repo origin
- sdk to @biconomy/abstractjs rename
- AbstractJS rebrand
- meeNode support
- mock
- Sudo fallback for empty rules
- useRegistry false attestation fix
- Remove signature from prepareUserOperation flow
- Upgrade smart session and rhinestone sdk version
- Remove tenderlyUrl from env vars
- Remove isTesting helper from testing framework
- Smart sessions enable mode
- Add support for token paymaster with helper functions
- Counterfactual address helper export
- fix window.ethereum
- Add mock attestor only for testnets
- Add mock attestor and option to include attestors during createAccount
- Migrate to Nexus: b4d6ff463bc41dc232292c385bdb76814ca8689c
- Add rhintestones attestation address during createAccount
- Fix getAddress()
- Policy support
- Fix WalletClient signer
- Added Distributed Session Keys w/ Ownable & Session examples
- Added DAN helpers, keyGen + sigGen
- Paymaster script fix
- Include missing deps
- Alter sessions terminology
- renamed validator modules
- modules dx improvements