# ElizaOS Developer Update - September 3, 2025

## 1. Core Framework

The ElizaOS architecture is undergoing a significant restructuring this week, with a major refactoring effort to centralize business logic in the server package. PR [#5864](https://github.com/elizaOS/eliza/pull/5864) proposes moving over 870 lines of business logic from CLI to server, creating a new `ElizaOS` orchestration class and associated managers (Agent, Plugin, Config) in the server package.

This architectural change addresses issue [#5860](https://github.com/elizaOS/eliza/issues/5860), which identified that the CLI had become "overly complex and duplicates logic that should live inside project directories." The refactoring aims to:

- Simplify the CLI to ~170 lines of pure delegation code
- Remove redundant code while adding well-organized managers
- Maintain backward compatibility for existing use cases
- Enable browser compatibility by moving the orchestration class to the core package

The proposal includes deleting several CLI files and creating new files in the server package, with a significant net reduction in code complexity.

## 2. New Features

### Real-time Action Execution UI

A comprehensive real-time action execution UI system has been implemented in PR [#5865](https://github.com/elizaOS/eliza/pull/5865), providing transparency into agent action execution. Users can now see actions as they happen, with detailed input/output data and status tracking.

Key features include:
- Interactive tool components with collapsible cards showing execution details
- Real-time status updates with visual indicators
- Formatted views of action parameters and results
- Error handling with clear messages when actions fail

Implementation example:
```jsx
// From the new actionTool.tsx component
export function ActionTool({ action, result, error, status }: ActionToolProps) {
  const [expanded, setExpanded] = useState(false);
  
  return (
    <div className={`action-tool ${status.toLowerCase()}`}>
      <div className="action-header" onClick={() => setExpanded(!expanded)}>
        <span className="action-name">{action}</span>
        <span className="action-status">{status}</span>
      </div>
      {expanded && (
        <div className="action-details">
          <div className="action-input">
            <h4>Input:</h4>
            <pre>{JSON.stringify(input, null, 2)}</pre>
          </div>
          {result && (
            <div className="action-output">
              <h4>Output:</h4>
              <pre>{JSON.stringify(result, null, 2)}</pre>
            </div>
          )}
          {error && (
            <div className="action-error">
              <h4>Error:</h4>
              <pre>{error}</pre>
            </div>
          )}
        </div>
      )}
    </div>
  );
}
```

### Sentry Node Telemetry Support

PR [#5867](https://github.com/elizaOS/eliza/pull/5867) adds Sentry Node implementation to support using Sentry with AI SDK's `experimental_telemetry` option. This improves the existing Sentry implementation with a full Node.js integration to enable:

- Automatic AI SDK call tracing (generateText, streamText, etc.)
- Input/output recording for debugging AI interactions
- Performance monitoring for AI calls (duration, success rates)
- Environment-aware conditional loading

Configuration example:
```typescript
// Using the new Sentry telemetry in your agent
import { initSentry } from '@elizaos/core';

// Initialize with environment variables
initSentry({
  dsn: process.env.SENTRY_DSN,
  traceAiOnly: true, // Only capture AI interactions
  environment: process.env.NODE_ENV
});

// Now all AI SDK calls will be automatically traced
const openai = new OpenAI({
  apiKey: process.env.OPENAI_API_KEY,
  experimental_telemetry: true // Enable AI telemetry
});
```

### CLI Version Embedding

PR [#5869](https://github.com/elizaOS/eliza/pull/5869) adds a build-time version embedding feature to the CLI, fixing critical runtime path resolution issues in the published NPM package. The solution embeds version information at build time, eliminating runtime package.json reads entirely.

## 3. Bug Fixes

Several critical bugs were addressed this week:

- **Discord Image Generation** ([#5861](https://github.com/elizaOS/eliza/pull/5861)): Fixed image generation in Discord channels, enabling agents to create and share images directly in Discord conversations.

- **Docker Integration** ([#5858](https://github.com/elizaOS/eliza/pull/5858)): Added Docker files to project-starter, allowing users to do local project development, create a Docker image, and deploy it to their preferred cloud provider.

- **Build Warnings and CSS Errors** ([#5851](https://github.com/elizaOS/eliza/pull/5851)): Resolved CSS syntax errors from empty `:is()` selectors in webkit scrollbar styles, fixed missing asset references in CLI build, and addressed bundle size warnings.

## 4. API Changes

No significant API changes were introduced this week, though the architectural refactoring proposed in PR [#5864](https://github.com/elizaOS/eliza/pull/5864) will create a cleaner separation of concerns between packages. The public API remains backward compatible, with all commands working identically despite the internal architecture changes.

## 5. Social Media Integrations

The Discord plugin received an enhancement in PR [#5861](https://github.com/elizaOS/eliza/pull/5861) to enable image generation in Discord channels. This allows agents to create and share images directly in Discord conversations, addressing a feature gap reported in issue [#5809](https://github.com/elizaOS/eliza/issues/5809).

A new feature request for Matrix platform integration was submitted in issue [#5862](https://github.com/elizaOS/eliza/issues/5862). The proposal suggests creating a Matrix integration similar to the Discord/Telegram plugins but using the matrix-bot-sdk with a Matrix bot account, which would support end-to-end encryption and provide a fully privacy-focused option.

## 6. Model Provider Updates

Two significant updates for model providers:

1. **Hermes 4 14B Model Release**: The community noted the release of Hermes 4 14B model, which could be integrated as a new local model option for agents.

2. **x402 Payments Protocol**: A non-trivial example of using the x402 payments protocol was shared, showing how agents can make payments for services like IPFS pinning directly using this protocol. This enables agents to autonomously pay for external services.

## 7. Breaking Changes

No breaking changes have been introduced in this release cycle. The architectural refactoring proposed in PR [#5864](https://github.com/elizaOS/eliza/pull/5864) maintains backward compatibility for all existing use cases, despite the significant internal changes.

However, developers should be aware of a critical documentation issue highlighted in [#5857](https://github.com/elizaOS/eliza/issues/5857): The web UI dashboard exists but is completely undocumented, leaving users confused about how to interact with their agent. This documentation gap forces users to configure unnecessary integrations just to test their agent because they don't know about the web UI at http://localhost:3001. While not a breaking change, this significantly impacts the developer experience and should be addressed urgently.