# ElizaOS Developer Update - Week of June 10-17, 2025

## Core Framework

### Server Package Separation
This week saw a significant architectural milestone with the separation of server functionality into a dedicated `@elizaos/server` package ([PR #5122](https://github.com/elizaos/eliza/pull/5122)). This enables:
- Independent usage of server components outside the main ElizaOS framework
- Complete backward compatibility with existing CLI integrations
- Better modularization for maintainability and testing

We've also added comprehensive test coverage to the new server package ([PR #5125](https://github.com/elizaos/eliza/pull/5125)), with extensive test scenarios for core, server, project-starter, and plugin-starter packages.

### Runtime & Type System Improvements
- Fixed critical runtime initialization and database adapter handling issues ([PR #5092](https://github.com/elizaos/eliza/pull/5092))
- Resolved circular dependency problems causing test failures ([PR #5135](https://github.com/elizaos/eliza/pull/5135))
- Moved utility function `getContentTypeFromMimeType` to core for better reusability ([PR #5138](https://github.com/elizaos/eliza/pull/5138))
- Added proper agent ID synchronization to database operations ([PR #5045](https://github.com/elizaos/eliza/pull/5045))

## New Features

### Enhanced Chat UI System
The chat interface received major improvements this week:
- Added animated markdown with smooth rendering and improved UX ([PR #5111](https://github.com/elizaos/eliza/pull/5111))
- Implemented enhanced code block component with syntax highlighting
- Added message resend (retry) feature for user messages ([PR #5141](https://github.com/elizaos/eliza/pull/5141))

```typescript
// Example of using the new animated markdown component
<AnimatedMarkdown 
  content={message.content}
  className="prose dark:prose-invert"
  animationDuration={700}
  highlight={true}
/>
```

### Action Prompts Logging
Added comprehensive logging for action prompts ([PR #5099](https://github.com/elizaos/eliza/pull/5099)), which helps developers:
- See exactly what prompt was used to generate an action
- Debug action generation and execution
- Understand the decision-making process of agents

### Channel Management API
Added new API endpoints for managing agents across channels ([PR #5113](https://github.com/elizaos/eliza/pull/5113)):
```bash
# Add agent to a channel
POST /api/channels/:channelId/agents/:agentId

# Remove agent from a channel
DELETE /api/channels/:channelId/agents/:agentId

# Get agents in a channel
GET /api/channels/:channelId/agents
```

## Bug Fixes

### File Uploads and Media Support
- Fixed file uploading functionality in GUI ([PR #5115](https://github.com/elizaos/eliza/pull/5115))
- Added support for all media types ([PR #5137](https://github.com/elizaos/eliza/pull/5137))
- Fixed transcription API functionality ([PR #5118](https://github.com/elizaos/eliza/pull/5118))

### Agent Behavior
- Fixed issue with Eliza responding for other characters ([PR #4920](https://github.com/elizaos/eliza/pull/4920))
- Resolved loading issues for custom characters after upgrading to 1.0.7 ([Issue #5039](https://github.com/elizaos/eliza/issues/5039))
- Fixed "Agent not a participant in channel" errors ([PR #4936](https://github.com/elizaos/eliza/pull/4936))
- Corrected evaluator callback handling in bootstrap plugin ([PR #5129](https://github.com/elizaos/eliza/pull/5129))

### Message Handling
- Fixed agent self-response infinite loop in message service ([PR #4934](https://github.com/elizaos/eliza/pull/4934))
- Resolved cross-agent interference loop problems ([PR #4935](https://github.com/elizaos/eliza/pull/4935))
- Enhanced user input handling in chat with better server-client synchronization ([PR #5128](https://github.com/elizaos/eliza/pull/5128))

## API Changes

### REST API Improvements
- Reorganized API routes into logical domain-based structure ([PR #5010](https://github.com/elizaos/eliza/pull/5010))
- Updated Postman collection with all missing API endpoints ([PR #5120](https://github.com/elizaos/eliza/pull/5120))
- Fixed missing API endpoint for `/api/agents/{agentId}/rooms` ([Issue #5121](https://github.com/elizaos/eliza/issues/5121))

```javascript
// Example of updated API endpoint for accessing agent rooms
const getAgentRooms = async (agentId) => {
  const response = await fetch(`/api/agents/${agentId}/rooms`);
  const data = await response.json();
  return data.success ? data.data.rooms : [];
};
```

### Content Security Policy Updates
- Updated Content Security Policy and error handling in API routes ([PR #5058](https://github.com/elizaos/eliza/pull/5058))
- Fixed CSP issues in development mode to resolve Safari localhost SSL errors ([PR #5073](https://github.com/elizaos/eliza/pull/5073))

## Social Media Integrations

### Twitter Plugin Issues
The ElizaOS Twitter account (149K followers) was suspended due to API policy violations this week. Our engineering team is:
- Working urgently with X to restore access
- Updating the Twitter plugin to comply with new API policies
- Preparing Farcaster as a backup platform (not a replacement)

Key Twitter plugin issues identified:
- `fetchHomeTimeline` function failing with 403 errors
- Auth parameter not being utilized in the `requestApi` function
- Limitations in fetching tweets over 280 characters
- Formatting issues with unwanted newlines in replies

**Fix coming in next release:** Delete 2 lines in `node_modules/@elizaos/plugin-twitter/dist/index.js` to fix the formatting issue temporarily.

## Model Provider Updates

### Database Integration
Users experienced difficulties configuring Supabase as a PostgreSQL database:
- Required extensions (vector and fuzzy) were enabled but integration issues persisted
- Some users found success by commenting out migrations in monorepo
- Alternative connection strings helped in some cases

### Knowledge Management
RAG functionality is not working properly in version 1.0.6 ([Issue #5004](https://github.com/elizaos/eliza/issues/5004)):
- Missing implementation in `/packages/core/src/runtime.ts`
- TODO comments in the codebase confirm the incomplete status
- The interface exists but no actual implementation is present

## Breaking Changes

### V1 to V2 Migration Issues
When upgrading existing projects to ElizaOS core 1.0.7+:
- Custom character registration may not work properly ([Issue #5039](https://github.com/elizaos/eliza/issues/5039))
- Environment variables might not be loaded for the default Eliza character ([PR #5090](https://github.com/elizaos/eliza/pull/5090))
- Plugin callback functionality is inconsistent ([Issue #5017](https://github.com/elizaos/eliza/issues/5017))

To ensure smooth migration:
```bash
# Update @elizaos/core to the latest version
bun add @elizaos/core@latest

# Clean any cached data
rm -rf .eliza .elizadb

# Update your project's character file imports
# Ensure you're initializing agents correctly in index.ts
```

For detailed information about these changes, please visit our [documentation site](https://eliza.how/docs/) or join our [Discord community](https://discord.gg/elizaos).