Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Relates to:
ZKSYNC integration PR
Risks
Low
Main implementation risk is that the Plugin doesn't work correctly.
Background
Cronos zkEVM is a L2 zk chain network by CronosLabs and based on the zksync stack framework. This PR implements a plugin for agents to be able to interact with Cronos ZKEVM.
In this first version, only the transfer function is supported. Further work will extend this functionality.
What does this PR do?
Features (non-breaking change which adds functionality)
What kind of change is this?
Features (non-breaking change which adds functionality)
Why are we doing this? Any context or related work?
We're seeing a huge proliferation of AI agents being able to manage value on-chain. This is similar conceptually to these plugins (e.g. plugin-solana and others)
Documentation changes needed?
This plugin follows the standards set by other crypto integrations, including things like the SEND_TOKENS action. Changes to the overall project documentation don't seem to be required.
Testing
Where should a reviewer start?
Most of the changes are in plugin-cronoszkevm
Detailed testing steps
In .env you should set the value for CRONOSZKEVM_ADDRESS (this is the public address for the agent account) and CRONOSZKEVM_PRIVATE_KEY (private key for the same account).
To test the transfer function properly, this address needs tokens. Crypto.com can be used to send ZKCRO directly to an address on Cronos zkEVM
Run the agent and prompt it with: "send 0.5 ZKCRO to " - e.g. "send 1 ZKCRO to 0xee0c40F86544a8b0616BC827728f714a8B4cEeE7"
Assuming you had 1 ZKCRP to send, the agent will confirm and respond with the tx hash, e.g. Transfer completed successfully! "tx: 0x45759cf3e76d26610154a094c87572fbd7f5ef909f62c4ea13f7defb0d87cf0b"
The tx hash can be checked on the Cronos zkEVM explorer (https://explorer.zkevm.cronos.org/)