# ElizaOS Developer Update (2026-04-05 → 2026-04-11)

This week centered on **V3 (a.k.a. “2.x”) hardening and host ergonomics**, with major work landing (or in-flight) around: TOON encapsulation, runtime composition helpers, local dev harnessing, cross-chain plugins, and a broader push toward **AgentID / capability-gated execution**.

---

## 1) Core Framework

### V3 / 2.x agents: testing phase on `develop`
Core devs confirmed **Eliza v3 (version 2.x)** agents are actively being tested and are already available on the `develop` branch, with a release/announcement planned after validation. The v3 work is also already integrated into *Milady* (per Discord).  
Refs: Discord thread (coders) 2026-04-08.

### Runtime composition helpers + new “agent” workspace (in review)
PR **#6702** adds a new top-level `agent/` workspace intended as a **local REPL harness** for booting and iterating on `@elizaos/core`, including:
- stdin/stdout loop around `runtime.messageService`
- character loading improvements (JSON file paths)
- SQL-backed runtime setup via `@elizaos/plugin-sql`
- submodule-based local plugin workflow (`plugin-sql`, `plugin-ollama`, `plugin-local-ai`) and scripts to link/restore workspaces

**Key architectural changes introduced by #6702:**
- `loadCharacters(...)` extended to accept JSON file paths + options (`cwd` for relative resolution)
- `createRuntimes(...)` extended to thread a new `checkShouldRespond` option through runtime construction

PR: https://github.com/elizaos/eliza/pull/6702

**Caveat (important for contributors testing this PR):**
Automated review noted **workspace/submodule + lockfile inconsistencies** that can break fresh clones (root `package.json` containing submodule workspaces and `bun.lock` not matching `workspace:*` intent). If you evaluate #6702 locally, expect some churn here until the PR is reconciled.

---

## 2) New Features

### (A) TOON-first encapsulation infrastructure (large internal refactor in-flight)
PR **#6709** is framed as a bugfix, but it also lands meaningful new capability for connector authors: **TOON format now carries structured action params reliably**, plus new TOON utilities and deterministic prompt naming/shuffling.

Highlights (per PR description + review summary):
- New `packages/typescript/src/utils/toon.ts` utilities (encode/decode and `parseToonActionParams`)
- Template migration: **prompts refactored from XML to TOON** (broad migration)
- Multimodal-ish text attachments type added (`GenerateTextAttachment` in model types)
- Deterministic prompt-name generation (`utils/deterministic.ts`)

PR: https://github.com/elizaos/eliza/pull/6709

