ElizaOS Plugins: Extending Your Agent's Capabilities
One of the most powerful aspects of ElizaOS is its extensible plugin system. Rather than building a monolithic framework that tries to do everything, ElizaOS takes a modular approach—letting developers add exactly the capabilities they need through plugins. In this guide, we'll explore how plugins work, showcase popular options, and walk through creating your own.
Understanding the Plugin Architecture
At its heart, an ElizaOS plugin is a packaged set of functionalities that extend what your agent can do. Plugins can add:
- Actions: Specific tasks the agent can perform
- Providers: Services that supply data or capabilities
- Evaluators: Components that analyze and assess situations
- Services: Background processes that run continuously
This modular design means you only load what you need, keeping your agent lean and efficient.
How Plugins Work
When your agent starts up, ElizaOS loads the plugins specified in your character configuration. Each plugin registers its capabilities with the runtime, making them available for use.
Here's a simplified view of the plugin lifecycle:
- Registration: Plugin declares its actions, providers, and services
- Initialization: Plugin sets up connections, loads resources
- Execution: Agent uses plugin capabilities as needed
- Cleanup: Plugin releases resources on shutdown
Popular Built-in Plugins
Twitter Plugin (@eliza/plugin-twitter)
The Twitter plugin transforms your agent into a social media presence. Capabilities include:
- Posting tweets: Share updates, thoughts, and content
- Replying to mentions: Engage with users who tag your agent
- Following/unfollowing: Build and curate your network
- Searching and monitoring: Track topics and conversations
- Direct messages: Private communications with followers
This plugin is essential for building AI influencers, community managers, or marketing bots.
Telegram Plugin (@eliza/plugin-telegram)
Bring your agent to Telegram's massive user base:
- Bot conversations: One-on-one chats with users
- Group participation: Join and interact in group chats
- Inline queries: Respond to mentions in any chat
- Rich media: Send images, files, and formatted messages
Discord Plugin (@eliza/plugin-discord)
Perfect for Web3 communities that live on Discord:
- Server moderation: Monitor and manage conversations
- Command responses: React to slash commands
- Channel management: Post in specific channels
- Voice integration: Join voice channels for audio interaction
Solana Plugin (@eliza/plugin-solana)
Add blockchain capabilities for the Solana ecosystem:
- Wallet management: Create and manage Solana wallets
- Token transfers: Send and receive SOL and SPL tokens
- DEX integration: Trade on Raydium, Jupiter, and other DEXs
- NFT operations: Mint, transfer, and query NFTs
EVM Plugin (@eliza/plugin-evm)
For Ethereum and EVM-compatible chains:
- Multi-chain support: Ethereum, Base, Polygon, Arbitrum, and more
- Smart contract interaction: Read and write to contracts
- Token operations: ERC-20 and ERC-721 support
- DeFi integrations: Connect to Uniswap, Aave, and other protocols
Specialized Plugins
Trading and DeFi
- @eliza/plugin-coinbase: Coinbase API integration for trading
- @eliza/plugin-birdeye: Real-time token data and analytics
- @eliza/plugin-0x: Decentralized exchange aggregation
Data and Analysis
- @eliza/plugin-web-search: Search the web for information
- @eliza/plugin-news: Fetch and analyze news articles
- @eliza/plugin-image: Generate and analyze images
Productivity
- @eliza/plugin-github: Interact with GitHub repositories
- @eliza/plugin-email: Send and receive emails
- @eliza/plugin-calendar: Schedule and manage events
Installing and Configuring Plugins
Basic Installation
Most plugins are installed via npm or pnpm:
pnpm add @eliza/plugin-twitter
Character Configuration
Add plugins to your character file:
{
"name": "MyAgent",
"plugins": [
"@eliza/plugin-twitter",
"@eliza/plugin-solana"
],
"settings": {
"twitter": {
"username": "my_bot",
"postFrequency": "2h"
},
"solana": {
"network": "mainnet-beta",
"walletPath": "./wallet.json"
}
}
}
Environment Variables
Most plugins require credentials stored in environment variables:
# Twitter
TWITTER_USERNAME=my_bot
TWITTER_PASSWORD=secret
TWITTER_EMAIL=bot@example.com
Solana
SOLANA_PRIVATE_KEY=your-private-key
SOLANA_RPC_URL=https://api.mainnet-beta.solana.com
Creating Your Own Plugin
Ready to extend ElizaOS with custom functionality? Here's a basic template:
import { Plugin, Action, Provider } from '@eliza/core';
const myCustomAction: Action = {
name: 'MY_CUSTOM_ACTION',
description: 'Performs a custom task',
handler: async (runtime, message) => {
// Your action logic here
return {
success: true,
message: 'Action completed!'
};
}
};
const myPlugin: Plugin = {
name: 'my-custom-plugin',
description: 'Adds custom capabilities',
actions: [myCustomAction],
providers: [],
services: []
};
export default myPlugin;
Plugin Best Practices
Keep it focused: Each plugin should do one thing well. If your plugin is growing too large, consider splitting it. Handle errors gracefully: Plugins shouldn't crash the entire agent. Catch and log errors appropriately. Document everything: Clear documentation helps other developers (and future you) understand how to use the plugin. Test thoroughly: Write tests for your actions and services to ensure reliability. Respect rate limits: When integrating with external APIs, implement proper rate limiting and backoff strategies.Plugin Composition
The real power of ElizaOS emerges when you combine multiple plugins. Consider an agent with:
- Twitter for social presence
- Solana for trading
- Birdeye for market data
This agent could:
- Monitor Twitter for trending tokens
- Analyze market data via Birdeye
- Execute trades on Solana DEXs
- Tweet about successful trades
All running autonomously, 24/7.
Community Plugins
The ElizaOS community is constantly creating new plugins. You can find community contributions:
- GitHub: Search for "eliza plugin" repositories
- Discord: Join the ElizaOS Discord for plugin announcements
- npm: Browse packages with the "@eliza" scope
Before using community plugins, always:
- Review the source code
- Check for recent updates and maintenance
- Look at issue reports and community feedback
Future of the Plugin Ecosystem
The ElizaOS plugin ecosystem is rapidly evolving. Upcoming developments include:
- Plugin marketplace: A curated registry of verified plugins
- Plugin templates: Scaffolding tools for faster development
- Cross-plugin communication: Standardized ways for plugins to interact
- Plugin versioning: Better compatibility management
Conclusion
Plugins are what transform ElizaOS from a simple chatbot framework into a powerful platform for autonomous agents. Whether you're using built-in plugins, community contributions, or building your own, the modular architecture ensures you can create exactly the agent you envision.
The beauty of this approach is that the community continuously expands what's possible. Every new plugin adds capabilities that benefit the entire ecosystem, making ElizaOS more powerful with each contribution.
Want to contribute a plugin? Check out the ElizaOS Plugin Development Guide and join the community of developers extending the boundaries of what AI agents can do.


