# ElizaOS Developer Update - September 20, 2025

## Core Framework

This week marks a major milestone for ElizaOS as we unveiled our vision for version 2.0 with several groundbreaking architectural changes:

### Browser SDK

We're developing a full browser SDK that enables agent functionality to run entirely in-browser without persistent servers. This approach will support:
- Local LLM execution
- MetaMask integration
- Serverless operations

Implementation has begun with the centralization of business logic in the server package via [PR #5864](https://github.com/elizaOS/eliza/pull/5864), setting the foundation for a cleaner architecture.

### ElizaOS Class + Core API

A significant architectural change is underway to provide a unified programmatic entry point for agent management:

```typescript
// New unified API approach
import { ElizaOS } from '@elizaos/core';

const eliza = new ElizaOS({
  plugins: [openAIPlugin, bootstrapPlugin],
  settings: { /* your config */ }
});

// Create and manage agents through a single interface
const agent = await eliza.createAgent({ 
  name: 'MyAgent', 
  instructions: 'You are a helpful assistant.'
});

// Simplified message handling
agent.on('message', (msg) => console.log(msg));
await agent.sendMessage('Hello!');
```

### Message Bus Simplification

We're implementing optional, simpler APIs for agent communication while maintaining compatibility with existing patterns. This will reduce boilerplate and make agent-to-agent communication more intuitive.

## New Features

### Dynamic Prompting for Scenarios

The team merged [PR #5824](https://github.com/elizaOS/eliza/pull/5824) implementing multi-turn conversation testing in the scenario runner:

```yaml
run:
  - input: "Hi, I need help with something"
    conversation:
      max_turns: 4
      user_simulator:
        persona: "polite customer with a billing question"
        objective: "find out why charged twice this month"
        temperature: 0.6
      final_evaluations:
        - type: "llm_judge"
          prompt: "Did the agent successfully help resolve the billing issue?"
          expected: "yes"
```

This feature enables testing complex agent behaviors through simulated multi-turn conversations, providing a powerful tool for ensuring agents handle realistic scenarios correctly.

### Real-time Action Execution UI

We've enhanced the chat UI to show action execution and results in real-time via [PR #5865](https://github.com/elizaOS/eliza/pull/5865):

```typescript
// Core event system now emits detailed action events
runtime.on('action:start', (data) => {
  // UI can display the action starting
});

runtime.on('action:complete', (result) => {
  // UI can show the action result
});
```

This improvement gives users better visibility into what actions agents are taking and their outcomes.

## Bug Fixes

### Port Conflicts in Development Mode

We resolved a critical issue with the `elizaos dev` command that was creating an infinite loop of port reassignments ([PR #5988](https://github.com/elizaOS/eliza/pull/5988)). The fix ensures the CLI waits for ports to be available before attempting server restart:

```typescript
// Before restarting server, ensure port is released
await waitForPortToBeFreed(port, {
  retryInterval: 100,
  timeout: 5000
});
```

### Security Concerns

A wallet drain incident was reported, likely from an npm supply chain attack. In response, we've:

1. Added overrides in package.json for vulnerable dependencies
2. Implemented additional security checks in our CI/CD pipeline
3. Enhanced runtime verification of plugin integrity

### Image Display Issues

Fixed issues with images not displaying properly in various contexts:
- Discord image generation now working ([PR #5861](https://github.com/elizaOS/eliza/pull/5861))
- OpenRouter image paths are properly transformed to API URLs ([PR #5890](https://github.com/elizaOS/eliza/pull/5890))

## API Changes

### Package Migration to Zod v4

We're migrating to Zod v4 for better compatibility with newer AI SDKs. This change affects type validation across the framework and may require updates to custom plugins:

```typescript
// Before (Zod v3)
const schema = z.object({
  name: z.string(),
  config: z.object({}).passthrough()
});

// After (Zod v4)
const schema = z.object({
  name: z.string(),
  config: z.object({}).catchall(z.any())
});
```

### Browser-Compatible SQL Plugin

We've added a browser build for `@elizaos/plugin-sql` using PGlite WASM ([PR #5970](https://github.com/elizaOS/eliza/pull/5970)), enabling database functionality in browser-only deployments:

```typescript
// Browser-compatible import automatically uses PGlite
import sqlPlugin from '@elizaos/plugin-sql';

// Usage remains the same across environments
const agent = {
  name: 'DatabaseAgent',
  plugins: [sqlPlugin],
  settings: { /* DB config */ }
};
```

## Social Media Integrations

### Farcaster Integration

Significant improvements to the Farcaster plugin are in progress, including:
- Mini apps support
- Improved memory handling to reduce excessive PostgreSQL requests
- Better error handling for connection issues

### Discord Plugin

The Discord plugin now properly supports image generation ([PR #5861](https://github.com/elizaOS/eliza/pull/5861)), fixing a long-standing issue where images would appear in the web UI but not in Discord channels.

## Model Provider Updates

### Grok 4 Fast Model

The Grok 4 Fast model is now available through OpenRouter with:
- 2M token context window
- Toggle-able reasoning capabilities
- Improved latency for real-time applications

### Plugin Updates

Several model provider plugins received updates:
- plugin-openrouter: PR #11 with hotfixes
- plugin-openai: PR #15 adding proxy routing capabilities and upgrading SDK v4 to v5
- plugin-anthropic: PR #7 updating Sonnet 3 to 4 and adding browser routing

## Breaking Changes

### V1 to V2 Migration Notes

As we move toward ElizaOS 2.0, be aware of these upcoming changes:

1. **Plugin API Changes**: The plugin system is being enhanced to support React components as first-class plugins. Legacy plugins will continue to work but won't have access to the new capabilities.

2. **Runtime Changes**: The AgentServer is being refactored to delegate more responsibility to project code. This means your project structure may need updates when migrating to V2.

3. **Configuration Changes**: The centralization of business logic will affect how configuration is managed. A migration guide will be provided closer to release.

4. **React-First Approach**: The new architecture will prioritize React components and hooks, making it easier to build UI-integrated agents but potentially requiring changes to pure Node.js implementations.

Timeline for these changes: Browser SDK and core API upgrades are scheduled for Sep-Oct 2025, with additional features rolling out through the end of 2025.