A plugin that allows you to interact with the iExec Protocol directly from your messaging interface, providing secure and easy access to RLC balance checking, voucher management, and confidential computing capabilities.
- Clone and Setup ElizaOS
# Clone the repository
git clone https://github.com/elizaOS/eliza.git
# Navigate to the project directory
cd eliza
# Checkout the latest release
git checkout $(git describe --tags --abbrev=0)
# If the above doesn't checkout the latest release, this should work:
# git checkout $(git describe --tags `git rev-list --tags --max-count=1`)
# Use the required Node version (install NVM if necessary)
nvm use
# Install dependencies
pnpm install --no-frozen-lockfile
- Plugin installation
# Add iexec plugin if not already installed
npx elizaos plugins add @elizaos-plugins/plugin-iexec
# List all installed plugins (verify plugin-iexec installation)
npx elizaos plugins list
- 🔧 Plugin Configuration
Create a .env file at the root of your ElizaOS project with the following content:
MY_WALLET_ADDRESS=0xYourWalletAddressHere
Configure Default Character (TypeScript).In your ./agent/src/defaultCharacter.ts
file, import the iExec plugin and add it to the plugins array:
import { iexecPlugin } from "@elizaos-plugins/plugin-iexec";
export const defaultCharacter: Character = {
name: "Eliza",
username: "eliza",
plugins: [iexecPlugin],
modelProvider: ModelProviderName.OLLAMA,
// ... other configuration
};
Configure JSON Character File (if applicable). If you’re defining characters via JSON instead of TypeScript, add the iExec plugin as follows:
{
"name": "Eliza",
"username": "eliza",
"plugins": ["@elizaos-plugins/plugin-iexec"],
"modelProvider": "OLLAMA"
}
- Build the project
pnpm run build
- RLC Balance Checking: Query wallet balances instantly
- Voucher Management: Retrieve and view voucher information
- Confidential Computing: Protect sensitive data using iExec's encryption infrastructure
Check the balance of any Ethereum wallet by providing the wallet address. If no address is specified, the plugin will use the wallet configured in your .env
file.
Check my balance
or
Check balance for 0x1234567890abcdef1234567890abcdef12345678
Access voucher details associated with any wallet address. The plugin will default to your configured wallet in the .env
file if no address is provided.
Examples:
Show user voucher for this wallet 0x1234567890abcdef1234567890abcdef12345678
Get my voucher details
You can protect sensitive information using iExec's confidential computing capabilities. The plugin will encrypt your data and store it securely on the iExec infrastructure.
To protect data, use one of these phrase patterns in your message:
- "protect this data: [your sensitive data]"
- "encrypt this: [your sensitive data]"
- "make this confidential: [your sensitive data]"
- "keep this private: [your sensitive data]"
Examples:
Please protect this data: My API key is sj238sjdh3r2jr238rjsd
I need to encrypt this: Password123!@#
Make this confidential: Contract details for client XYZ
After successfully protecting your data, you'll receive a link to view your protected data on the iExec Explorer.
When you protect data:
- The plugin identifies your request to protect information
- It extracts the sensitive content from your message
- The data is encrypted and protected using iExec's confidential computing
- You receive a confirmation with a link to the protected data on the iExec Explorer
- Protected data is encrypted and can only be accessed by authorized parties
- Your sensitive information is never stored in plain text
- All protected data is managed through the iExec infrastructure with blockchain-level security
- Fork the repository
- Create a feature branch
- Add tests for new functionality
- Submit a pull request