v1.2.10
Major Windows support overhaul plus the migration to pnpm. Linux and macOS are unaffected.
✨ Windows: new SSPI stdio-proxy backend (default)
openMSX on Windows exposes its control channel over a TCP socket that requires SSPI (Negotiate/NTLM) authentication. This release adds a much more robust default path:
- New bundled, self-contained .NET helper (
bin/win-x64/mcp-openmsx-sspi-proxy.exe) that performs the SSPI handshake and presents a clean XML stdio channel — exactly how Linux/macOS talk toopenmsx -control stdio. Thanks to @inchl for the idea of a .net proxy. - Selected via
OPENMSX_WINDOWS_CONTROL(defaultstdio-proxy). The previous Nodenode-expose-sspipath remains asdirect-sspi(aliassocket). - New
OPENMSX_WINDOWS_PROXY_EXECUTABLEto override the helper path during development. - The helper ships inside the npm package (~10 MB, self-contained — no .NET runtime needed on the user's machine) and is built reproducibly from Linux via Docker:
pnpm build:proxy:win-x64:docker.
🐛 Windows fixes
- Server startup: fixed
ERR_MODULE_NOT_FOUNDfor@modelcontextprotocol/sdktransitive dependencies (ajv,zod-to-json-schema) when running from source — resolved with a hoistednode_moduleslayout (nodeLinker: hoisted). - Vector search (
vector_db_query): fixed a failure on Windows + Node 24 caused bysharp(eagerly imported by@xenova/transformers).sharpis pinned to the 0.34.x line, whose@img/*prebuilt packages support modern Node.
🔧 Tooling & internals
- Migrated the toolchain to pnpm (lockfiles + workspace config).
- All Windows transport logic extracted into
openmsx_windows.ts;openmsx.tsis now platform-agnostic orchestration. buildnow cleansdist/before compiling (no stale artifacts in the published package).- Documentation updated (README / AGENTS) with the new Windows control modes.
⬆️ Upgrade note (Windows)
Do a clean reinstall so the platform-specific native packages and the proxy land correctly:
rm -rf node_modules && pnpm install(ornpm install).
Full Changelog: v1.2.9...v1.2.10