fix: remove Windows process.type workaround causing libuv crashes
Removed the process.type = 'renderer' workaround that was causing libuv assertion failures on Windows. This hack was attempting to hide console windows but resulted in crashes when process.title was accessed. Prioritizing stability over cosmetics - console windows may briefly appear on Windows until the MCP SDK provides proper window hiding support. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
This commit is contained in:
@@ -10,7 +10,7 @@
|
|||||||
"plugins": [
|
"plugins": [
|
||||||
{
|
{
|
||||||
"name": "claude-mem",
|
"name": "claude-mem",
|
||||||
"version": "7.1.6",
|
"version": "7.1.7",
|
||||||
"source": "./plugin",
|
"source": "./plugin",
|
||||||
"description": "Persistent memory system for Claude Code - context compression across sessions"
|
"description": "Persistent memory system for Claude Code - context compression across sessions"
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -6,7 +6,7 @@
|
|||||||
|
|
||||||
Claude-mem is a Claude Code plugin providing persistent memory across sessions. It captures tool usage, compresses observations using the Claude Agent SDK, and injects relevant context into future sessions.
|
Claude-mem is a Claude Code plugin providing persistent memory across sessions. It captures tool usage, compresses observations using the Claude Agent SDK, and injects relevant context into future sessions.
|
||||||
|
|
||||||
**Current Version**: 7.1.6
|
**Current Version**: 7.1.7
|
||||||
|
|
||||||
## Architecture
|
## Architecture
|
||||||
|
|
||||||
|
|||||||
@@ -398,6 +398,10 @@ If you're experiencing issues, describe the problem to Claude and the troublesho
|
|||||||
|
|
||||||
See [Troubleshooting Guide](https://docs.claude-mem.ai/troubleshooting) for complete solutions.
|
See [Troubleshooting Guide](https://docs.claude-mem.ai/troubleshooting) for complete solutions.
|
||||||
|
|
||||||
|
### Windows Known Issues
|
||||||
|
|
||||||
|
**Console Window Visibility**: On Windows, a console window may briefly appear when the worker service starts. This is a cosmetic issue that we're working to resolve. We've prioritized stability by removing a workaround that was causing libuv crashes. The window does not affect functionality and will be addressed in a future release when the MCP SDK provides proper window hiding support.
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
## Contributing
|
## Contributing
|
||||||
|
|||||||
+1
-1
@@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "claude-mem",
|
"name": "claude-mem",
|
||||||
"version": "7.1.6",
|
"version": "7.1.7",
|
||||||
"description": "Memory compression system for Claude Code - persist context across sessions",
|
"description": "Memory compression system for Claude Code - persist context across sessions",
|
||||||
"keywords": [
|
"keywords": [
|
||||||
"claude",
|
"claude",
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "claude-mem",
|
"name": "claude-mem",
|
||||||
"version": "7.1.6",
|
"version": "7.1.7",
|
||||||
"description": "Persistent memory system for Claude Code - seamlessly preserve context across sessions",
|
"description": "Persistent memory system for Claude Code - seamlessly preserve context across sessions",
|
||||||
"author": {
|
"author": {
|
||||||
"name": "Alex Newman"
|
"name": "Alex Newman"
|
||||||
|
|||||||
+1
-1
@@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "claude-mem-plugin",
|
"name": "claude-mem-plugin",
|
||||||
"version": "7.1.6",
|
"version": "7.1.7",
|
||||||
"private": true,
|
"private": true,
|
||||||
"description": "Runtime dependencies for claude-mem bundled hooks",
|
"description": "Runtime dependencies for claude-mem bundled hooks",
|
||||||
"type": "module",
|
"type": "module",
|
||||||
|
|||||||
File diff suppressed because one or more lines are too long
@@ -6,30 +6,6 @@
|
|||||||
* See src/services/worker/README.md for architecture details.
|
* See src/services/worker/README.md for architecture details.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
/**
|
|
||||||
* Windows terminal window fix for MCP SDK (vX.Y.Z):
|
|
||||||
* The MCP SDK checks `process.type === 'renderer'` (Electron detection) before setting windowsHide.
|
|
||||||
* By setting process.type, the SDK's isElectron() check becomes truthy on Windows, hiding
|
|
||||||
* terminal windows when spawning uvx/python processes for Chroma MCP server.
|
|
||||||
* The type is sometimes not present resulting in the check being false. Setting it like this fixes it.
|
|
||||||
*
|
|
||||||
* TODO: Remove this workaround once MCP SDK exposes a config for windowsHide or fixes detection.
|
|
||||||
* See: https://github.com/modelcontextprotocol/sdk/issues/XXX
|
|
||||||
*/
|
|
||||||
function applyWindowsHideWorkaroundIfNeeded() {
|
|
||||||
if (process.platform === 'win32' && !process.type) {
|
|
||||||
// Optionally, check MCP SDK version here if available
|
|
||||||
// Log a warning so this is visible in logs
|
|
||||||
// eslint-disable-next-line no-console
|
|
||||||
console.warn(
|
|
||||||
'[worker-service] Applying MCP SDK windowsHide workaround: setting process.type = "renderer". ' +
|
|
||||||
'This is a fragile hack. Remove when MCP SDK is fixed. See code comments for details.'
|
|
||||||
);
|
|
||||||
(process as any).type = 'renderer';
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
applyWindowsHideWorkaroundIfNeeded();
|
|
||||||
import express from 'express';
|
import express from 'express';
|
||||||
import http from 'http';
|
import http from 'http';
|
||||||
import path from 'path';
|
import path from 'path';
|
||||||
|
|||||||
Reference in New Issue
Block a user