# ElizaOS Developer Update - August 11, 2025

## Core Framework

We've made significant architectural improvements to the ElizaOS core this week to enhance stability, performance, and developer experience:

### Streaming Implementation Issues Identified
A detailed analysis revealed inefficiencies in our token-by-token streaming implementation. The current approach using event emitters instead of native HTTP streaming (SSE/chunked) is causing latency issues, CPU overhead, and potential memory problems. We're planning a complete redesign of the client communication layer to support both SSE and websockets from the server.

```typescript
// Current inefficient implementation (to be replaced)
// Using event emitters for token streaming
emitter.emit('token', token);

// Future implementation direction
// Using native HTTP streaming
res.write(JSON.stringify({ token }));
```

### Plugin System Refinements
- **Removed Obsolete Specs**: We've cleaned up the codebase by removing unused plugin specification systems from the core package ([#5724](https://github.com/elizaos/eliza/pull/5724)), reducing over 12,000 lines of code.
- **Enhanced Plugin Loading**: Fixed a critical bug in the plugin system where the `startAgent` command would hang when certain plugins were included or omitted ([#5719](https://github.com/elizaos/eliza/issues/5719)).
- **MySQL Support**: Added proper support for `plugin-mysql` ([#5718](https://github.com/elizaos/eliza/pull/5718)), ensuring it works alongside other database adapters.

### Logger Improvements
We've standardized our logger implementation to use structured logging with Pino, fixing inconsistencies across the codebase ([#5737](https://github.com/elizaos/eliza/pull/5737)):

```typescript
// Old approach (inconsistent)
logger.info("Starting operation", operationId);

// New structured approach
logger.info({ operationId }, "Starting operation");
```

## New Features

### Sessions API
Introduced a new Sessions API that simplifies agent-user interactions by abstracting away the complexity of servers, channels, and participants ([#5704](https://github.com/elizaos/eliza/pull/5704), [#5717](https://github.com/elizaos/eliza/pull/5717)):

```typescript
// Example usage of the new Sessions API
const session = await client.sessions.create({
  agentId: "your-agent-id",
  userId: "user-123"
});

// Send a message
await client.sessions.sendMessage({
  sessionId: session.id,
  content: "Hello, agent!",
  role: "user"
});

// Retrieve session messages
const messages = await client.sessions.getMessages({
  sessionId: session.id
});
```

### Comprehensive Scenario Testing System
Added a YAML-based scenario testing system ([#5723](https://github.com/elizaos/eliza/pull/5723)) with support for both local and E2B sandboxed environments:

```yaml
# Example scenario definition
name: "API Integration Test"
description: "Tests the agent's ability to use external APIs"

plugins:
  - "@elizaos/plugin-http"

environment:
  type: e2b

setup:
  mocks:
    - service: "http-service"
      method: "get"
      when:
        input:
          url: "https://api.example.com/data"
      response:
        status: 200
        data: { "result": "success" }

run:
  - name: "Fetch API data"
    input: "Get data from the example API"
    evaluations:
      - type: "trajectory_contains_action"
        action: "http-service.get"
      - type: "string_contains"
        value: "success"
```

### CLI Debugging Tools
Added a comprehensive debug tool for diagnosing ElizaOS CLI delegation issues ([#5682](https://github.com/elizaos/eliza/pull/5682)), with automatic fixes for common problems.

## Bug Fixes

### Critical Build Issues
Fixed a high-priority issue preventing project creation with the ElizaOS CLI ([#5734](https://github.com/elizaos/eliza/issues/5734)):

```
Error: src/index.ts(7,25): error TS2345: Argument of type 'string' is not assignable to parameter of type 'undefined'.
```

### XML Parser Security
Replaced an unsafe XML fallback regex with a linear scan approach to avoid potential DoS vulnerabilities ([#5741](https://github.com/elizaos/eliza/pull/5741)).

### Test Reliability
- Fixed `elizaos test --type component` to pass for all project and plugin types ([#5705](https://github.com/elizaos/eliza/pull/5705))
- Enabled E2E testing for all starter templates ([#5720](https://github.com/elizaos/eliza/pull/5720))

### Agent Management Improvements
- Fixed memory count display in `clearAgentMemories` command ([#5712](https://github.com/elizaos/eliza/pull/5712))
- Added robust error handling for UUID conversion in agent commands ([#5711](https://github.com/elizaos/eliza/pull/5711))
- Fixed agent config output exclusion ([#5710](https://github.com/elizaos/eliza/pull/5710))

## API Changes

### Package Dependencies
Standardized all workspace package dependencies to use `workspace:*` instead of hardcoded version numbers ([#5731](https://github.com/elizaos/eliza/pull/5731), [#5744](https://github.com/elizaos/eliza/pull/5744)):

```json
// Old approach with hardcoded versions
"dependencies": {
  "@elizaos/core": "1.3.2",
  "@elizaos/cli": "1.3.2"
}

// New approach with workspace protocol
"dependencies": {
  "@elizaos/core": "workspace:*",
  "@elizaos/cli": "workspace:*"
}
```

### Authentication Support
Added comprehensive authentication support to CLI agent commands by integrating the `@elizaos/api-client` package ([#5709](https://github.com/elizaos/eliza/pull/5709)).

## Social Media Integrations

The ElizaOS Twitter/X account has been unavailable for approximately two months. Community members report that the account will potentially return "this week," with the correct handle likely being "@shawmakesmagic" (without an "s" at the end).

R0am shared a link to "elizaos" on Farcaster in the core-devs channel, suggesting expanded social presence beyond Twitter.

## Model Provider Updates

### Bootstrap Plugin Improvements
- Added a new setting `BOOTSTRAP_DEFLLMOFF` to automatically turn off LLM responses ([#5684](https://github.com/elizaos/eliza/pull/5684))
- The plugin now uses the proper runtime logger for all calls in the context of a runtime

## Breaking Changes

### V1 to V2 Migration

Several components have been refactored that may affect existing implementations:

1. **CLI Command Changes**: Agent commands now require proper authentication tokens ([#5709](https://github.com/elizaos/eliza/pull/5709))

2. **Runtime Interface Updates**: Action triggering behavior has changed in recent updates:
   ```
   If you're experiencing issues with actions that previously triggered consistently, try:
   - Improving your action descriptions and examples
   - Updating to version 1.4.2 (latest)
   - Debugging which actions the agent is calling using logs
   ```

3. **Database Connectivity**: The adapter-supabase plugin is no longer needed for newer Eliza versions. Instead, use direct Postgres connection with the Supabase URL:
   ```typescript
   // Old approach
   // Required adapter-supabase plugin

   // New approach
   // Direct connection using Postgres URL
   const connectionString = "postgres://[user]:[password]@[host]:[port]/[database]?sslmode=require";
   ```

4. **Package Management**: All internal dependencies now use the workspace protocol (`workspace:*`), which may affect Docker builds. If you encounter issues, try using the develop branch instead of release versions.