# ElizaOS Development Report (2025-02-20)

## Plugin Development and Contribution

### Plugin Contribution Process
- New plugins should be submitted to `elizaos-plugins/registry`, not the main `elizaOS` repo.
- Configuration variables should be added via PR to the main repo.
- Each plugin requires a separate repository, with a PR updating `index.json` in the registry.
- Plugin activation requires running `npx elizaos plugins install @elizaos-plugins/plugin-name` and adding it to the character file.

### New Plugin Development
- **Unreal Engine Plugin**: Integrates ElizaOS with Unreal Engine.
- **Token Prediction Plugin**: Uses reinforcement learning for market predictions.
- **Distributed Storage Plugin**: Submitted for decentralized storage.
- **On-Chain Token Price Plugin**: Fetches token prices across 20+ chains.

### Bug Fixes & Improvements
- **Out-of-Memory Bug Fix**: Adjustments to `splitChunks/splitText` resolved an OOM issue in v0.25.8.
- **Plugin Registry Issues**: Broken links in the registry are under investigation.
- **Twitter Plugin Enhancements**: Added reflection mode and callback support for retrieving posted tweet info.

### New Projects & Integrations
- **Tech-Support Bot**: Provides JavaScript, Bitcoin, and GitHub support.
- **Web3 Marketing Automation**: Integrates ElizaOS with Langchain for automated content generation.
- **AI Agent Platform**: `aigent.sh`, an AI agent platform powered by ElizaOS, has been launched.

### Action Items
- Fix broken plugin registry links.
- Improve plugin submission documentation.
- Enhance token prediction plugin with reinforcement learning.
- Develop a Nostr plugin for decentralized communication.
- Improve Web3 marketing automation with ElizaOS.
- Enhance plugin registry UI for better discoverability.

---

## Technical Updates & Plugin Management

### Technical Discussions & Decisions
- **Eliza Starter vs. Eliza**: `eliza-starter` is a lightweight version for agent deployment without plugin development. It lacks a web interface.
- **Plugin Registry & Metadata**: Metadata should be stored in `package.json` instead of the registry index.
- **Multi-Agent System**: `RAG knowledge` supports shared memory across multiple agents.
- **Plugin Installation & Management**: `npx elizaos plugins install` is the new method for adding plugins.
- **Docker Issues**: Build failures due to missing dependencies and incorrect paths; a revised Dockerfile was proposed.
- **Twitter Client Issues**: Double responses and shadow bans; solutions include setting accounts as 'automated' and adjusting model parameters.
- **Discord Client Setup**: Moved to a plugin format, requiring `@elizaos-plugins/client-discord` in the character file.
- **Memory Management & Repetition**: Issues with agents repeating messages linked to memory retrieval.
- **REST API Documentation**: Swagger was abandoned in favor of a simpler documentation page.
- **V2 Migration**: Introduces a CLI (`npx elizaos start`) and a new plugin system.

### Plugin Issues & Fixes
- **Plugin Installation Errors**: `plugin-trustdb` caused issues and should be excluded.
- **Twitter Client Setup**: `client-twitter` should be installed and added to the `plugins` list.
- **Discord Client Issues**: `client-discord` must be installed and added to `plugins`.
- **RAG Knowledge Issues**:
  - Knowledge files must be in `characters/knowledge/agent-name`.
  - Processing errors require documentation updates.
  - Embedding model issues with multiple `.md` files.

### Development & Debugging
- **Knowledge Processing Fix**: Adjustments to `packages/core/src/knowledge.ts` for short text chunks.
- **Memory Issues**: JavaScript heap out-of-memory error fixed by increasing `NODE_OPTIONS`.
- **Provider Implementation**: Guidance on defining providers in `packages/core/src/providers.ts`.
- **Feature Requests & Documentation Needs**:
  - RAG documentation updates.
  - Centralized plugin documentation.
  - Clarification on clients vs. plugins.

### Action Items
#### **Technical Tasks**
1. Fix Docker build issues.
2. Improve plugin metadata storage.
3. Debug Twitter client double responses.
4. Fix SQLite module errors.
5. Improve REST API documentation.

#### **Documentation Needs**
6. Update installation guides.
7. Add a migration guide for V2.
8. Improve multi-agent setup documentation.

#### **Feature Requests**
9. Add a memory deletion feature.
10. Implement a Twitter auto-reply service.
11. Improve V2 CLI usability.

---

## Development Updates & Plugin Management

### Technical Discussions & Decisions
- **Plugin Registry & Metadata**: Store descriptions and images in `package.json` instead of the registry index.
- **Plugin Installation & Management**: `npx elizaos plugins install` is the standard method.
- **Twitter Client Issues**: Solutions include adjusting `modelConfig` parameters.
- **Discord Client Setup**: Requires `@elizaos-plugins/client-discord` in the character file.
- **Memory Management & RAG**: Adjust `composeState` and prompt engineering.
- **Docker Issues**: Build failures due to missing dependencies; a revised Dockerfile was proposed.
- **V2 Migration & CLI**: `npx elizaos start` replaces `eliza-starter`.
- **Local AI Model Support**: `plugin-local-ai` is the correct plugin for using Ollama API.

### Concrete Solutions & Implementations
- **Plugin Metadata**: Store descriptions and images in `package.json`.
- **Docker Fixes**: Adjust paths and ensure dependencies are installed correctly.
- **Twitter Fixes**: Adjust `modelConfig` parameters to reduce redundancy.
- **Discord Fixes**: Use `npx elizaos plugins install @elizaos-plugins/client-discord`.
- **Memory Fixes**: Ensure `composeState` is used correctly and log LLM prompts.
- **REST API Docs**: A new documentation page was created.
- **V2 CLI**: `npx elizaos start` replaces `eliza-starter`.

### Help Interactions
- **Docker Build Issues**: `mr.stark_` and `hashwarlock` debugged failures.
- **Twitter Bot Shadowban**: `bpetes` advised to mark accounts as 'automated'.
- **Memory Management**: `fixzzee` learned how to delete unwanted memories.
- **Multi-Agent Setup**: `benquik` received guidance on running multiple agents.
- **Local LLM Integration**: `chris.troutner` shared a solution for using Ollama.
- **REST API Setup**: `x4ndar` was directed to the new API documentation.
- **SQLite Errors**: `kalaudius` found a fix for SQLite module issues.
- **V2 Installation Issues**: `4n7m4n` reported `npx` errors, leading to a GitHub issue.
- **Plugin Registry Fixes**: `dankvr` worked on cleaning up metadata.
- **Documentation Contributions**: `552020` encouraged to update outdated tutorials.

### Action Items
#### **Technical Tasks**
1. Fix Docker build issues (`mr.stark_`, `hashwarlock`).
2. Improve plugin metadata storage (`dankvr`).
3. Debug Twitter client double responses (`odilitime`).
4. Fix SQLite module errors (`kalaudius`).
5. Improve REST API documentation (`dankvr`).

#### **Documentation Needs**
6. Update installation guides (`dankvr`).
7. Add a migration guide for V2 (`new.moon`).
8. Improve multi-agent setup documentation (`new.moon`).

#### **Feature Requests**
9. Add a memory deletion feature (`new.moon`).
10. Implement a Twitter auto-reply service (`nerdylabs`).
11. Improve V2 CLI usability (`dankvr`).