https://github.com/elizaos/eliza
Autonomous agents for everyone
https://github.com/elizaos/eliza
agent agentic ai autonomous chatbot crypto discord eliza elizaos framework plugins rag slack swarm telegram
Last synced: 8 days ago
JSON representation
Autonomous agents for everyone
- Host: GitHub
- URL: https://github.com/elizaos/eliza
- Owner: elizaOS
- License: mit
- Created: 2024-07-09T07:55:40.000Z (10 months ago)
- Default Branch: main
- Last Pushed: 2025-04-07T12:30:52.000Z (13 days ago)
- Last Synced: 2025-04-07T13:26:43.755Z (13 days ago)
- Topics: agent, agentic, ai, autonomous, chatbot, crypto, discord, eliza, elizaos, framework, plugins, rag, slack, swarm, telegram
- Language: TypeScript
- Homepage: https://eliza.how/
- Size: 490 MB
- Stars: 15,414
- Watchers: 149
- Forks: 5,026
- Open Issues: 50
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
- Code of conduct: CODE_OF_CONDUCT.md
- Security: SECURITY.md
Awesome Lists containing this project
README
# Eliza ๐ค
![]()
๐ [Technical Report](https://arxiv.org/pdf/2501.06781) | ๐ [Documentation](https://elizaos.github.io/eliza/) | ๐ฏ [Examples](https://github.com/thejoven/awesome-eliza)
## ๐ README Translations
[ไธญๆ่ฏดๆ](i18n/readme/README_CN.md) | [ๆฅๆฌ่ชใฎ่ชฌๆ](i18n/readme/README_JA.md) | [ํ๊ตญ์ด ์ค๋ช ](i18n/readme/README_KOR.md) | [Persian](i18n/readme/README_FA.md) | [Franรงais](i18n/readme/README_FR.md) | [Portuguรชs](i18n/readme/README_PTBR.md) | [Tรผrkรงe](i18n/readme/README_TR.md) | [ะ ัััะบะธะน](i18n/readme/README_RU.md) | [Espaรฑol](i18n/readme/README_ES.md) | [Italiano](i18n/readme/README_IT.md) | [เนเธเธข](i18n/readme/README_TH.md) | [Deutsch](i18n/readme/README_DE.md) | [Tiแบฟng Viแปt](i18n/readme/README_VI.md) | [ืขึดืืจึดืืช](i18n/readme/README_HE.md) | [Tagalog](i18n/readme/README_TG.md) | [Polski](i18n/readme/README_PL.md) | [Arabic](i18n/readme/README_AR.md) | [Hungarian](i18n/readme/README_HU.md) | [Srpski](i18n/readme/README_RS.md) | [Romรขnฤ](i18n/readme/README_RO.md) | [Nederlands](i18n/readme/README_NL.md) | [ฮฮปฮปฮทฮฝฮนฮบฮฌ](i18n/readme/README_GR.md)
## ๐ฉ Overview
![]()
## โจ Features
- ๐ ๏ธ Full-featured Discord, X (Twitter) and Telegram connectors
- ๐ Support for every model (Llama, Grok, OpenAI, Anthropic, Gemini, etc.)
- ๐ฅ Multi-agent and room support
- ๐ Easily ingest and interact with your documents
- ๐พ Retrievable memory and document store
- ๐ Highly extensible - create your own actions and clients
- ๐ฆ Just works!## Video Tutorials
[AI Agent Dev School](https://www.youtube.com/watch?v=ArptLpQiKfI&list=PLx5pnFXdPTRzWla0RaOxALTSTnVq53fKL)
## ๐ฏ Use Cases
- ๐ค Chatbots
- ๐ต๏ธ Autonomous Agents
- ๐ Business Process Handling
- ๐ฎ Video Game NPCs
- ๐ง Trading## ๐ Quick Start
### Prerequisites
- [Python 2.7+](https://www.python.org/downloads/)
- [Node.js 23+](https://docs.npmjs.com/downloading-and-installing-node-js-and-npm)
- [pnpm](https://pnpm.io/installation)> **Note for Windows Users:** [WSL 2](https://learn.microsoft.com/en-us/windows/wsl/install-manual) is required.
### Use the Starter (Recommended for Agent Creation)
Full steps and documentation can be found in the [Eliza Starter Repository](https://github.com/elizaOS/eliza-starter).
```bash
git clone https://github.com/elizaos/eliza-starter.git
cd eliza-starter
cp .env.example .env
pnpm i && pnpm build && pnpm start
```### Manually Start Eliza (Only recommended for plugin or platform development)
#### Checkout the latest release
```bash
# Clone the repository
git clone https://github.com/elizaos/eliza.git# This project iterates fast, so we recommend checking out 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`)
```If you would like the sample character files too, then run this:
```bash
# Download characters submodule from the character repos
git submodule update --init
```#### Edit the .env file
Copy .env.example to .env and fill in the appropriate values.
```
cp .env.example .env
```Note: .env is optional. If you're planning to run multiple distinct agents, you can pass secrets through the character JSON
#### Start Eliza
```bash
pnpm i
pnpm build
pnpm start# The project iterates fast, sometimes you need to clean the project if you are coming back to the project
pnpm clean
```### Interact via Browser
Once the agent is running, you should see the message to run "pnpm start:client" at the end.
Open another terminal, move to the same directory, run the command below, then follow the URL to chat with your agent.
```bash
pnpm start:client
```Then read the [Documentation](https://elizaos.github.io/eliza/) to learn how to customize your Eliza.
---
### Automatically Start Eliza
The start script provides an automated way to set up and run Eliza:
```bash
sh scripts/start.sh
```For detailed instructions on using the start script, including character management and troubleshooting, see our [Start Script Guide](./docs/docs/guides/start-script.md).
> **Note**: The start script handles all dependencies, environment setup, and character management automatically.
---
### Modify Character
1. Open `packages/core/src/defaultCharacter.ts` to modify the default character. Uncomment and edit.
2. To load custom characters:
- Use `pnpm start --characters="path/to/your/character.json"`
- Multiple character files can be loaded simultaneously
3. Connect with X (Twitter)
- change `"clients": []` to `"clients": ["twitter"]` in the character file to connect with X---
### Add more plugins
1. run `npx elizaos plugins list` to get a list of available plugins or visit https://elizaos.github.io/registry/
2. run `npx elizaos plugins add @elizaos-plugins/plugin-NAME` to install the plugin into your instance
#### Additional Requirements
You may need to install Sharp. If you see an error when starting up, try installing it with the following command:
```
pnpm install --include=optional sharp
```---
## Using Your Custom Plugins
Plugins that are not in the official registry for ElizaOS can be used as well. Here's how:### Installation
1. Upload the custom plugin to the packages folder:
```
packages/
โโplugin-example/
โโโ package.json
โโโ tsconfig.json
โโโ src/
โ โโโ index.ts # Main plugin entry
โ โโโ actions/ # Custom actions
โ โโโ providers/ # Data providers
โ โโโ types.ts # Type definitions
โ โโโ environment.ts # Configuration
โโโ README.md
โโโ LICENSE
```2. Add the custom plugin to your project's dependencies in the agent's package.json:
```json
{
"dependencies": {
"@elizaos/plugin-example": "workspace:*"
}
}
```3. Import the custom plugin to your agent's character.json
```json
"plugins": [
"@elizaos/plugin-example",
],
```---
### Start Eliza with Gitpod
[](https://gitpod.io/#https://github.com/elizaos/eliza/tree/main)
---
### Deploy Eliza in one click
Use [Fleek](https://fleek.xyz/eliza/) to deploy Eliza in one click. This opens Eliza to non-developers and provides the following options to build your agent:
1. Start with a template
2. Build characterfile from scratch
3. Upload pre-made characterfileClick [here](https://fleek.xyz/eliza/) to get started!
---
### Community & contact
- [GitHub Issues](https://github.com/elizaos/eliza/issues). Best for: bugs you encounter using Eliza, and feature proposals.
- [elizaOS Discord](https://discord.gg/elizaos). Best for: hanging out with the elizaOS technical community
- [DAO Discord](https://discord.gg/ai16z). Best for: hanging out with the larger non-technical community## Citation
We now have a [paper](https://arxiv.org/pdf/2501.06781) you can cite for the Eliza OS:
```bibtex
@article{walters2025eliza,
title={Eliza: A Web3 friendly AI Agent Operating System},
author={Walters, Shaw and Gao, Sam and Nerd, Shakker and Da, Feng and Williams, Warren and Meng, Ting-Chien and Han, Hunter and He, Frank and Zhang, Allen and Wu, Ming and others},
journal={arXiv preprint arXiv:2501.06781},
year={2025}
}
```## Contributors
## Star History
[](https://star-history.com/#elizaos/eliza&Date)
## ๐ ๏ธ System Requirements
### Minimum Requirements
- CPU: Dual-core processor
- RAM: 4GB
- Storage: 1GB free space
- Internet connection: Broadband (1 Mbps+)### Software Requirements
- Python 2.7+ (3.8+ recommended)
- Node.js 23+
- pnpm
- Git### Optional Requirements
- GPU: For running local LLM models
- Additional storage: For document storage and memory
- Higher RAM: For running multiple agents## ๐ Project Structure
```
eliza/
โโโ packages/
โ โโโ core/ # Core Eliza functionality
โ โโโ clients/ # Client implementations
โ โโโ actions/ # Custom actions
โโโ docs/ # Documentation
โโโ scripts/ # Utility scripts
โโโ examples/ # Example implementations
```## ๐ค Contributing
We welcome contributions! Here's how you can help:
### Getting Started
1. Fork the repository
2. Create a new branch: `git checkout -b feature/your-feature-name`
3. Make your changes
4. Run tests: `pnpm test`
5. Submit a pull request### Types of Contributions
- ๐ Bug fixes
- โจ New features
- ๐ Documentation improvements
- ๐ Translations
- ๐งช Test improvements### Code Style
- Follow the existing code style
- Add comments for complex logic
- Update documentation for changes
- Add tests for new features