# ElizaOS Developer Update (2026-02-17 → 2026-02-23)

This week’s work centered on **ElizaOS v2** stabilization and prompt/context efficiency, plus continued ecosystem expansion. In Discord, core-devs also discussed **token/context blowups** (200k-token runs) and how to push filtering/“metatool”-style patterns deeper into the framework for long-term scalability.

---

## 1) Core Framework

### Database refactor + migration strategy adjustments (v2.0.0)
Work continued on the v2 DB refactor, including a notable cleanup that **removes legacy auto-migration code paths** (1.4.x → 1.6.x), reducing maintenance burden and clarifying the expected upgrade path.

- PR: **Database refactor / RLS alignment + large deletion of migration code** — https://github.com/elizaos/eliza/pull/6521  
  Discord context: core-devs noted ~2.6k LOC removed, mainly auto-migration logic; suggestion was to potentially replace with an explicit error directing users to upgrade to **1.6.x first** before v2.

### Request-scoped runtime configuration via AsyncLocalStorage
Per-request entity configuration propagation landed recently and is increasingly relevant as multi-tenant and per-entity settings expand (notably for cloud / hosted setups):

- PR: **RequestContext for per-user entity settings** — https://github.com/elizaos/eliza/pull/6457  
  Adds `RequestContext` backed by `AsyncLocalStorage`, enabling runtime methods to access entity-scoped settings without threading parameters through every call.

### Action/prompt bloat mitigation (framework-level filtering)
A key direction to address token pressure is reducing the action/provider surface shown to the model.

- PR: **ActionFilterService (vector search + BM25 reranking)** — https://github.com/elizaos/eliza/pull/6475  
  Purpose: dynamically reduce hundreds of actions/providers down to a small relevant set (~15) to keep prompts tight while preserving capability.

Discord follow-up: core-devs discussed optimizing MCP loading + “METATOOL search actions” and potentially moving that solution into core, but also observed the biggest token growth was coming from **recent messages + reflections** accumulating too much state (core-devs, 2026-02-23).

### V2 direction: multi-language core and slimmer distribution
Ongoing v2 work continues to emphasize a runtime-first architecture and cross-language parity:

- PR: **Next-gen multi-language Eliza (Rust/Python/TypeScript), removes default app/server/CLI, integrates bootstrap** — https://github.com/elizaos/eliza/pull/6485  
- PR: **“next” v2 work branch** — https://github.com/elizaos/eliza/pull/6474  
- Long-running v2 branch PR: https://github.com/elizaos/eliza/pull/6351

---

## 2) New Features

### SAID Protocol: on-chain Solana identity for agents (create-time provisioning)
Agents created via the CLI can automatically get a SAID identity (Ed25519 keys generated via Node `crypto`, registration via REST API).

- PR: https://github.com/elizaos/eliza/pull/6510  
- Registry: `@elizaos/plugin-said` — https://github.com/elizaos-plugins/registry/pull/264

Example CLI output (from PR description):

```text
✨ Project created successfully!

⚡ SAID Protocol identity created
  Wallet: 7xKXtg2CW87d97TXJSDpbD5jBkheTqA83TZRuJosgAs
  Profile: https://saidprotocol.com/agents/7xKXtg2CW87d97TXJSDpbD5jBkheTqA83TZRuJosgAs

  Key saved to .said-wallet.json (add to .gitignore!)
```

### plugin-bootstrap as the preferred “starter capability pack” (incl. image generation action)
In Discord, maintainers recommended using **`plugin-bootstrap`** for image generation rather than the older `plugin-image-generation` package.

- Discord note (2026-02-23): plugin-bootstrap includes an image generation action  
- PR (feature/robustness/perf): https://github.com/elizaos/eliza/pull/6476

If you’re building an agent template, prefer bootstrap as the default capability layer and add only specialized plugins beyond that.

### Ecosystem: SolCex Exchange BD agent plugin published + registry submission
A new autonomous BD agent plugin for exchange listings was announced and submitted to the registry.

- Registry PR: **SolCex Exchange plugin** — https://github.com/elizaos-plugins/registry/pull/263  
- npm package: `@buzzbd/plugin-solcex-bd` (as announced in Discord)

---

## 3) Bug Fixes (with technical context)

### Defensive null checks to prevent runtime crashes in common paths
Two high-impact “death by a thousand cuts” fixes landed to reduce crash frequency in real deployments where optional fields may be absent depending on runtime composition.

- **settings utilities guard `Object.entries()`** — https://github.com/elizaos/eliza/pull/6471  
  Fixes cases where settings objects can be `null`/`undefined` (common when merging layered config across plugins and environments).

- **plugin-bootstrap providers guard `runtime.providers`** — https://github.com/elizaos/eliza/pull/6473  
  Prevents:
  `TypeError: Cannot read properties of null (reading 'filter')`  
  This matters for minimal runtimes, test harnesses, or custom boot flows where providers may be injected later.

