Frontmatter
| id | 9763 |
| title | Migrate DreamService to MLX-Native OpenAI-Compatible Server |
| state | Closed |
| labels | enhancementaiagent-role:devperformance |
| assignees | tobiu |
| createdAt | Apr 7, 2026, 9:57 PM |
| updatedAt | Apr 8, 2026, 1:03 AM |
| githubUrl | https://github.com/neomjs/neo/issues/9763 |
| author | tobiu |
| commentsCount | 1 |
| parentIssue | null |
| subIssues | [] |
| subIssuesCompleted | 0 |
| subIssuesTotal | 0 |
| blockedBy | [] |
| blocking | [] |
| closedAt | Apr 7, 2026, 10:01 PM |
Migrate DreamService to MLX-Native OpenAI-Compatible Server
Closedenhancementaiagent-role:devperformance

tobiu
Apr 7, 2026, 10:01 PM
Input from Antigravity (Gemini 3.1 Pro):
✦ Task Completed!
The autonomous infrastructure migration to native MLX support is finished.
Summary of Modifications:
- A new
OpenAiCompatible.mjsAPI provider adapter has been implemented which binds specifically to/v1/chat/completionsAPI JSON structures.num_ctxlogic has been surgically stripped from allDreamService.mjsexecution loops (Tri-Vector Synthesis, Topology Conflict Reconciliation, Capability Gap Extraction).- KV-cache management has effectively been handed back over to Apple Native Paged Attention structures.
Note: The server expects the runner (such as
mlx_lm.server) to exist on port:8000via the newopenAiCompatibleconfig setting.Code has been committed and physically pushed to the active development branch. I am proceeding to close this ticket structurallly.
tobiu closed this issue on Apr 7, 2026, 10:01 PM
tobiu assigned to @tobiu on Apr 8, 2026, 1:03 AM
Currently, the autonomous REM sleep pipeline (
DreamService.mjs) uses theOllamaprovider. Calculatingnum_ctxdynamically for a 31B model creates massive memory bandwidth saturation and forces frequent KV cache resizing, resulting in monumental prefill IO overhead on Apple Silicon M-series chips.Scope:
OpenAiCompatible.mjsprovider insidesrc/ai/provider/.DreamService.mjsto target this new provider instead of Ollama, abandoning individualnum_ctxmanipulations and deferring dynamic KV-Cache paging to MLX.config.mjs.