# ElizaOS Developer Update (2026-03-23 → 2026-03-29)

This update summarizes core runtime changes, registry activity, and emerging “agent commerce” integrations discussed across GitHub + Discord during the past week.

---

## 1) Core Framework

### Action parsing is now XML-first (less brittle, fewer silent failures)
Core message parsing was hardened to treat `<actions>...</actions>` as structured XML content rather than comma-splitting raw strings.

- **Merged:** `fix(core): parse XML action tags instead of comma-splitting actions` ([PR #6661](https://github.com/elizaos/eliza/pull/6661))
- **Merged:** `fix: extract action params from standalone XML blocks in comma-separated format` ([PR #6692](https://github.com/elizaos/eliza/pull/6692))

**Why this matters:** a number of agent/prompt stacks emit action names and parameters in separate sibling XML nodes; previously, comma-splitting caused:
- action names to be corrupted when params contained commas
- action params to be dropped when actions were comma-separated but params were outside `<actions>`

**Developer impact:** if you have custom prompt templates or plugins that relied on comma-splitting behavior, validate your output conforms to the XML tag expectations (see **API Changes** below).

---

### Trajectory context propagation fixed (AsyncLocalStorage init ordering)
Trajectory capture was intermittently falling back to a “synthetic” context due to lazy async initialization. This meant early LLM calls were not properly attributed to the active trajectory when crossing `async/await` boundaries.

- **Merged:** `fix(core): initialize trajectory AsyncLocalStorage synchronously` ([PR #6687](https://github.com/elizaos/eliza/pull/6687))

**Technical context:** the fix removes lazy dynamic import timing hazards so the real `AsyncLocalStorage` is always available before first message processing begins.

---

### Prompt payload trimmed to reduce per-turn token overhead
- **Merged:** `fix(core): remove redundant action params example (~500 chars/prompt)` ([PR #6684](https://github.com/elizaos/eliza/pull/6684))

This reduces prompt bloat in the default instruction block; important for cost-sensitive deployments and high-throughput agents.

---

## 2) New Features

### Agent commerce patterns are accelerating (x402 + marketplaces + autonomous work)

While most changes this week are stability-focused, developer discussions introduced concrete integration targets for autonomous agent “work-and-pay” loops:

#### Orbis: pay-per-call API marketplace (HTTP 402 + USDC on Base)
Announced in `#coders` by **theredwizarddev**.

- Discovery endpoint: `https://orbisapi.com/api/agents/discovery` (machine-parseable catalog)
- Flow: agent calls API → receives `402 Payment Required` → auto-settles in USDC on **Base** → retries/receives response
- Live endpoints: text analysis, QR/encoding tools, form submission, fake data generation  
  (Discord thread: [discussion](https://discord.com/channels/1253563208833433701/1300025221834739744))

**Implementation sketch (client-side 402 handling):**
```ts
async function fetchWith402(url: string, init?: RequestInit) {
  const res = await fetch(url, init);

  if (res.status !== 402) return res;

  const paymentRequest = await res.json(); // gateway-specific shape
  // 1) construct onchain payment tx in USDC on Base using request metadata
  // 2) submit tx, obtain receipt/txHash
  // 3) retry with receipt proof
  const proofHeaders = {
    "x-payment-tx": paymentRequest.txHash ?? "<txHash>",
    "x-payment-proof": paymentRequest.proof ?? "<proof>",
  };

  return fetch(url, { ...init, headers: { ...(init?.headers ?? {}), ...proofHeaders } });
}
```

> Note: Orbis’ gateway implements the x402-style pattern; exact header/body fields depend on their gateway contract. Use the discovery catalog to drive tool selection and wire format.

#### TaskBounty: autonomous bounty completion + agent-to-agent delegation
Announced in Discord (2026-03-28). Key points:

- REST API + OpenAPI 3.1 spec: `https://task-bounty.com/api/v1/openapi.json`
- Agent docs: `https://task-bounty.com/for-agents`
- Crypto payouts: USDC / ETH / SOL directly to agent wallet
- Agents can both **complete tasks** and **delegate subtasks** (agent-to-agent economy)

This is a strong fit for ElizaOS task orchestration patterns (planner → executor → payment), especially when combined with x402 governance (see **Bug Fixes / Breaking Changes** for upcoming spend-policy work).

---

## 3) Bug Fixes (Critical)

### Release CI stabilized for Linux + Rust “computeruse” toolchain
Multiple CI fixes landed to unblock release builds and fix missing system dependencies.

- `fix(ci): add libpipewire-0.3-dev to release workflow` ([PR #6662](https://github.com/elizaos/eliza/pull/6662))
- `fix(ci): add libegl-dev for computeruse khronos-egl build` ([PR #6663](https://github.com/elizaos/eliza/pull/6663))
- `fix: computeruse Linux Rust build errors` ([PR #6664](https://github.com/elizaos/eliza/pull/6664))
- `fix(ci): add libgbm/xcb/ssl system deps, suppress dead_code warnings` ([PR #6665](https://github.com/elizaos/eliza/pull/6665))

**Technical context:** these addressed missing linker/system libs (`egl`, `pipewire`, `gbm`, `xcb`, `ssl`) and Rust compilation issues in Linux UI element handling. If you build the Rust “computeruse” crates in containers/CI, mirror the workflow dependencies.

---

### Release workflow correctness: dist-tag + stale package checks
- `fix(ci): remove stale packages/agent dist check from release` ([PR #6666](https://github.com/elizaos/eliza/pull/6666))
- `fix(ci): ensure @elizaos/core dist-tag is updated in release` ([PR #6667](https://github.com/elizaos/eliza/pull/6667))

**Outcome:** prevents successful publishes from failing verification due to outdated assumptions about package layout and `lerna ls` visibility.

---

### Infra note: CI/job runner billing failure
A Core Dev reported jobs failing to start due to account payment/spend-limit issues (potentially org-related). Track internally to prevent intermittent CI downtime.
- Discord: `#xfn-framework` (message reference in daily summary)

---

## 4) API Changes

### Action extraction semantics tightened (XML parsing + param recovery)
With [PR #6661](https://github.com/elizaos/eliza/pull/6661) + [PR #6692](https://github.com/elizaos/eliza/pull/6692), developers should assume:

1) `<actions>` is parsed as XML content (not blindly split on commas)  
2) Params may be recovered from sibling blocks even when `<actions>` lists actions comma-separated

**Recommended output shape (most compatible):**
```xml
<actions>SEND_MESSAGE</actions>
<roomId>...</roomId>
<content>Hello from ElizaOS</content>
```

**Supported (now fixed):**
```xml
<actions>REPLY,START_CODING_TASK</actions>
<task repo="elizaos/eliza" issue="6695">Add spend policy pre-authorization</task>
```

If you authored plugins that parse raw model output themselves, re-check assumptions around comma-delimited action parsing and parameter locality.

---

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

### Discord: community bridging proposal (non-code, but impacts developer support flow)
Community feedback highlighted ecosystem fragmentation across multiple Discords (builder-focused vs investor-focused). A bridged room was proposed to connect spaces without merging audiences.

- Discussion thread: [ElizaOS Discord](https://discord.com/channels/1253563208833433701/1253563209462448241)
- Action item: create a bridged room (planned “next week” per community ops)

### Security: scam/impersonation warnings
Multiple scam warnings were raised in `#coders`. Maintain best practices:
- verify usernames/handles
- avoid executing “plugin install” links from untrusted DMs
- prefer registry-published plugins

(Discord: [#coders](https://discord.com/channels/1253563208833433701/1300025221834739744))

> No upstream code changes landed this week to the official Twitter/Telegram/Discord/Farcaster plugins based on the provided activity; this section is operationally relevant to dev onboarding and support.

---

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

### Tooling: Claude Code Review workflow updated
- **Merged:** `Update Claude Code Review action and model version` ([PR #6681](https://github.com/elizaos/eliza/pull/6681))

If you depend on CI-based AI reviews, expect model/version drift to change review tone and possibly token usage. Pin your own workflows if strict reproducibility is required.

### Developer question: agent-challenge endpoints vs paid model providers
A recurring onboarding question: whether the agent challenge provides hosted endpoints (so builders don’t need OpenRouter/OpenAI spend). This remains **not fully clarified** in the discussion; the framework is confirmed open source, but hosted inference access details should be documented.
- Discord question reference: [discussion](https://discord.com/channels/1253563208833433701/1253563209462448241)

---

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

### Potential behavioral breaking change: action parsing
If you upgraded within the week and your agents emitted actions like:
- `<actions>FOO,BAR</actions>` plus parameters containing commas
- or parameters in separate XML blocks

…your downstream action dispatch may behave differently (now *more correct*). Validate integration tests for any plugin that:
- inspects `actions` strings directly
- expects params to be absent unless inline

### V2 migration pressure points (community signals)
- Ongoing community migration questions (e.g., “AI16Z → ElizaOS” mentioned in Discord on 2026-03-28).
- Several large V2-era PRs remain in flight (e.g., multi-language core work), so expect further packaging/layout changes that can break:
  - workspace paths
  - plugin build scripts
  - release automation assumptions

**Suggested mitigation checklist:**
```bash
# before upgrading
git checkout <your-stable-tag>
bun test
bunx turbo run build test

# after upgrading
bun install
bun test
bunx turbo run build test
```

---

## Relevant Links (PRs / Issues / Docs)

### Core PRs merged this week
- XML action parsing fix: https://github.com/elizaos/eliza/pull/6661
- Standalone XML param extraction fix: https://github.com/elizaos/eliza/pull/6692
- Trajectory AsyncLocalStorage init fix: https://github.com/elizaos/eliza/pull/6687
- Prompt trimming (~500 chars): https://github.com/elizaos/eliza/pull/6684
- Release CI dependency chain (Linux/Rust):  
  https://github.com/elizaos/eliza/pull/6662  
  https://github.com/elizaos/eliza/pull/6663  
  https://github.com/elizaos/eliza/pull/6664  
  https://github.com/elizaos/eliza/pull/6665  
- Release workflow correctness:  
  https://github.com/elizaos/eliza/pull/6666  
  https://github.com/elizaos/eliza/pull/6667
- Claude Code Review workflow update: https://github.com/elizaos/eliza/pull/6681

### Active issues/proposals referenced in discussions
- Dreamline x402 Policy Facilitator proposal: https://github.com/elizaos/eliza/issues/6695
- AgentID plugin proposal: https://github.com/elizaos/eliza/issues/6688
- Pyrimid x402 Agent Commerce via MCP: https://github.com/elizaos/eliza/issues/6668
- CLI install issue (MacOS PATH): https://github.com/elizaos/eliza/issues/6636

### Plugin registry activity
- Add `@axnetfun/plugin-axnet` to registry: https://github.com/elizaos-plugins/registry/pull/324

### External integration docs mentioned this week
- Orbis discovery: https://orbisapi.com/api/agents/discovery
- TaskBounty OpenAPI: https://task-bounty.com/api/v1/openapi.json
- TaskBounty agent docs: https://task-bounty.com/for-agents