---
tagName: 11.6.0
name: Neo.mjs v11.6.0 Release Notes
publishedAt: '2025-11-19T13:05:08Z'
isPrerelease: false
isDraft: false
---
# Neo.mjs v11.6.0 Release Notes

This release introduces significant enhancements to the configurability and robustness of our MCP (Model Context Protocol) servers, making them more flexible for diverse deployment scenarios. It also includes critical stability fixes for the Memory Core and a major architectural improvement for Server-Side Rendering (SSR) hydration.

## ✨ Highlights

### 🚀 SSR Hydration Stability & Self-Healing

-   **VNode ID Namespacing**: We have implemented a robust namespacing strategy for server-generated VNodes (`neo-ssr-vnode-X`). This critical change decouples server-side ID generation from client-side counters.
-   **Improved Hydration**: Previously, discrepancies between server data (e.g., a store with 10 items) and client data (e.g., the same store loading 20 items) could lead to DOM ID collisions and hydration failures. By using namespaced IDs for the initial SSR render, the client can safely "take over" the existing DOM, sync it into the Virtual DOM, and perform self-healing patches without conflicts. This ensures a seamless transition from static HTML to a fully interactive application, even when data states diverge. (Issue #7800, #7798)

### 🤖 MCP Server Configurability & Architecture

-   **Standardized CLI & Configuration**: We have unified the startup architecture across all three MCP servers (GitHub Workflow, Memory Core, Knowledge Base). Each server now uses `commander` for robust CLI argument parsing, supporting:
    -   `--config <path>`: Load a custom configuration file (JSON or JS/MJS).
    -   `--debug`: Enable debug logging via a standardized flag.
    -   **Proxy-based Config**: Implemented a clean architectural pattern separating the configuration service from the data, ensuring safe and extensible access to config values. (Issue #7802, #7803, #7804, #7805, #7801)

### 🧠 Memory Core Enhancements

-   **Robust Session Management**: Fixed a critical stability issue where `add_memory` would fail if the `sessionId` was omitted. The server now intelligently auto-generates a session ID if one is not provided.
-   **Session Visibility**: The `healthcheck` endpoint now exposes the `currentSessionId`, allowing agents to easily discover their session context. (Issue #7806)

### 🔄 Workflow Improvements

-   **Cleaner Issue Syncing**: The `IssueSyncer` service has been improved to correctly strip the "Activity Log" section when pushing updates back to GitHub. This prevents read-only historical data from being duplicated or polluting the issue body on the remote. (Issue #7793)
-   **Bug Fixes**: Resolved a missing import in `IssueService`. (Issue #7797)

### 🛠️ Core Framework Refactoring

-   **Configuration Cleanup**: Removed deprecated configurations `Neo.config.isInsideSiesta` (as we have fully migrated to Playwright) and `Neo.config.isMiddleware`. (Issue #7799, #7798)

## 📦 Full Changelog

-   **Neo.ai.mcp.server.github-workflow.services.sync.IssueSyncer: pushToGitHub() exclude activity log** (Issue #7793)
-   **ai.mcp.server.github-workflow.services.IssueService: listIssues() uses 2 not imported constants** (Issue #7797)
-   **Neo.config.isMiddleware** (Issue #7798)
-   **Remove Neo.config.isInsideSiesta** (Issue #7799)
-   **worker.Manager: createWorkers() => remove passing idCounter to the vdom worker** (Issue #7800)
-   **Refactor services to use config directly instead of DEFAULT_QUERY_LIMITS** (Issue #7801)
-   **Add CLI argument parsing to GitHub Workflow MCP Server** (Issue #7802)
-   **Support --debug flag via commander in GitHub Workflow MCP Server** (Issue #7803)
-   **Add CLI argument parsing and Config refactoring to Memory Core MCP Server** (Issue #7804)
-   **Add CLI argument parsing and Config refactoring to Knowledge Base MCP Server** (Issue #7805)
-   **Fix add_memory failure when sessionId is omitted** (Issue #7806)

All changes in 1 commit: https://github.com/neomjs/neo/commit/28ef2159649b40fdf731f12b68731dd29cc21885
