# ElizaOS Developer Update
**Week of August 12-18, 2025**

## 1. Core Framework

The ElizaOS team has made significant architectural improvements this week with PR #5793 introducing asynchronous embedding generation via a queue service. This enhancement separates the embedding generation process from the main message processing flow, improving overall system responsiveness.

An ongoing discussion is taking place about the optimal location for this service within the plugin architecture - specifically whether it should reside in `plugin-embeddings` or `plugin-bootstrap` for event handlers. This architectural decision impacts both performance and maintainability.

The team is also developing a new framework that powers multiple shows including "Clank Tank" and "Jedai Council" with a shared render pipeline, allowing improvements to benefit all shows simultaneously.

```typescript
// Example of the new queue-based embedding generation
runtime.on('messageCreated', async (message) => {
  // Instead of blocking to generate embeddings
  await embeddingQueue.enqueue({
    entityId: message.entityId,
    content: message.content.text,
    metadata: { messageId: message.id }
  });
  
  // Processing continues without waiting for embedding generation
});
```

## 2. New Features

### PDF Export Functionality

A new feature request (Issue #5790) has been opened to implement PDF export capabilities, allowing users to save conversation history and agent responses in a portable format.

### Video Understanding Model Selection

The team is researching the optimal model for video understanding capabilities, which will expand the platform's multimedia processing abilities beyond text and images.

## 3. Bug Fixes

Two critical bugs were resolved this week:

### SQL Parameter Mismatch (PR #5791)

Fixed a database error during entity creation where SQL parameter counts were mismatched:

```
[ERROR] Error creating entity: Failed query: insert into "entities" values ($1, $2, default, default, default)
params: [only 2 parameters provided when 5 were expected]
```

The fix properly aligns parameter counts between the SQL query and provided values:

```typescript
// Before: Mismatched parameter count
await this.sql`insert into "entities" values (${id}, ${type}, default, default, default)`;

// After: Properly structured query with explicit column names
await this.sql`insert into "entities" (id, type, created_at, updated_at, metadata) 
              values (${id}, ${type}, default, default, default)`;
```

### XML Parsing and Test Reliability (PR #5792)

Resolved multiple test failures in CI environments related to XML parsing and plugin configuration:

- Enhanced XML parsing reliability with improved regex pattern handling
- Fixed test failures in plugin-bootstrap attachments, evaluators, and services tests
- Resolved configuration issues in project-tee-starter that caused integration test failures

## 4. API Changes

The sessions API introduced in PR #5717 is now fully implemented in the API client SDK, offering a simplified interface for messaging between users and agents. This abstraction layer hides the complexity of servers, channels, and participants.

```typescript
// Example of using the new Sessions API
const client = new ElizaAPIClient({ baseUrl, token });

// Create a new session
const session = await client.sessions.create({
  name: "Project Planning",
  agentId: "550e8400-e29b-41d4-a716-446655440000"
});

// Send a message in the session
const response = await client.sessions.sendMessage({
  sessionId: session.id,
  content: "Can you help me plan my project?"
});
```

## 5. Social Media Integrations

Documentation requirements for the Twitter Plugin have been clarified in issue #40, specifically explaining what's needed for the Basic Tier functionality. Users looking to integrate ElizaOS agents with Twitter should review these updated requirements.

## 6. Model Provider Updates

No significant changes to model provider integrations were reported this week. The core team continues to use OpenAI, Anthropic, and other providers through the established integration pathways.

## 7. Breaking Changes

### Memory Persistence Issues

A critical issue has been identified where agents forget previous conversations after code changes trigger a rebuild. This is particularly problematic for developers working on agents that need to maintain conversation context during development iterations.

While not a formal V1 to V2 migration issue, developers should be aware of this limitation and consider the following workaround:

```typescript
// When making code changes, export your agent's memory first
// Use the CLI to export memories
elizaos agent export-memories --name myAgent --output ./memories-backup.json

// After rebuilding, import the memories back
elizaos agent import-memories --name myAgent --input ./memories-backup.json
```

The team is working on a more permanent solution to maintain chat context across code rebuilds.

---

**Links to relevant PRs and issues:**
- [PR #5793: Async embedding generation via queue service](https://github.com/elizaOS/eliza/pull/5793)
- [PR #5791: Fix entity creation SQL parameter mismatch](https://github.com/elizaOS/eliza/pull/5791)
- [PR #5792: Resolve test failures and enhance XML parsing](https://github.com/elizaOS/eliza/pull/5792)
- [Issue #5790: Implement PDF Export](https://github.com/elizaOS/eliza/issues/5790)
- [Issue #40: Clarify Twitter Plugin Basic Tier requirements](https://github.com/elizaOS-plugins/plugin-twitter/issues/40)