# ElizaOS Developer Update
**Week of November 14-20, 2025**

## 1. Core Framework

The core ElizaOS framework has seen significant improvements this week with a focus on stability and performance:

- **Browser Compatibility**: ElizaOS core and runtime now fully function in browser environments with WebAssembly support for the SQLite plugin. Some plugins still require migration to browser compatibility. ([Discord discussion, Nov 17](https://github.com/elizaOS/eliza/pull/6159))

- **Runtime Initialization**: Added `initPromise: Promise<void>` to the `IAgentRuntime` interface, improving async initialization flows and allowing better sequencing of startup operations. This enables more robust plugin initialization patterns. ([PR #6143](https://github.com/elizaOS/eliza/pull/6143))

- **Database Provider Flexibility**: Implemented conditional loading of either MySQL or SQLite/PostgreSQL database providers based on environment configuration. This enables users to choose their database technology without code changes. ([PR #6143](https://github.com/elizaOS/eliza/pull/6143))

- **Security Enhancements**: Stan completed E2E authentication tests for Entity/server isolation and added a real Postgres instance in CI for testing. Work on entity-level row-level security continues through [PR #6107](https://github.com/elizaOS/eliza/pull/6107).

## 2. New Features

### Migration from LangChain v0.3 to @langchain/textsplitters v1.0

The framework now uses the latest LangChain packages, ensuring long-term stability and compatibility:

```typescript
// Old code (deprecated)
import { RecursiveCharacterTextSplitter } from "langchain/text_splitter";

// New code
import { RecursiveCharacterTextSplitter } from "@langchain/textsplitters";
```

This change affects all text processing operations and ensures future compatibility. ([PR #6152](https://github.com/elizaOS/eliza/pull/6152))

### Browser-based TEE for iOS

The team is exploring running ElizaOS in browser-based Trusted Execution Environments (TEEs) on iOS devices:

```typescript
// Conceptual implementation for browser-TEE
const browserRuntime = new ElizaRuntime({
  secure: true,
  environment: "browser-tee",
  plugins: [
    await loadWasmPlugin("plugin-sql"),
    // Other browser-compatible plugins
  ]
});

// Initialize with iOS-specific security context
await browserRuntime.initialize({
  securityContext: "ios-enclave"
});
```

This would enable secure agent execution in mobile browsers with hardware-backed security guarantees. ([Discord discussion, Nov 19](https://github.com/elizaOS/eliza/issues/6161))

## 3. Bug Fixes

Several critical bugs were resolved this week:

- **Entity Array Serialization**: Fixed entity creation failures by normalizing the `names` field to ensure it's always a proper array before database operations. Now properly handles Set objects by converting them with `Array.from()`. ([PR #6133](https://github.com/elizaOS/eliza/pull/6133))

- **Environment Variables**: Corrected the loading of environment variables from `process.env` instead of just `.env` files, ensuring `runtime.getSetting("ANY_VARIABLES")` works correctly with variables exported on the host. ([PR #6141](https://github.com/elizaOS/eliza/pull/6141))

- **Row-Level Security**: Fixed an issue where server_id validation checks were incorrectly blocking all users when RLS isolation was disabled. ([PR #6139](https://github.com/elizaOS/eliza/pull/6139))

- **Plugin-Twitter Functionality**: The team identified issues with the Twitter plugin and is working on a fix. ([Core Dev Chat, Nov 19](https://github.com/elizaOS/eliza/issues/6161))

## 4. API Changes

### ElizaOS Reference in Runtime

Added an ElizaOS reference directly to the runtime for more streamlined framework interactions:

```typescript
// New method to check if ElizaOS is available
if (runtime.hasElizaOS()) {
  const elizaos = runtime.getElizaOS();
  
  // Use unified messaging API
  await elizaos.messaging.sendMessage({
    channel: "general",
    content: "Hello from the unified API!"
  });
}
```

This change supports the upcoming unified messaging API. ([PR #6111](https://github.com/elizaOS/eliza/pull/6111))

### Skip Migrations Option

Added an optional `skipMigrations` parameter to `runtime.initialize()` method:

```typescript
// Skip migrations for faster startup in development
await runtime.initialize({
  skipMigrations: true
});
```

This allows for faster initialization in development environments. ([PR #6132](https://github.com/elizaOS/eliza/pull/6132))

## 5. Social Media Integrations

- **Farcaster + Base App Support**: A new issue was opened to add Farcaster and Base application support ([Issue #6161](https://github.com/elizaOS/eliza/issues/6161)). This would expand ElizaOS's decentralized social media capabilities.

- **Twitter Plugin**: The plugin-twitter functionality is currently experiencing issues that are being investigated. Users should be aware of potential disruptions. ([Core Dev Chat, Nov 19](https://github.com/elizaOS/eliza/issues/6158))

- **Distributed Agent Runtime**: Discussions are taking place about implementing a distributed runtime that could operate across browsers, enabling multi-user agent experiences with shared state. ([Discord, Nov 17](https://github.com/elizaOS/eliza/issues/6159))

## 6. Model Provider Updates

The framework is considering integration with new AI model providers:

- **DeepSeek API**: A feature request has been opened to integrate the DeepSeek API ([Issue #6156](https://github.com/elizaOS/eliza/issues/6156)), which would expand the available model options.

- **Eliza Cloud**: The team is developing an Eliza Cloud service with planned revenue to buy back ELIZAOS tokens. This service will likely include token-gated access to premium models. ([Discord, Nov 17](https://github.com/elizaOS/eliza/issues/6160))

## 7. Breaking Changes

### Token Migration (AI16Z to ElizaOS)

The project has migrated from AI16Z to ElizaOS due to trademark conflicts with a16z corporation:

- Migration involves a 6:1 conversion ratio with a snapshot mechanism limiting eligible addresses
- Migration portal will remain open until February 5, 2026
- Unclaimed tokens after the deadline will add value to ELIZAOS
- Team tokens have a vesting schedule (3-month cliff + 9-month linear vest), but community tokens don't

Developers with tokens should complete migration through the official portal or via exchange mechanisms. This change affects any applications or services that were using AI16Z tokens for payment or access control.

### Developer Prerequisites Update

For new developers looking to build on ElizaOS:

- TypeScript knowledge is essential for development
- React and Solidity knowledge is not required initially
- The official documentation at Eliza.how is recommended for proper onboarding
- Start with the CLI tool to create your first agent

---

As always, we welcome your feedback and contributions. Please direct any questions or issues to our [GitHub repository](https://github.com/elizaOS/eliza) or Discord community.