@sudosandwich/limps 3.1.1 → 3.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -64,7 +64,7 @@ export declare function resetAll(configPath: string, options?: {
64
64
  import { type McpClientAdapter, type McpServerConfig } from './mcp-client-adapter.js';
65
65
  /**
66
66
  * Generate MCP server configuration JSON for a single limps project.
67
- * Always generates HTTP transport configuration (limps v3 daemon mode).
67
+ * Generates stdio or HTTP transport configuration depending on client support.
68
68
  *
69
69
  * @param adapter - MCP client adapter
70
70
  * @param configPath - Path to the limps config file
@@ -78,7 +78,7 @@ export declare function generateMcpClientConfig(adapter: McpClientAdapter, confi
78
78
  };
79
79
  /**
80
80
  * Generate config for printing.
81
- * Always generates HTTP transport configuration (limps v3 daemon mode).
81
+ * Generates stdio or HTTP transport configuration depending on client support.
82
82
  */
83
83
  export declare function generateConfigForPrint(adapter: McpClientAdapter, configPath: string): string;
84
84
  /**
@@ -329,7 +329,7 @@ export function resetAll(configPath, options = {}) {
329
329
  }
330
330
  /**
331
331
  * Generate MCP server configuration JSON for a single limps project.
332
- * Always generates HTTP transport configuration (limps v3 daemon mode).
332
+ * Generates stdio or HTTP transport configuration depending on client support.
333
333
  *
334
334
  * @param adapter - MCP client adapter
335
335
  * @param configPath - Path to the limps config file
@@ -344,12 +344,12 @@ export function generateMcpClientConfig(adapter, configPath) {
344
344
  const parentDir = basename(dirname(configPath));
345
345
  const projectDir = parentDir === '.limps' ? basename(dirname(dirname(configPath))) : parentDir;
346
346
  const serverName = `limps-planning-${projectDir}`;
347
- // Load HTTP server config
347
+ // Load server config for HTTP clients
348
348
  const config = loadConfig(configPath);
349
349
  const httpConfig = getHttpServerConfig(config);
350
- // Build servers configuration (HTTP transport only)
350
+ // Build servers configuration (adapter determines stdio vs HTTP)
351
351
  const servers = {
352
- [serverName]: adapter.createHttpServerConfig(httpConfig.host, httpConfig.port),
352
+ [serverName]: adapter.createServerConfig(configPath, httpConfig.host, httpConfig.port),
353
353
  };
354
354
  // Build full config structure
355
355
  const serversKey = adapter.getServersKey();
@@ -370,7 +370,7 @@ export function generateMcpClientConfig(adapter, configPath) {
370
370
  }
371
371
  /**
372
372
  * Generate config for printing.
373
- * Always generates HTTP transport configuration (limps v3 daemon mode).
373
+ * Generates stdio or HTTP transport configuration depending on client support.
374
374
  */
375
375
  export function generateConfigForPrint(adapter, configPath) {
376
376
  const { fullConfig, serversKey } = generateMcpClientConfig(adapter, configPath);
@@ -1 +1 @@
1
- {"version":3,"file":"config-cmd.js","sourceRoot":"","sources":["../../src/cli/config-cmd.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"config-cmd.js","sourceRoot":"","sources":["../../src/cli/config-cmd.ts"],"names":[],"mappings":"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"}
@@ -4,17 +4,21 @@
4
4
  */
5
5
  /**
6
6
  * MCP server configuration entry.
7
- * limps v3 uses HTTP transport exclusively (persistent daemon mode).
7
+ * Supports both stdio and HTTP transports depending on client capabilities.
8
8
  */
9
- export interface McpServerConfig {
10
- transport: {
11
- type: 'http';
12
- url: string;
13
- };
9
+ export type McpServerConfig = StdioServerConfig | HttpServerConfig;
10
+ export interface StdioServerConfig {
11
+ command: string;
12
+ args: string[];
13
+ env?: Record<string, string>;
14
+ }
15
+ export interface HttpServerConfig {
16
+ type: 'http';
17
+ url: string;
14
18
  }
15
19
  /**
16
20
  * Adapter interface for MCP client configurations.
17
- * All adapters generate HTTP transport configs (limps v3 daemon mode).
21
+ * Adapters can generate either stdio or HTTP transport configs depending on client support.
18
22
  */
19
23
  export interface McpClientAdapter {
20
24
  /** Get the config file path for this client */
@@ -23,51 +27,55 @@ export interface McpClientAdapter {
23
27
  getServersKey(): string;
24
28
  /** Whether the servers key should be treated as a flat key or nested path (default: nested) */
25
29
  useFlatKey?(): boolean;
26
- /** Create HTTP transport server config for a limps project */
27
- createHttpServerConfig(host: string, port: number): McpServerConfig;
30
+ /** Create server config for a limps project (stdio or HTTP depending on client) */
31
+ createServerConfig(configPath: string, host?: string, port?: number): McpServerConfig;
28
32
  /** Get display name for this client */
29
33
  getDisplayName(): string;
30
34
  }
31
35
  /**
32
36
  * Claude Desktop adapter
33
- * Uses: mcpServers key, HTTP transport, ~/Library/Application Support/Claude/claude_desktop_config.json
37
+ * Uses: mcpServers key, stdio transport, ~/Library/Application Support/Claude/claude_desktop_config.json
38
+ * Note: Claude Desktop does not support HTTP transport yet, uses stdio with command/args
34
39
  */
35
40
  export declare class ClaudeDesktopAdapter implements McpClientAdapter {
36
41
  getConfigPath(): string;
37
42
  getServersKey(): string;
38
- createHttpServerConfig(host: string, port: number): McpServerConfig;
43
+ createServerConfig(configPath: string): McpServerConfig;
39
44
  getDisplayName(): string;
40
45
  }
41
46
  /**
42
47
  * Cursor adapter
43
- * Uses: mcp.servers key, HTTP transport, VS Code settings.json location
48
+ * Uses: mcp.servers key, stdio transport, VS Code settings.json location
49
+ * Note: Cursor uses stdio transport with command/args
44
50
  */
45
51
  export declare class CursorAdapter implements McpClientAdapter {
46
52
  private getSettingsPath;
47
53
  getConfigPath(): string;
48
54
  getServersKey(): string;
49
55
  useFlatKey(): boolean;
50
- createHttpServerConfig(host: string, port: number): McpServerConfig;
56
+ createServerConfig(configPath: string): McpServerConfig;
51
57
  getDisplayName(): string;
52
58
  }
53
59
  /**
54
60
  * Claude Code adapter
55
61
  * Uses: mcpServers key, HTTP transport, ~/.claude.json (user scope)
62
+ * Note: Claude Code supports HTTP transport to daemons
56
63
  */
57
64
  export declare class ClaudeCodeAdapter implements McpClientAdapter {
58
65
  getConfigPath(): string;
59
66
  getServersKey(): string;
60
- createHttpServerConfig(host: string, port: number): McpServerConfig;
67
+ createServerConfig(_configPath: string, host?: string, port?: number): McpServerConfig;
61
68
  getDisplayName(): string;
62
69
  }
63
70
  /**
64
71
  * OpenAI Codex adapter
65
72
  * Uses: mcp_servers key, TOML config at ~/.codex/config.toml
73
+ * Note: Codex supports HTTP transport to daemons
66
74
  */
67
75
  export declare class CodexAdapter implements McpClientAdapter {
68
76
  getConfigPath(): string;
69
77
  getServersKey(): string;
70
- createHttpServerConfig(host: string, port: number): McpServerConfig;
78
+ createServerConfig(_configPath: string, host?: string, port?: number): McpServerConfig;
71
79
  getDisplayName(): string;
72
80
  }
73
81
  /**
@@ -84,12 +92,13 @@ export declare function getLocalConfigPath(clientType: LocalMcpClientType, custo
84
92
  export declare function getLocalConfigDisplayName(clientType: LocalMcpClientType): string;
85
93
  /**
86
94
  * Local workspace MCP config adapter
87
- * Uses: mcpServers key, limps command, client-specific local config paths
95
+ * Uses: mcpServers key, HTTP transport, client-specific local config paths
88
96
  *
89
97
  * Default paths by client:
90
98
  * - Cursor: .cursor/mcp.json
91
99
  * - Claude Code: .mcp.json
92
100
  * - Custom: user-specified path
101
+ * Note: Local workspace configs support HTTP transport to daemons
93
102
  */
94
103
  export declare class LocalMcpAdapter implements McpClientAdapter {
95
104
  private configPath;
@@ -97,7 +106,7 @@ export declare class LocalMcpAdapter implements McpClientAdapter {
97
106
  constructor(clientType?: LocalMcpClientType, customPath?: string);
98
107
  getConfigPath(): string;
99
108
  getServersKey(): string;
100
- createHttpServerConfig(host: string, port: number): McpServerConfig;
109
+ createServerConfig(_configPath: string, host?: string, port?: number): McpServerConfig;
101
110
  getDisplayName(): string;
102
111
  getClientType(): LocalMcpClientType;
103
112
  }
@@ -1 +1 @@
1
- {"version":3,"file":"mcp-client-adapter.d.ts","sourceRoot":"","sources":["../../src/cli/mcp-client-adapter.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAKH;;;GAGG;AACH,MAAM,WAAW,eAAe;IAC9B,SAAS,EAAE;QACT,IAAI,EAAE,MAAM,CAAC;QACb,GAAG,EAAE,MAAM,CAAC;KACb,CAAC;CACH;AAED;;;GAGG;AACH,MAAM,WAAW,gBAAgB;IAC/B,+CAA+C;IAC/C,aAAa,IAAI,MAAM,CAAC;IAExB,oFAAoF;IACpF,aAAa,IAAI,MAAM,CAAC;IAExB,+FAA+F;IAC/F,UAAU,CAAC,IAAI,OAAO,CAAC;IAEvB,8DAA8D;IAC9D,sBAAsB,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,eAAe,CAAC;IAEpE,uCAAuC;IACvC,cAAc,IAAI,MAAM,CAAC;CAC1B;AAED;;;GAGG;AACH,qBAAa,oBAAqB,YAAW,gBAAgB;IAC3D,aAAa,IAAI,MAAM;IAKvB,aAAa,IAAI,MAAM;IAIvB,sBAAsB,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,eAAe;IASnE,cAAc,IAAI,MAAM;CAGzB;AAED;;;GAGG;AACH,qBAAa,aAAc,YAAW,gBAAgB;IACpD,OAAO,CAAC,eAAe;IAyBvB,aAAa,IAAI,MAAM;IAIvB,aAAa,IAAI,MAAM;IAIvB,UAAU,IAAI,OAAO;IAIrB,sBAAsB,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,eAAe;IASnE,cAAc,IAAI,MAAM;CAGzB;AAED;;;GAGG;AACH,qBAAa,iBAAkB,YAAW,gBAAgB;IACxD,aAAa,IAAI,MAAM;IAKvB,aAAa,IAAI,MAAM;IAIvB,sBAAsB,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,eAAe;IASnE,cAAc,IAAI,MAAM;CAGzB;AAED;;;GAGG;AACH,qBAAa,YAAa,YAAW,gBAAgB;IACnD,aAAa,IAAI,MAAM;IAKvB,aAAa,IAAI,MAAM;IAIvB,sBAAsB,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,eAAe;IASnE,cAAc,IAAI,MAAM;CAGzB;AAED;;GAEG;AACH,MAAM,MAAM,kBAAkB,GAAG,QAAQ,GAAG,aAAa,GAAG,UAAU,GAAG,QAAQ,CAAC;AAElF;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,UAAU,EAAE,kBAAkB,EAAE,UAAU,CAAC,EAAE,MAAM,GAAG,MAAM,CAiB9F;AAED;;GAEG;AACH,wBAAgB,yBAAyB,CAAC,UAAU,EAAE,kBAAkB,GAAG,MAAM,CAahF;AAED;;;;;;;;GAQG;AACH,qBAAa,eAAgB,YAAW,gBAAgB;IACtD,OAAO,CAAC,UAAU,CAAS;IAC3B,OAAO,CAAC,UAAU,CAAqB;gBAE3B,UAAU,GAAE,kBAAkC,EAAE,UAAU,CAAC,EAAE,MAAM;IAK/E,aAAa,IAAI,MAAM;IAIvB,aAAa,IAAI,MAAM;IAKvB,sBAAsB,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,eAAe;IASnE,cAAc,IAAI,MAAM;IAIxB,aAAa,IAAI,kBAAkB;CAGpC;AAED;;GAEG;AACH,MAAM,MAAM,uBAAuB,GAAG,QAAQ,GAAG,QAAQ,GAAG,aAAa,GAAG,OAAO,CAAC;AAEpF;;GAEG;AACH,wBAAgB,UAAU,CAAC,UAAU,EAAE,uBAAuB,GAAG,gBAAgB,CAahF;AAED;;GAEG;AACH,wBAAgB,eAAe,CAC7B,UAAU,EAAE,kBAAkB,EAC9B,UAAU,CAAC,EAAE,MAAM,GAClB,eAAe,CAEjB"}
1
+ {"version":3,"file":"mcp-client-adapter.d.ts","sourceRoot":"","sources":["../../src/cli/mcp-client-adapter.ts"],"names":[],"mappings":"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"}
@@ -6,7 +6,8 @@ import { join } from 'path';
6
6
  import { homedir } from 'os';
7
7
  /**
8
8
  * Claude Desktop adapter
9
- * Uses: mcpServers key, HTTP transport, ~/Library/Application Support/Claude/claude_desktop_config.json
9
+ * Uses: mcpServers key, stdio transport, ~/Library/Application Support/Claude/claude_desktop_config.json
10
+ * Note: Claude Desktop does not support HTTP transport yet, uses stdio with command/args
10
11
  */
11
12
  export class ClaudeDesktopAdapter {
12
13
  getConfigPath() {
@@ -16,12 +17,10 @@ export class ClaudeDesktopAdapter {
16
17
  getServersKey() {
17
18
  return 'mcpServers';
18
19
  }
19
- createHttpServerConfig(host, port) {
20
+ createServerConfig(configPath) {
20
21
  return {
21
- transport: {
22
- type: 'http',
23
- url: `http://${host}:${port}/mcp`,
24
- },
22
+ command: 'limps',
23
+ args: ['serve', '--config', configPath],
25
24
  };
26
25
  }
27
26
  getDisplayName() {
@@ -30,7 +29,8 @@ export class ClaudeDesktopAdapter {
30
29
  }
31
30
  /**
32
31
  * Cursor adapter
33
- * Uses: mcp.servers key, HTTP transport, VS Code settings.json location
32
+ * Uses: mcp.servers key, stdio transport, VS Code settings.json location
33
+ * Note: Cursor uses stdio transport with command/args
34
34
  */
35
35
  export class CursorAdapter {
36
36
  getSettingsPath() {
@@ -58,12 +58,10 @@ export class CursorAdapter {
58
58
  useFlatKey() {
59
59
  return true;
60
60
  }
61
- createHttpServerConfig(host, port) {
61
+ createServerConfig(configPath) {
62
62
  return {
63
- transport: {
64
- type: 'http',
65
- url: `http://${host}:${port}/mcp`,
66
- },
63
+ command: 'limps',
64
+ args: ['serve', '--config', configPath],
67
65
  };
68
66
  }
69
67
  getDisplayName() {
@@ -73,6 +71,7 @@ export class CursorAdapter {
73
71
  /**
74
72
  * Claude Code adapter
75
73
  * Uses: mcpServers key, HTTP transport, ~/.claude.json (user scope)
74
+ * Note: Claude Code supports HTTP transport to daemons
76
75
  */
77
76
  export class ClaudeCodeAdapter {
78
77
  getConfigPath() {
@@ -82,12 +81,10 @@ export class ClaudeCodeAdapter {
82
81
  getServersKey() {
83
82
  return 'mcpServers';
84
83
  }
85
- createHttpServerConfig(host, port) {
84
+ createServerConfig(_configPath, host = '127.0.0.1', port = 4269) {
86
85
  return {
87
- transport: {
88
- type: 'http',
89
- url: `http://${host}:${port}/mcp`,
90
- },
86
+ type: 'http',
87
+ url: `http://${host}:${port}/mcp`,
91
88
  };
92
89
  }
93
90
  getDisplayName() {
@@ -97,6 +94,7 @@ export class ClaudeCodeAdapter {
97
94
  /**
98
95
  * OpenAI Codex adapter
99
96
  * Uses: mcp_servers key, TOML config at ~/.codex/config.toml
97
+ * Note: Codex supports HTTP transport to daemons
100
98
  */
101
99
  export class CodexAdapter {
102
100
  getConfigPath() {
@@ -106,12 +104,10 @@ export class CodexAdapter {
106
104
  getServersKey() {
107
105
  return 'mcp_servers';
108
106
  }
109
- createHttpServerConfig(host, port) {
107
+ createServerConfig(_configPath, host = '127.0.0.1', port = 4269) {
110
108
  return {
111
- transport: {
112
- type: 'http',
113
- url: `http://${host}:${port}/mcp`,
114
- },
109
+ type: 'http',
110
+ url: `http://${host}:${port}/mcp`,
115
111
  };
116
112
  }
117
113
  getDisplayName() {
@@ -157,12 +153,13 @@ export function getLocalConfigDisplayName(clientType) {
157
153
  }
158
154
  /**
159
155
  * Local workspace MCP config adapter
160
- * Uses: mcpServers key, limps command, client-specific local config paths
156
+ * Uses: mcpServers key, HTTP transport, client-specific local config paths
161
157
  *
162
158
  * Default paths by client:
163
159
  * - Cursor: .cursor/mcp.json
164
160
  * - Claude Code: .mcp.json
165
161
  * - Custom: user-specified path
162
+ * Note: Local workspace configs support HTTP transport to daemons
166
163
  */
167
164
  export class LocalMcpAdapter {
168
165
  configPath;
@@ -178,12 +175,10 @@ export class LocalMcpAdapter {
178
175
  // OpenCode nests MCP servers under "mcp"; all other local clients use "mcpServers"
179
176
  return this.clientType === 'opencode' ? 'mcp' : 'mcpServers';
180
177
  }
181
- createHttpServerConfig(host, port) {
178
+ createServerConfig(_configPath, host = '127.0.0.1', port = 4269) {
182
179
  return {
183
- transport: {
184
- type: 'http',
185
- url: `http://${host}:${port}/mcp`,
186
- },
180
+ type: 'http',
181
+ url: `http://${host}:${port}/mcp`,
187
182
  };
188
183
  }
189
184
  getDisplayName() {
@@ -1 +1 @@
1
- {"version":3,"file":"mcp-client-adapter.js","sourceRoot":"","sources":["../../src/cli/mcp-client-adapter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"mcp-client-adapter.js","sourceRoot":"","sources":["../../src/cli/mcp-client-adapter.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAC5B,OAAO,EAAE,OAAO,EAAE,MAAM,IAAI,CAAC;AAwC7B;;;;GAIG;AACH,MAAM,OAAO,oBAAoB;IAC/B,aAAa;QACX,MAAM,IAAI,GAAG,OAAO,EAAE,CAAC;QACvB,OAAO,IAAI,CAAC,IAAI,EAAE,SAAS,EAAE,qBAAqB,EAAE,QAAQ,EAAE,4BAA4B,CAAC,CAAC;IAC9F,CAAC;IAED,aAAa;QACX,OAAO,YAAY,CAAC;IACtB,CAAC;IAED,kBAAkB,CAAC,UAAkB;QACnC,OAAO;YACL,OAAO,EAAE,OAAO;YAChB,IAAI,EAAE,CAAC,OAAO,EAAE,UAAU,EAAE,UAAU,CAAC;SACxC,CAAC;IACJ,CAAC;IAED,cAAc;QACZ,OAAO,gBAAgB,CAAC;IAC1B,CAAC;CACF;AAED;;;;GAIG;AACH,MAAM,OAAO,aAAa;IAChB,eAAe;QACrB,MAAM,IAAI,GAAG,OAAO,EAAE,CAAC;QACvB,6CAA6C;QAC7C,iEAAiE;QACjE,6CAA6C;QAC7C,+CAA+C;QAC/C,IAAI,OAAO,CAAC,QAAQ,KAAK,QAAQ,EAAE,CAAC;YAClC,OAAO,IAAI,CAAC,IAAI,EAAE,SAAS,EAAE,qBAAqB,EAAE,QAAQ,EAAE,MAAM,EAAE,eAAe,CAAC,CAAC;QACzF,CAAC;aAAM,IAAI,OAAO,CAAC,QAAQ,KAAK,OAAO,EAAE,CAAC;YACxC,OAAO,IAAI,CACT,OAAO,CAAC,GAAG,CAAC,OAAO,IAAI,IAAI,CAAC,IAAI,EAAE,SAAS,EAAE,SAAS,CAAC,EACvD,QAAQ,EACR,MAAM,EACN,eAAe,CAChB,CAAC;QACJ,CAAC;aAAM,CAAC;YACN,OAAO,IAAI,CACT,OAAO,CAAC,GAAG,CAAC,eAAe,IAAI,IAAI,CAAC,IAAI,EAAE,SAAS,CAAC,EACpD,QAAQ,EACR,MAAM,EACN,eAAe,CAChB,CAAC;QACJ,CAAC;IACH,CAAC;IAED,aAAa;QACX,OAAO,IAAI,CAAC,eAAe,EAAE,CAAC;IAChC,CAAC;IAED,aAAa;QACX,OAAO,aAAa,CAAC;IACvB,CAAC;IAED,UAAU;QACR,OAAO,IAAI,CAAC;IACd,CAAC;IAED,kBAAkB,CAAC,UAAkB;QACnC,OAAO;YACL,OAAO,EAAE,OAAO;YAChB,IAAI,EAAE,CAAC,OAAO,EAAE,UAAU,EAAE,UAAU,CAAC;SACxC,CAAC;IACJ,CAAC;IAED,cAAc;QACZ,OAAO,QAAQ,CAAC;IAClB,CAAC;CACF;AAED;;;;GAIG;AACH,MAAM,OAAO,iBAAiB;IAC5B,aAAa;QACX,MAAM,IAAI,GAAG,OAAO,EAAE,CAAC;QACvB,OAAO,IAAI,CAAC,IAAI,EAAE,cAAc,CAAC,CAAC;IACpC,CAAC;IAED,aAAa;QACX,OAAO,YAAY,CAAC;IACtB,CAAC;IAED,kBAAkB,CAAC,WAAmB,EAAE,IAAI,GAAG,WAAW,EAAE,IAAI,GAAG,IAAI;QACrE,OAAO;YACL,IAAI,EAAE,MAAM;YACZ,GAAG,EAAE,UAAU,IAAI,IAAI,IAAI,MAAM;SAClC,CAAC;IACJ,CAAC;IAED,cAAc;QACZ,OAAO,aAAa,CAAC;IACvB,CAAC;CACF;AAED;;;;GAIG;AACH,MAAM,OAAO,YAAY;IACvB,aAAa;QACX,MAAM,IAAI,GAAG,OAAO,EAAE,CAAC;QACvB,OAAO,IAAI,CAAC,IAAI,EAAE,QAAQ,EAAE,aAAa,CAAC,CAAC;IAC7C,CAAC;IAED,aAAa;QACX,OAAO,aAAa,CAAC;IACvB,CAAC;IAED,kBAAkB,CAAC,WAAmB,EAAE,IAAI,GAAG,WAAW,EAAE,IAAI,GAAG,IAAI;QACrE,OAAO;YACL,IAAI,EAAE,MAAM;YACZ,GAAG,EAAE,UAAU,IAAI,IAAI,IAAI,MAAM;SAClC,CAAC;IACJ,CAAC;IAED,cAAc;QACZ,OAAO,cAAc,CAAC;IACxB,CAAC;CACF;AAOD;;GAEG;AACH,MAAM,UAAU,kBAAkB,CAAC,UAA8B,EAAE,UAAmB;IACpF,IAAI,UAAU,EAAE,CAAC;QACf,OAAO,UAAU,CAAC;IACpB,CAAC;IAED,QAAQ,UAAU,EAAE,CAAC;QACnB,KAAK,QAAQ;YACX,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,UAAU,CAAC,CAAC;QACpD,KAAK,aAAa;YAChB,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,WAAW,CAAC,CAAC;QAC1C,KAAK,UAAU;YACb,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,eAAe,CAAC,CAAC;QAC9C,KAAK,QAAQ;YACX,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,WAAW,CAAC,CAAC;QAC1C;YACE,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,WAAW,CAAC,CAAC;IAC5C,CAAC;AACH,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,yBAAyB,CAAC,UAA8B;IACtE,QAAQ,UAAU,EAAE,CAAC;QACnB,KAAK,QAAQ;YACX,OAAO,iCAAiC,CAAC;QAC3C,KAAK,aAAa;YAChB,OAAO,+BAA+B,CAAC;QACzC,KAAK,UAAU;YACb,OAAO,0BAA0B,CAAC;QACpC,KAAK,QAAQ;YACX,OAAO,kBAAkB,CAAC;QAC5B;YACE,OAAO,kBAAkB,CAAC;IAC9B,CAAC;AACH,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,OAAO,eAAe;IAClB,UAAU,CAAS;IACnB,UAAU,CAAqB;IAEvC,YAAY,aAAiC,aAAa,EAAE,UAAmB;QAC7E,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;QAC7B,IAAI,CAAC,UAAU,GAAG,kBAAkB,CAAC,UAAU,EAAE,UAAU,CAAC,CAAC;IAC/D,CAAC;IAED,aAAa;QACX,OAAO,IAAI,CAAC,UAAU,CAAC;IACzB,CAAC;IAED,aAAa;QACX,mFAAmF;QACnF,OAAO,IAAI,CAAC,UAAU,KAAK,UAAU,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,YAAY,CAAC;IAC/D,CAAC;IAED,kBAAkB,CAAC,WAAmB,EAAE,IAAI,GAAG,WAAW,EAAE,IAAI,GAAG,IAAI;QACrE,OAAO;YACL,IAAI,EAAE,MAAM;YACZ,GAAG,EAAE,UAAU,IAAI,IAAI,IAAI,MAAM;SAClC,CAAC;IACJ,CAAC;IAED,cAAc;QACZ,OAAO,yBAAyB,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IACpD,CAAC;IAED,aAAa;QACX,OAAO,IAAI,CAAC,UAAU,CAAC;IACzB,CAAC;CACF;AAOD;;GAEG;AACH,MAAM,UAAU,UAAU,CAAC,UAAmC;IAC5D,QAAQ,UAAU,EAAE,CAAC;QACnB,KAAK,QAAQ;YACX,OAAO,IAAI,oBAAoB,EAAE,CAAC;QACpC,KAAK,QAAQ;YACX,OAAO,IAAI,aAAa,EAAE,CAAC;QAC7B,KAAK,aAAa;YAChB,OAAO,IAAI,iBAAiB,EAAE,CAAC;QACjC,KAAK,OAAO;YACV,OAAO,IAAI,YAAY,EAAE,CAAC;QAC5B;YACE,MAAM,IAAI,KAAK,CAAC,wBAAwB,UAAU,EAAE,CAAC,CAAC;IAC1D,CAAC;AACH,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,eAAe,CAC7B,UAA8B,EAC9B,UAAmB;IAEnB,OAAO,IAAI,eAAe,CAAC,UAAU,EAAE,UAAU,CAAC,CAAC;AACrD,CAAC"}
@@ -0,0 +1,17 @@
1
+ /**
2
+ * Serve command: stdio-to-HTTP bridge for Claude Desktop and Cursor.
3
+ * Ensures the HTTP daemon is running and proxies stdio ↔ HTTP.
4
+ */
5
+ import React from 'react';
6
+ import { z } from 'zod';
7
+ export declare const description = "Start stdio-to-HTTP bridge for Claude Desktop/Cursor";
8
+ export declare const args: z.ZodTuple<[], null>;
9
+ export declare const options: z.ZodObject<{
10
+ config: z.ZodOptional<z.ZodString>;
11
+ }, z.core.$strip>;
12
+ interface Props {
13
+ options: z.infer<typeof options>;
14
+ }
15
+ export default function Serve({ options: opts }: Props): React.ReactNode;
16
+ export {};
17
+ //# sourceMappingURL=serve.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"serve.d.ts","sourceRoot":"","sources":["../../src/commands/serve.tsx"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAA8B,MAAM,OAAO,CAAC;AAEnD,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAaxB,eAAO,MAAM,WAAW,yDAAyD,CAAC;AAElF,eAAO,MAAM,IAAI,sBAAc,CAAC;AAEhC,eAAO,MAAM,OAAO;;iBAElB,CAAC;AAEH,UAAU,KAAK;IACb,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,OAAO,CAAC,CAAC;CAClC;AAED,MAAM,CAAC,OAAO,UAAU,KAAK,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE,KAAK,GAAG,KAAK,CAAC,SAAS,CA+HvE"}
@@ -0,0 +1,125 @@
1
+ import { jsxs as _jsxs, jsx as _jsx } from "react/jsx-runtime";
2
+ /**
3
+ * Serve command: stdio-to-HTTP bridge for Claude Desktop and Cursor.
4
+ * Ensures the HTTP daemon is running and proxies stdio ↔ HTTP.
5
+ */
6
+ import { useEffect, useState } from 'react';
7
+ import { Text } from 'ink';
8
+ import { z } from 'zod';
9
+ import { StreamableHTTPClientTransport } from '@modelcontextprotocol/sdk/client/streamableHttp.js';
10
+ import { createServer } from '../server.js';
11
+ import { initServerResources, shutdownServerResources, } from '../server-shared.js';
12
+ import { resolveConfigPath } from '../utils/config-resolver.js';
13
+ import { ensureDaemonRunning } from '../utils/daemon-manager.js';
14
+ import { shutdownExtensions } from '../extensions/loader.js';
15
+ export const description = 'Start stdio-to-HTTP bridge for Claude Desktop/Cursor';
16
+ export const args = z.tuple([]);
17
+ export const options = z.object({
18
+ config: z.string().optional().describe('Path to config file'),
19
+ });
20
+ export default function Serve({ options: opts }) {
21
+ const [status, setStatus] = useState('Initializing...');
22
+ const [error, setError] = useState(null);
23
+ useEffect(() => {
24
+ let transport = null;
25
+ let server = null;
26
+ let resources = null;
27
+ let shuttingDown = false;
28
+ const shutdown = async (signal) => {
29
+ if (shuttingDown) {
30
+ console.error(`[limps:serve] Received ${signal} during shutdown, ignoring.`);
31
+ return;
32
+ }
33
+ shuttingDown = true;
34
+ console.error(`[limps:serve] Received ${signal}, shutting down...`);
35
+ try {
36
+ // Shutdown extensions
37
+ if (server) {
38
+ const serverWithExtensions = server;
39
+ if (serverWithExtensions.loadedExtensions) {
40
+ await shutdownExtensions(serverWithExtensions.loadedExtensions);
41
+ }
42
+ }
43
+ // Close transport (closes HTTP session)
44
+ if (transport?.close) {
45
+ await transport.close();
46
+ }
47
+ // Clean up resources (DO NOT shut down the daemon itself!)
48
+ // The daemon should keep running for other clients
49
+ if (resources) {
50
+ await shutdownServerResources(resources);
51
+ }
52
+ process.exit(0);
53
+ }
54
+ catch (err) {
55
+ console.error('[limps:serve] Error during shutdown:', err);
56
+ process.exit(1);
57
+ }
58
+ };
59
+ const run = async () => {
60
+ try {
61
+ const configPath = resolveConfigPath(opts.config);
62
+ // Ensure daemon is running (starts if needed)
63
+ setStatus('Checking daemon status...');
64
+ const daemon = await ensureDaemonRunning(configPath);
65
+ // Initialize resources for this bridge process
66
+ // (Needed for extension loading and other shared state)
67
+ setStatus('Initializing server resources...');
68
+ resources = await initServerResources(configPath);
69
+ // Create HTTP client transport to daemon
70
+ setStatus(`Connecting to daemon at http://${daemon.host}:${daemon.port}/mcp...`);
71
+ transport = new StreamableHTTPClientTransport(new URL(`http://${daemon.host}:${daemon.port}/mcp`));
72
+ // Create MCP server for this bridge
73
+ server = await createServer(resources.config, resources.db);
74
+ // Set up signal handlers
75
+ process.on('SIGINT', () => {
76
+ shutdown('SIGINT').catch((err) => {
77
+ console.error('[limps:serve] Error in SIGINT handler:', err);
78
+ process.exit(1);
79
+ });
80
+ });
81
+ process.on('SIGTERM', () => {
82
+ shutdown('SIGTERM').catch((err) => {
83
+ console.error('[limps:serve] Error in SIGTERM handler:', err);
84
+ process.exit(1);
85
+ });
86
+ });
87
+ // Connect server to transport (bridges stdio ↔ HTTP)
88
+ setStatus('Starting stdio-to-HTTP bridge...');
89
+ await server.connect(transport);
90
+ // Bridge is now active
91
+ setStatus(`Bridge active. Connected to daemon on http://${daemon.host}:${daemon.port}/mcp`);
92
+ console.error('[limps:serve] stdio-to-HTTP bridge running');
93
+ // Keep process alive until shutdown signal
94
+ // The MCP SDK handles all stdio ↔ HTTP bridging automatically
95
+ }
96
+ catch (err) {
97
+ const errorMessage = err instanceof Error ? err.message : String(err);
98
+ if (errorMessage.includes('ECONNREFUSED')) {
99
+ setError(`Cannot connect to daemon. The daemon may have failed to start.\n` +
100
+ `Try starting it manually: limps start --foreground`);
101
+ }
102
+ else if (errorMessage.includes('Failed to start daemon')) {
103
+ setError(errorMessage + '\n\nTry: limps start --foreground');
104
+ }
105
+ else {
106
+ setError(`Failed to start bridge: ${errorMessage}`);
107
+ }
108
+ }
109
+ };
110
+ void run();
111
+ // Cleanup on unmount
112
+ return () => {
113
+ if (!shuttingDown) {
114
+ shutdown('unmount').catch((err) => {
115
+ console.error('[limps:serve] Error during unmount cleanup:', err);
116
+ });
117
+ }
118
+ };
119
+ }, [opts.config]);
120
+ if (error) {
121
+ return _jsxs(Text, { color: "red", children: ["Error: ", error] });
122
+ }
123
+ return _jsx(Text, { color: "green", children: status });
124
+ }
125
+ //# sourceMappingURL=serve.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"serve.js","sourceRoot":"","sources":["../../src/commands/serve.tsx"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"server-http.d.ts","sourceRoot":"","sources":["../src/server-http.ts"],"names":[],"mappings":"AAAA;;;GAGG;AA+CH;;;;;GAKG;AACH,wBAAsB,eAAe,CAAC,aAAa,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;IACrE,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;CACd,CAAC,CA4ND;AAyDD;;GAEG;AACH,wBAAsB,cAAc,IAAI,OAAO,CAAC,IAAI,CAAC,CA6CpD"}
1
+ {"version":3,"file":"server-http.d.ts","sourceRoot":"","sources":["../src/server-http.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAgDH;;;;;GAKG;AACH,wBAAsB,eAAe,CAAC,aAAa,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;IACrE,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;CACd,CAAC,CA2OD;AAyDD;;GAEG;AACH,wBAAsB,cAAc,IAAI,OAAO,CAAC,IAAI,CAAC,CA6CpD"}
@@ -13,6 +13,7 @@ import { resolveConfigPath } from './utils/config-resolver.js';
13
13
  import { shutdownExtensions } from './extensions/loader.js';
14
14
  import { createRateLimiter } from './utils/rate-limiter.js';
15
15
  import { findProcessUsingPort } from './utils/port-checker.js';
16
+ import { getPackageVersion, getPackageName } from './utils/version.js';
16
17
  /**
17
18
  * Mask a session ID for logging to avoid exposing full UUIDs.
18
19
  * Shows only first 8 characters followed by '...'.
@@ -125,6 +126,18 @@ export async function startHttpServer(configPathArg) {
125
126
  uptime: startTime ? Math.floor((Date.now() - startTime.getTime()) / 1000) : 0,
126
127
  pid: process.pid,
127
128
  sessionTimeoutMs,
129
+ version: getPackageVersion(),
130
+ name: getPackageName(),
131
+ }));
132
+ return;
133
+ }
134
+ // Version endpoint
135
+ if (url.pathname === '/version') {
136
+ res.writeHead(200, { 'Content-Type': 'application/json' });
137
+ res.end(JSON.stringify({
138
+ name: getPackageName(),
139
+ version: getPackageVersion(),
140
+ nodeVersion: process.version,
128
141
  }));
129
142
  return;
130
143
  }
@@ -1 +1 @@
1
- {"version":3,"file":"server-http.js","sourceRoot":"","sources":["../src/server-http.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"server-http.js","sourceRoot":"","sources":["../src/server-http.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAEpE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,KAAK,EAAE,QAAQ,IAAI,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAI/D,OAAO,EAKL,KAAK,eAAe,EACrB,MAAM,wBAAwB,CAAC;AAEhC;;;;;;;;GAQG;AACH,wBAAsB,YAAY,CAChC,MAAM,EAAE,YAAY,EACpB,EAAE,EAAE,YAAY,EAChB,mBAAmB,CAAC,EAAE,eAAe,EAAE,GACtC,OAAO,CAAC,SAAS,GAAG;IAAE,gBAAgB,CAAC,EAAE,eAAe,EAAE,CAAA;CAAE,CAAC,CAgE/D;AAED;;;;;GAKG;AACH,wBAAsB,WAAW,CAC/B,MAAM,EAAE,SAAS,EACjB,UAAU,CAAC,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAiFf"}
1
+ {"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAEpE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,KAAK,EAAE,QAAQ,IAAI,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAI/D,OAAO,EAKL,KAAK,eAAe,EACrB,MAAM,wBAAwB,CAAC;AAGhC;;;;;;;;GAQG;AACH,wBAAsB,YAAY,CAChC,MAAM,EAAE,YAAY,EACpB,EAAE,EAAE,YAAY,EAChB,mBAAmB,CAAC,EAAE,eAAe,EAAE,GACtC,OAAO,CAAC,SAAS,GAAG;IAAE,gBAAgB,CAAC,EAAE,eAAe,EAAE,CAAA;CAAE,CAAC,CAgE/D;AAED;;;;;GAKG;AACH,wBAAsB,WAAW,CAC/B,MAAM,EAAE,SAAS,EACjB,UAAU,CAAC,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAiFf"}
package/dist/server.js CHANGED
@@ -3,6 +3,7 @@ import { StdioServerTransport } from '@modelcontextprotocol/sdk/server/stdio.js'
3
3
  import { CORE_RESOURCE_NAMES, CORE_RESOURCE_URIS, registerResources } from './resources/index.js';
4
4
  import { CORE_TOOL_NAMES, registerTools } from './tools/index.js';
5
5
  import { loadExtensions, getExtensionTools, getExtensionResources, shutdownExtensions, } from './extensions/loader.js';
6
+ import { getPackageVersion } from './utils/version.js';
6
7
  /**
7
8
  * Create an MCP server instance with the given configuration.
8
9
  * Loads and registers extensions if configured.
@@ -18,7 +19,7 @@ export async function createServer(config, db, preloadedExtensions) {
18
19
  const coreResourceNames = new Set(CORE_RESOURCE_NAMES);
19
20
  const server = new McpServer({
20
21
  name: 'limps',
21
- version: '0.2.0',
22
+ version: getPackageVersion(),
22
23
  });
23
24
  // Tool context for handlers
24
25
  const toolContext = {
@@ -1 +1 @@
1
- {"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,23 @@
1
+ /**
2
+ * Daemon management utilities for ensuring the HTTP daemon is running.
3
+ * Used by the `serve` command to start the daemon if not already running.
4
+ */
5
+ /**
6
+ * Information about a running daemon.
7
+ */
8
+ export interface DaemonInfo {
9
+ host: string;
10
+ port: number;
11
+ pid: number;
12
+ }
13
+ /**
14
+ * Ensure the HTTP daemon is running. If it's not running, start it.
15
+ * Polls for daemon health with a timeout.
16
+ *
17
+ * @param configPath - Path to the limps config file
18
+ * @param timeoutMs - Maximum time to wait for daemon to start (default: 15000ms)
19
+ * @returns DaemonInfo for the running daemon
20
+ * @throws Error if daemon cannot be started within timeout
21
+ */
22
+ export declare function ensureDaemonRunning(configPath: string, timeoutMs?: number): Promise<DaemonInfo>;
23
+ //# sourceMappingURL=daemon-manager.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"daemon-manager.d.ts","sourceRoot":"","sources":["../../src/utils/daemon-manager.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAUH;;GAEG;AACH,MAAM,WAAW,UAAU;IACzB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,EAAE,MAAM,CAAC;CACb;AAED;;;;;;;;GAQG;AACH,wBAAsB,mBAAmB,CACvC,UAAU,EAAE,MAAM,EAClB,SAAS,SAAQ,GAChB,OAAO,CAAC,UAAU,CAAC,CA+DrB"}
@@ -0,0 +1,89 @@
1
+ /**
2
+ * Daemon management utilities for ensuring the HTTP daemon is running.
3
+ * Used by the `serve` command to start the daemon if not already running.
4
+ */
5
+ import { spawn } from 'child_process';
6
+ import { join } from 'path';
7
+ import { fileURLToPath } from 'url';
8
+ import { dirname } from 'path';
9
+ import { loadConfig, getHttpServerConfig } from '../config.js';
10
+ import { getPidFilePath, getRunningDaemon } from '../pidfile.js';
11
+ import { isDaemonHealthy } from './http-client.js';
12
+ /**
13
+ * Ensure the HTTP daemon is running. If it's not running, start it.
14
+ * Polls for daemon health with a timeout.
15
+ *
16
+ * @param configPath - Path to the limps config file
17
+ * @param timeoutMs - Maximum time to wait for daemon to start (default: 15000ms)
18
+ * @returns DaemonInfo for the running daemon
19
+ * @throws Error if daemon cannot be started within timeout
20
+ */
21
+ export async function ensureDaemonRunning(configPath, timeoutMs = 15000) {
22
+ const config = loadConfig(configPath);
23
+ const httpConfig = getHttpServerConfig(config);
24
+ const pidFilePath = getPidFilePath(httpConfig.port);
25
+ // Check if daemon is already running
26
+ const existing = getRunningDaemon(pidFilePath);
27
+ if (existing) {
28
+ // Verify it's healthy
29
+ const healthy = await isDaemonHealthy(existing.host, existing.port, {
30
+ timeout: 3000,
31
+ retries: 1,
32
+ retryDelay: 500,
33
+ });
34
+ if (healthy) {
35
+ return {
36
+ host: existing.host,
37
+ port: existing.port,
38
+ pid: existing.pid,
39
+ };
40
+ }
41
+ // Stale PID file, will be cleaned up by next start
42
+ console.error(`[limps:serve] Found PID file but daemon not responding. Will attempt to start new daemon.`);
43
+ }
44
+ // Start daemon asynchronously
45
+ console.error(`[limps:serve] Starting daemon on port ${httpConfig.port}...`);
46
+ await spawnDaemon(configPath);
47
+ // Poll for health with timeout
48
+ const startTime = Date.now();
49
+ const pollInterval = 500;
50
+ const httpOptions = {
51
+ timeout: 1000,
52
+ retries: 0,
53
+ };
54
+ while (Date.now() - startTime < timeoutMs) {
55
+ const daemon = getRunningDaemon(pidFilePath);
56
+ if (daemon) {
57
+ const healthy = await isDaemonHealthy(daemon.host, daemon.port, httpOptions);
58
+ if (healthy) {
59
+ console.error(`[limps:serve] Daemon started successfully (PID ${daemon.pid}) on http://${daemon.host}:${daemon.port}/mcp`);
60
+ return {
61
+ host: daemon.host,
62
+ port: daemon.port,
63
+ pid: daemon.pid,
64
+ };
65
+ }
66
+ }
67
+ await new Promise((resolve) => setTimeout(resolve, pollInterval));
68
+ }
69
+ throw new Error(`Failed to start daemon within ${timeoutMs}ms. Try running 'limps start' manually.`);
70
+ }
71
+ /**
72
+ * Spawn the daemon process in detached mode.
73
+ *
74
+ * @param configPath - Path to the limps config file
75
+ */
76
+ async function spawnDaemon(configPath) {
77
+ // Get path to CLI entry point
78
+ const __filename = fileURLToPath(import.meta.url);
79
+ const __dirname = dirname(__filename);
80
+ const cliPath = join(__dirname, '..', 'cli.js');
81
+ const child = spawn(process.execPath, [cliPath, 'start', '--config', configPath], {
82
+ detached: true,
83
+ stdio: 'ignore',
84
+ });
85
+ child.unref(); // Allow parent to exit
86
+ // Give it a moment to start
87
+ await new Promise((resolve) => setTimeout(resolve, 1000));
88
+ }
89
+ //# sourceMappingURL=daemon-manager.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"daemon-manager.js","sourceRoot":"","sources":["../../src/utils/daemon-manager.ts"],"names":[],"mappings":"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"}
@@ -35,6 +35,8 @@ export interface HealthCheckResponse {
35
35
  uptime: number;
36
36
  pid: number;
37
37
  sessionTimeoutMs?: number;
38
+ version?: string;
39
+ name?: string;
38
40
  }
39
41
  /**
40
42
  * HTTP client configuration options.
@@ -1 +1 @@
1
- {"version":3,"file":"http-client.d.ts","sourceRoot":"","sources":["../../src/utils/http-client.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH;;GAEG;AACH,MAAM,MAAM,aAAa,GACrB,eAAe,GACf,SAAS,GACT,gBAAgB,GAChB,kBAAkB,CAAC;AAEvB;;GAEG;AACH,MAAM,WAAW,SAAS;IACxB,IAAI,EAAE,aAAa,CAAC;IACpB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED;;GAEG;AACH,MAAM,MAAM,UAAU,CAAC,CAAC,IACpB;IAAE,EAAE,EAAE,IAAI,CAAC;IAAC,IAAI,EAAE,CAAC,CAAC;IAAC,UAAU,EAAE,MAAM,CAAA;CAAE,GACzC;IAAE,EAAE,EAAE,KAAK,CAAC;IAAC,KAAK,EAAE,SAAS,CAAA;CAAE,CAAC;AAEpC;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,GAAG,EAAE,MAAM,CAAC;IACZ,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B;AAED;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,sDAAsD;IACtD,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,4CAA4C;IAC5C,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,2DAA2D;IAC3D,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,+EAA+E;IAC/E,OAAO,CAAC,EAAE,aAAa,EAAE,CAAC;IAC1B,6CAA6C;IAC7C,MAAM,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC;CAChC;AAmID;;;;;;;GAOG;AACH,wBAAsB,iBAAiB,CACrC,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,MAAM,EACZ,OAAO,GAAE,iBAAsB,GAC9B,OAAO,CAAC,UAAU,CAAC,mBAAmB,CAAC,CAAC,CAwC1C;AAED;;;;;;;GAOG;AACH,wBAAsB,eAAe,CACnC,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,MAAM,EACZ,OAAO,GAAE,iBAAsB,GAC9B,OAAO,CAAC,OAAO,CAAC,CAGlB"}
1
+ {"version":3,"file":"http-client.d.ts","sourceRoot":"","sources":["../../src/utils/http-client.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH;;GAEG;AACH,MAAM,MAAM,aAAa,GACrB,eAAe,GACf,SAAS,GACT,gBAAgB,GAChB,kBAAkB,CAAC;AAEvB;;GAEG;AACH,MAAM,WAAW,SAAS;IACxB,IAAI,EAAE,aAAa,CAAC;IACpB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED;;GAEG;AACH,MAAM,MAAM,UAAU,CAAC,CAAC,IACpB;IAAE,EAAE,EAAE,IAAI,CAAC;IAAC,IAAI,EAAE,CAAC,CAAC;IAAC,UAAU,EAAE,MAAM,CAAA;CAAE,GACzC;IAAE,EAAE,EAAE,KAAK,CAAC;IAAC,KAAK,EAAE,SAAS,CAAA;CAAE,CAAC;AAEpC;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,GAAG,EAAE,MAAM,CAAC;IACZ,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,sDAAsD;IACtD,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,4CAA4C;IAC5C,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,2DAA2D;IAC3D,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,+EAA+E;IAC/E,OAAO,CAAC,EAAE,aAAa,EAAE,CAAC;IAC1B,6CAA6C;IAC7C,MAAM,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC;CAChC;AAmID;;;;;;;GAOG;AACH,wBAAsB,iBAAiB,CACrC,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,MAAM,EACZ,OAAO,GAAE,iBAAsB,GAC9B,OAAO,CAAC,UAAU,CAAC,mBAAmB,CAAC,CAAC,CAwC1C;AAED;;;;;;;GAOG;AACH,wBAAsB,eAAe,CACnC,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,MAAM,EACZ,OAAO,GAAE,iBAAsB,GAC9B,OAAO,CAAC,OAAO,CAAC,CAGlB"}
@@ -1 +1 @@
1
- {"version":3,"file":"http-client.js","sourceRoot":"","sources":["../../src/utils/http-client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"http-client.js","sourceRoot":"","sources":["../../src/utils/http-client.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sudosandwich/limps",
3
- "version": "3.1.1",
3
+ "version": "3.2.0",
4
4
  "description": "Local Intelligent MCP Planning Server - AI agent plan management",
5
5
  "mcpName": "io.github.paulbreuler/limps",
6
6
  "type": "module",
@@ -26,6 +26,7 @@
26
26
  "validate": "npm run format:check && npm run lint && npm run type-check && npm run build && npm test",
27
27
  "migrate:plan-feature-format": "npx tsx scripts/migrate-plan-feature-format.ts",
28
28
  "ci": "npm run validate",
29
+ "postinstall": "node postinstall/postinstall.cjs",
29
30
  "prepublishOnly": "npm run build && node scripts/prepare-publish.cjs",
30
31
  "postpublish": "node scripts/cleanup-publish.cjs"
31
32
  },
@@ -53,6 +54,7 @@
53
54
  },
54
55
  "files": [
55
56
  "dist",
57
+ "postinstall",
56
58
  "README.md",
57
59
  "LICENSE"
58
60
  ],
@@ -0,0 +1,354 @@
1
+ #!/usr/bin/env node
2
+
3
+ /**
4
+ * Postinstall hook: Auto-restart limps HTTP daemons after upgrade.
5
+ *
6
+ * This script runs after `npm install` to ensure daemons are using the latest code.
7
+ * It gracefully stops old daemons and restarts them with the same configuration.
8
+ *
9
+ * Features:
10
+ * - ✅ Lock file prevents concurrent installs from racing
11
+ * - ✅ Graceful shutdown (SIGTERM → wait → SIGKILL)
12
+ * - ✅ Health check polling after restart
13
+ * - ✅ Opt-out via LIMPS_SKIP_POSTINSTALL=1
14
+ * - ✅ Never fails npm install (always exits 0)
15
+ * - ✅ Clear error messages for manual recovery
16
+ *
17
+ * Security: Only restarts daemons in standard system PID directory.
18
+ */
19
+
20
+ const { spawn } = require('child_process');
21
+ const { existsSync, openSync, closeSync, readFileSync, unlinkSync, readdirSync } = require('fs');
22
+ const { join, dirname } = require('path');
23
+ const { homedir, platform } = require('os');
24
+ const { request: httpRequest } = require('http');
25
+
26
+ // Configuration
27
+ const SHUTDOWN_TIMEOUT_MS = 10000; // 10 seconds before SIGKILL
28
+ const HEALTH_CHECK_TIMEOUT_MS = 30000; // 30 seconds for daemon to become healthy
29
+ const HEALTH_CHECK_INTERVAL_MS = 1000; // Poll every 1 second
30
+ const LOCK_STALE_MS = 60000; // Lock files older than 60s are considered stale
31
+
32
+ /**
33
+ * Get the system-wide PID directory (same logic as pidfile.ts).
34
+ */
35
+ function getSystemPidDir() {
36
+ let appDataPath;
37
+ if (platform() === 'darwin') {
38
+ appDataPath = join(homedir(), 'Library', 'Application Support', 'limps');
39
+ } else if (platform() === 'win32') {
40
+ appDataPath = join(process.env.APPDATA || join(homedir(), 'AppData', 'Roaming'), 'limps');
41
+ } else {
42
+ const xdgDataHome = process.env.XDG_DATA_HOME || join(homedir(), '.local', 'share');
43
+ appDataPath = join(xdgDataHome, 'limps');
44
+ }
45
+ return join(appDataPath, 'pids');
46
+ }
47
+
48
+ /**
49
+ * Acquire a lock file to prevent concurrent postinstall executions.
50
+ * Returns the file descriptor on success, or null if lock cannot be acquired.
51
+ */
52
+ function acquireLock(lockPath) {
53
+ try {
54
+ // Try to create lock file exclusively
55
+ const fd = openSync(lockPath, 'wx');
56
+ return fd;
57
+ } catch (err) {
58
+ if (err.code === 'EEXIST') {
59
+ // Check if lock is stale
60
+ try {
61
+ const stats = require('fs').statSync(lockPath);
62
+ const ageMs = Date.now() - stats.mtimeMs;
63
+ if (ageMs > LOCK_STALE_MS) {
64
+ console.log('Removing stale lock file...');
65
+ unlinkSync(lockPath);
66
+ return acquireLock(lockPath); // Retry
67
+ }
68
+ } catch {
69
+ // Lock file disappeared or permission error
70
+ }
71
+ return null; // Lock held by another process
72
+ }
73
+ throw err; // Unexpected error
74
+ }
75
+ }
76
+
77
+ /**
78
+ * Release the lock file.
79
+ */
80
+ function releaseLock(fd, lockPath) {
81
+ try {
82
+ closeSync(fd);
83
+ unlinkSync(lockPath);
84
+ } catch {
85
+ // Best-effort cleanup
86
+ }
87
+ }
88
+
89
+ /**
90
+ * Discover all running limps daemons from PID files.
91
+ */
92
+ function discoverRunningDaemons() {
93
+ const pidDir = getSystemPidDir();
94
+ if (!existsSync(pidDir)) {
95
+ return [];
96
+ }
97
+
98
+ const daemons = [];
99
+ const entries = readdirSync(pidDir);
100
+
101
+ for (const entry of entries) {
102
+ if (!entry.startsWith('limps-') || !entry.endsWith('.pid')) {
103
+ continue;
104
+ }
105
+
106
+ const pidFilePath = join(pidDir, entry);
107
+ try {
108
+ const contents = JSON.parse(readFileSync(pidFilePath, 'utf-8'));
109
+
110
+ // Validate required fields
111
+ if (
112
+ typeof contents.pid === 'number' &&
113
+ typeof contents.port === 'number' &&
114
+ typeof contents.host === 'string' &&
115
+ typeof contents.startedAt === 'string'
116
+ ) {
117
+ // Check if process is still running
118
+ if (isProcessRunning(contents.pid)) {
119
+ daemons.push({
120
+ pid: contents.pid,
121
+ port: contents.port,
122
+ host: contents.host,
123
+ configPath: contents.configPath,
124
+ pidFilePath,
125
+ });
126
+ }
127
+ }
128
+ } catch {
129
+ // Invalid PID file, skip it
130
+ }
131
+ }
132
+
133
+ return daemons;
134
+ }
135
+
136
+ /**
137
+ * Check if a process is still running.
138
+ */
139
+ function isProcessRunning(pid) {
140
+ try {
141
+ process.kill(pid, 0); // Signal 0 tests existence
142
+ return true;
143
+ } catch {
144
+ return false;
145
+ }
146
+ }
147
+
148
+ /**
149
+ * Stop a daemon gracefully (SIGTERM, then SIGKILL after timeout).
150
+ */
151
+ async function stopDaemon(pid) {
152
+ if (!isProcessRunning(pid)) {
153
+ return; // Already stopped
154
+ }
155
+
156
+ console.log(` Stopping daemon (PID ${pid})...`);
157
+
158
+ try {
159
+ process.kill(pid, 'SIGTERM');
160
+ } catch (err) {
161
+ if (err.code === 'ESRCH') {
162
+ return; // Process already gone
163
+ }
164
+ throw err;
165
+ }
166
+
167
+ // Wait for graceful shutdown
168
+ const startTime = Date.now();
169
+ while (Date.now() - startTime < SHUTDOWN_TIMEOUT_MS) {
170
+ if (!isProcessRunning(pid)) {
171
+ console.log(` ✓ Daemon stopped gracefully`);
172
+ return;
173
+ }
174
+ await new Promise(resolve => setTimeout(resolve, 500));
175
+ }
176
+
177
+ // Force kill
178
+ console.log(` Daemon didn't stop gracefully, forcing SIGKILL...`);
179
+ try {
180
+ process.kill(pid, 'SIGKILL');
181
+ } catch (err) {
182
+ if (err.code === 'ESRCH') {
183
+ return; // Already gone
184
+ }
185
+ throw err;
186
+ }
187
+
188
+ // Verify it's dead
189
+ await new Promise(resolve => setTimeout(resolve, 1000));
190
+ if (isProcessRunning(pid)) {
191
+ throw new Error(`Failed to kill daemon (PID ${pid})`);
192
+ }
193
+ console.log(` ✓ Daemon force-stopped`);
194
+ }
195
+
196
+ /**
197
+ * Start a limps daemon.
198
+ */
199
+ async function startDaemon(configPath, port, host) {
200
+ console.log(` Starting daemon on ${host}:${port}...`);
201
+
202
+ const args = ['start', '--port', port.toString(), '--host', host];
203
+ if (configPath) {
204
+ args.push('--config', configPath);
205
+ }
206
+
207
+ // Get the path to limps binary (in dist/cli.js)
208
+ const limpsPath = join(__dirname, '..', 'dist', 'cli.js');
209
+
210
+ const child = spawn(process.execPath, [limpsPath, ...args], {
211
+ detached: true,
212
+ stdio: 'ignore',
213
+ });
214
+
215
+ child.unref(); // Allow parent to exit independently
216
+
217
+ // Wait a moment for the process to start
218
+ await new Promise(resolve => setTimeout(resolve, 1000));
219
+
220
+ console.log(` Daemon process spawned, checking health...`);
221
+ }
222
+
223
+ /**
224
+ * Check daemon health via HTTP.
225
+ */
226
+ function checkHealth(host, port) {
227
+ return new Promise((resolve) => {
228
+ const req = httpRequest(
229
+ {
230
+ hostname: host,
231
+ port,
232
+ method: 'GET',
233
+ path: '/health',
234
+ timeout: 3000,
235
+ },
236
+ (res) => {
237
+ let body = '';
238
+ res.on('data', (chunk) => { body += chunk.toString(); });
239
+ res.on('end', () => {
240
+ if (res.statusCode === 200) {
241
+ try {
242
+ const data = JSON.parse(body);
243
+ resolve(data.status === 'ok');
244
+ } catch {
245
+ resolve(false);
246
+ }
247
+ } else {
248
+ resolve(false);
249
+ }
250
+ });
251
+ }
252
+ );
253
+
254
+ req.on('error', () => resolve(false));
255
+ req.on('timeout', () => {
256
+ req.destroy();
257
+ resolve(false);
258
+ });
259
+
260
+ req.end();
261
+ });
262
+ }
263
+
264
+ /**
265
+ * Wait for daemon to become healthy.
266
+ */
267
+ async function waitForHealth(host, port) {
268
+ const startTime = Date.now();
269
+
270
+ while (Date.now() - startTime < HEALTH_CHECK_TIMEOUT_MS) {
271
+ const healthy = await checkHealth(host, port);
272
+ if (healthy) {
273
+ console.log(` ✓ Daemon is healthy`);
274
+ return true;
275
+ }
276
+ await new Promise(resolve => setTimeout(resolve, HEALTH_CHECK_INTERVAL_MS));
277
+ }
278
+
279
+ return false;
280
+ }
281
+
282
+ /**
283
+ * Main restart logic.
284
+ */
285
+ async function restartDaemons() {
286
+ // Check for opt-out
287
+ if (process.env.LIMPS_SKIP_POSTINSTALL === '1') {
288
+ console.log('LIMPS_SKIP_POSTINSTALL=1, skipping daemon restart');
289
+ return;
290
+ }
291
+
292
+ // Acquire lock
293
+ const lockPath = join(getSystemPidDir(), '.postinstall.lock');
294
+ const lockFd = acquireLock(lockPath);
295
+
296
+ if (lockFd === null) {
297
+ console.log('Another limps install is in progress, skipping restart');
298
+ return;
299
+ }
300
+
301
+ try {
302
+ console.log('Checking for running limps daemons...');
303
+ const daemons = discoverRunningDaemons();
304
+
305
+ if (daemons.length === 0) {
306
+ console.log('No running daemons found');
307
+ return;
308
+ }
309
+
310
+ console.log(`Found ${daemons.length} running daemon(s), restarting...`);
311
+
312
+ for (const daemon of daemons) {
313
+ try {
314
+ console.log(`\nRestarting daemon on ${daemon.host}:${daemon.port}...`);
315
+
316
+ // Stop old daemon
317
+ await stopDaemon(daemon.pid);
318
+
319
+ // Start new daemon
320
+ await startDaemon(daemon.configPath, daemon.port, daemon.host);
321
+
322
+ // Wait for health check
323
+ const healthy = await waitForHealth(daemon.host, daemon.port);
324
+
325
+ if (healthy) {
326
+ console.log(`✓ Successfully restarted daemon on ${daemon.host}:${daemon.port}`);
327
+ } else {
328
+ console.error(`✗ Daemon started but failed health check on ${daemon.host}:${daemon.port}`);
329
+ console.error(` Manual restart: limps stop && limps start --port ${daemon.port}`);
330
+ }
331
+ } catch (err) {
332
+ console.error(`✗ Failed to restart daemon on ${daemon.host}:${daemon.port}:`);
333
+ console.error(` ${err.message}`);
334
+ console.error(` Manual restart: limps stop && limps start --port ${daemon.port}`);
335
+ }
336
+ }
337
+
338
+ console.log('\nDaemon restart complete');
339
+ } finally {
340
+ releaseLock(lockFd, lockPath);
341
+ }
342
+ }
343
+
344
+ // Run with error handling
345
+ restartDaemons()
346
+ .catch((err) => {
347
+ console.warn('Warning: postinstall daemon restart failed:', err.message);
348
+ console.warn('Your limps installation is still valid.');
349
+ console.warn('If you have running daemons, restart them manually: limps stop && limps start');
350
+ })
351
+ .finally(() => {
352
+ // Always exit 0 - never fail npm install
353
+ process.exit(0);
354
+ });