### Token/context blowups: root cause narrowed
From core-devs discussion (2026-02-23): token usage problems were attributed less to actions themselves and more to **recentMessages/reflections** collecting excessive state. This aligns with why action/provider filtering (and potentially provider-level “metatool” patterns) are becoming a priority.

References:
- Discord: core-devs thread on MCP loading + METATOOL search actions optimization (2026-02-23)

---

## 4) API Changes (developer-facing)

### v1 → v2 migration behavior changes (DB)
- v2 refactor work removes older auto-migration paths (notably 1.4.x → 1.6.x).  
  If you maintain legacy installs, expect to **explicitly migrate to 1.6.x first**, then move to v2.
- PR: https://github.com/elizaos/eliza/pull/6521

### v2 runtime behavior shifts (in-flight in v2 PRs)
The v2 “next generation” PRs describe several runtime semantics that plugin authors should account for:

- **Agents can respond without `roomId`/`worldId`** (useful for games and lightweight chat surfaces)
- **Initial message memory creation moved into the message handler service**
- **`planningMode` toggle**: when `false`, skip planning and go directly to a single action (good for deterministic/game loops)
- **Actions can accept arguments** and be invoked “tool-style” without a separate planning step

Track in:
- https://github.com/elizaos/eliza/pull/6485  
- https://github.com/elizaos/eliza/pull/6474

---

## 5) Social Media Integrations

### Twitter plugin: auth retry loop + media upload work
Twitter integration saw meaningful stability + capability improvements recently:

- PR: **Fix auth retry loop + add media upload** — https://github.com/elizaos-plugins/plugin-twitter/pull/48

### Telegram/Discord (deployment/infrastructure)
No new merged PRs in this dataset for Telegram/Discord this week, but ongoing infra work for cloud deployments and “workflow vs full sandbox” agent hosting was discussed in core-devs, alongside Milady/Eliza App backend sharing and planned Babylon/Hyperscape integrations.

---

## 6) Model Provider Updates

### Prompt/context efficiency is the main provider-adjacent theme this week
While there were no confirmed merged provider changes in the provided data, the framework is moving toward **reducing context payload** rather than asking models for more tokens.

Key related work:
- **ActionFilterService** to shrink tool/action exposure — https://github.com/elizaos/eliza/pull/6475
- Ongoing discussion: applying “metatool” patterns not just to actions but potentially to **providers**, weighed against implementation delay (Discord core-devs, 2026-02-23).

### OpenAI-compatible endpoints requested (feature request)
Developers asked for configurable OpenAI base URLs to support OpenAI-compatible third-party providers.

- Issue: **Support custom OpenAI endpoint URL** — https://github.com/elizaos/eliza/issues/6490

---

## 7) Breaking Changes (V1 → V2 Migration Warnings)

### V2 distribution is runtime-first; legacy app/server/CLI assumptions will break
The v2 direction explicitly removes default application/client/server/CLI from the “core distribution” in favor of a slimmer multi-language runtime and ported critical plugins.

- PRs to watch:
  - https://github.com/elizaos/eliza/pull/6485
  - https://github.com/elizaos/eliza/pull/6351

**Impact:** if your project depends on monorepo-provided server/webapp defaults, plan to pin v1 or migrate to v2 examples/hosted patterns.

### Database migration expectations tightened
Auto-migration from very old versions is being removed.

- PR: https://github.com/elizaos/eliza/pull/6521  
**Action:** ensure you have a documented upgrade step to **1.6.x** before adopting v2 DB changes.

### Plugin guidance update: image generation
If you’re using `plugin-image-generation` (older), the recommended path is to prefer `plugin-bootstrap`’s image generation action and broader maintained baseline.

- Discord: 💬-discussion (2026-02-23): “plugin-bootstrap has an image generation action”

---

### Links / References
- Core-devs Discord discussion (token/context optimization + restructuring note): https://discord.com/channels/1253563208833433701/1377726087789940836
- PR #6521 (DB refactor / migration removal): https://github.com/elizaos/eliza/pull/6521
- PR #6475 (ActionFilterService): https://github.com/elizaos/eliza/pull/6475
- PR #6476 (plugin-bootstrap perf/robustness): https://github.com/elizaos/eliza/pull/6476
- PR #6471 (settings null checks): https://github.com/elizaos/eliza/pull/6471
- PR #6473 (runtime.providers null check): https://github.com/elizaos/eliza/pull/6473
- PR #6510 (SAID identity): https://github.com/elizaos/eliza/pull/6510
- Registry #264 (plugin-said): https://github.com/elizaos-plugins/registry/pull/264
- Registry #263 (SolCex BD plugin): https://github.com/elizaos-plugins/registry/pull/263
- Twitter plugin PR #48: https://github.com/elizaos-plugins/plugin-twitter/pull/48
- Issue #6490 (custom OpenAI endpoint): https://github.com/elizaos/eliza/issues/6490