### (B) Cross-chain swaps expanding via registry + new swap plugin initiation
A new registry submission was initiated to enable **cross-chain swaps across 10+ networks** via MangoSwap’s ElizaOS plugin.  
Contributor summary points to **registry PR #336** for `@mangoswap/elizaos-plugin` (cross-chain swaps).  
(Registry PR link not included in the dataset payload; verify in `elizaos-plugins/registry` PR list around #336.)

Related weekly registry additions:
- `plugin-signalfuse` PR **#333**: https://github.com/elizaos-plugins/registry/pull/333  
- `@madeonsol/plugin-madeonsol` PR **#334**: https://github.com/elizaos-plugins/registry/pull/334  
- `@razzgames/elizaos-plugin` PR **#335**: https://github.com/elizaos-plugins/registry/pull/335

### (C) Agent economic tooling: MnemoPay “economic memory” plugin (in review)
PR **#6701** introduces `plugin-mnemopay`, adding an economic memory loop with:
- Service: `MnemoPayService`
- Actions: `CHARGE_PAYMENT`, `SETTLE_PAYMENT`, `REFUND_PAYMENT`, `REMEMBER_OUTCOME`, `RECALL_MEMORIES`
- Provider context injection (balance, reputation, txs, recalled memories)
- Evaluator with `alwaysRun: true` for passive learning

PR: https://github.com/elizaos/eliza/pull/6701

**Engineering note:** automated review flagged several issues to address before merge (no persistence, NaN reputation corruption risk, handler null-safety, unbounded memory growth, action keyword conflicts, no tests). Treat #6701 as experimental until those are resolved.

---

## 3) Bug Fixes (Critical / High-impact)

### Fix: missing action parameters in TOON connectors (Discord/Milady)
PR **#6709** fixes a major reliability problem for connectors using **TOON encapsulation** (notably Discord + Milady connectors mentioned in the PR background):

**Root cause:** the single-shot TOON response schema did not request `params`, so required action params (e.g. `RUN_IN_TERMINAL.command`) were never emitted by the model for TOON connectors, causing silent action failures.

**Fix:** extend the TOON schema to include a `params` field, so connectors get structured params consistently.

PR: https://github.com/elizaos/eliza/pull/6709

**Expected TOON output shape (illustrative):**
```ts
{
  "actions": ["RUN_IN_TERMINAL"],
  "params": {
    "RUN_IN_TERMINAL": { "command": "ls -la" }
  }
}
```

### Fix: runaway continuation loop after async/PTY-backed actions
Also in **#6709**, several async task/orchestrator actions are now treated as “terminal” for continuation logic:
- `CREATE_TASK`, `START_CODING_TASK`, `CODE_TASK`, `SPAWN_AGENT`, `SPAWN_CODING_AGENT`

**Why it matters:** without this, hosts could emit repeated filler responses while the PTY/task runs, spamming channels and obscuring the final synthesis output.

PR: https://github.com/elizaos/eliza/pull/6709

### Windows DX: git checkout blocks in `plugin-openrouter` (in progress)
`plugin-openrouter` PR **#25** removes PGlite artifacts that were blocking Windows git operations (large cleanup).  
PR: https://github.com/elizaos-plugins/plugin-openrouter/pull/25

### Security dependency bump (pending merge)
Dependabot PR **#6694** bumps `path-to-regexp` to `8.4.0` (addresses CVE-2026-4926 and CVE-2026-4923), plus `handlebars` / `picomatch` security updates in the computeruse packages.  
PR: https://github.com/elizaos/eliza/pull/6694

---

## 4) API Changes (Developer-facing)

### `loadCharacters` now accepts file paths (in #6702)
If merged, hosts can load character definitions directly from JSON file paths, with optional cwd-based relative resolution.

**Example (proposed usage):**
```ts
import { loadCharacters } from "@elizaos/core/runtime-composition";

const characters = await loadCharacters([
  "./characters/alice.json",
  "./characters/bob.json",
], { cwd: process.cwd() });
```

PR: https://github.com/elizaos/eliza/pull/6702

### `createRuntimes` threads `checkShouldRespond` (in #6702)
If merged, runtime creation supports an injected gating function for response eligibility.

**Example (proposed usage):**
```ts
import { createRuntimes } from "@elizaos/core/runtime-composition";

const runtimes = await createRuntimes({
  characters,
  checkShouldRespond: async (ctx) => {
    // e.g., ignore bot chatter, enforce allowlists, rate-limit
    return ctx.message.author.role !== "bot";
  }
});
```

PR: https://github.com/elizaos/eliza/pull/6702

### TOON-related parsing behavior changes (in #6709)
Even though #6709 claims “no API changes”, it materially affects:
- schema contract for single-shot TOON responses (now expects `params`)
- `parseActionParams` path prioritizing TOON decoding
- prompt/template format defaults shifting toward TOON

If you maintain custom connectors or prompt tooling that assumes XML-first parsing, re-test against #6709’s template refactor.  
PR: https://github.com/elizaos/eliza/pull/6709

---

## 5) Social Media Integrations (Twitter / Telegram / Discord / Farcaster)

### Discord / Milady connector compatibility improvements
The most concrete integration impact this week is on **Discord/Milady-style connectors** using TOON encapsulation:
- required action params now appear reliably (fixes “action fires but does nothing” class of failures)
- async task actions no longer cause continuation spam

PR: https://github.com/elizaos/eliza/pull/6709  
Discord context: https://discord.com/channels/1253563208833433701/1300025221834739744

No substantive updates were observed this week for Twitter/Telegram/Farcaster plugins in the provided dataset.

---

## 6) Model Provider Updates (OpenAI / Anthropic / DeepSeek / etc.)

### Anthropic provider: Opus 4.x + ai-sdk v6 alignment (in progress)
Ongoing work on `plugin-anthropic` targets **Opus 4.x compatibility**, including:
- temperature handling
- output caps
- naming convention updates for `ai-sdk` v6

Contributor summary references an open PR in `elizaos-plugins/plugin-anthropic` (**#15**). (Link not included in the dataset payload; check repo PR list.)  
Discord mention: overall day summary 2026-04-08.

### OpenRouter provider: Windows repo hygiene fix (in progress)
As noted above, `plugin-openrouter` PR #25 is a major Windows DX fix.  
PR: https://github.com/elizaos-plugins/plugin-openrouter/pull/25

---

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

### Potential breaking surface: TOON migration + parsing expectations
With **#6709** migrating templates and utilities toward TOON, expect the following migration pressure points:
- Custom connectors that post-process XML may now receive TOON-first outputs.
- Tooling that relies on legacy XML prompt templates may need updates.
- If you enforce strict JSON schema validation upstream, ensure your schema accepts `params` for TOON responses.

PR: https://github.com/elizaos/eliza/pull/6709

### Potential breaking surface: repo boot/dev workflow via submodules (if #6702 merges)
If PR **#6702** lands, it changes local dev expectations:
- optional plugins may be managed as submodules during dev
- workspaces can include local plugin builds
- new `agent/` harness becomes the primary “boot the repo” path

Until the PR resolves the workspace/lockfile issues, **fresh clones** could be impacted; pin your CI to a known-good commit or avoid relying on submodule workspaces unless you follow the exact scripts.

PR: https://github.com/elizaos/eliza/pull/6702

---

## Additional Context: Safety, Trust, and Authorization (Design threads)

### Agent safety remains an open question at runtime/tool-call level
A direct question was raised in Discord: “how do you currently prevent your agent from doing something unsafe?”—with no concrete mechanism finalized publicly in the thread. This aligns with ongoing GitHub proposals pushing for capability enforcement and cryptographic authorization.

Discord thread: https://discord.com/channels/1253563208833433701/1300025221834739744

### Active proposals/issues to track
- **AgentID framework**: https://github.com/elizaos/eliza/issues/6688  
- **AIGEN Protocol** (economic incentives): https://github.com/elizaos/eliza/issues/6708  
- **Capability token enforcement plugin proposal (SINT)**: https://github.com/elizaos/eliza/issues/6707  
- **Delegation chains + scoped authority proposal**: (opened this week; referenced as **#6711** in contributor summary—verify in `elizaos/eliza` issues list)
- MCP server security posture (“A” grade): https://github.com/elizaos/eliza/issues/6710  

These threads are converging on a consistent theme: **capability-based authorization + attestable identity/history** for safe autonomous operation (especially for finance and social posting tools).

---