@agent-deck/cli 1.9.0 → 1.10.1
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.
- package/dist/backend-runtime.d.ts +13 -0
- package/dist/backend-runtime.d.ts.map +1 -1
- package/dist/backend-runtime.js +20 -0
- package/dist/backend-runtime.js.map +1 -1
- package/dist/cli-integration-harness.d.ts +93 -0
- package/dist/cli-integration-harness.d.ts.map +1 -0
- package/dist/cli-integration-harness.js +309 -0
- package/dist/cli-integration-harness.js.map +1 -0
- package/dist/daemon-logs.d.ts +7 -0
- package/dist/daemon-logs.d.ts.map +1 -1
- package/dist/daemon-logs.js +55 -0
- package/dist/daemon-logs.js.map +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +3 -2
- package/dist/index.js.map +1 -1
- package/dist/mcp-bridge.d.ts +182 -0
- package/dist/mcp-bridge.d.ts.map +1 -0
- package/dist/mcp-bridge.js +856 -0
- package/dist/mcp-bridge.js.map +1 -0
- package/dist/mcp-launcher.d.ts +9 -0
- package/dist/mcp-launcher.d.ts.map +1 -1
- package/dist/mcp-launcher.js +47 -0
- package/dist/mcp-launcher.js.map +1 -1
- package/dist/menubar.d.ts +13 -0
- package/dist/menubar.d.ts.map +1 -1
- package/dist/menubar.js +32 -1
- package/dist/menubar.js.map +1 -1
- package/dist/node-runtime.d.ts +14 -2
- package/dist/node-runtime.d.ts.map +1 -1
- package/dist/node-runtime.js +37 -18
- package/dist/node-runtime.js.map +1 -1
- package/dist/ports.d.ts +38 -0
- package/dist/ports.d.ts.map +1 -1
- package/dist/ports.js +63 -0
- package/dist/ports.js.map +1 -1
- package/dist/setup.js +1 -1
- package/dist/setup.js.map +1 -1
- package/dist/shutdown-reason.d.ts +105 -0
- package/dist/shutdown-reason.d.ts.map +1 -0
- package/dist/shutdown-reason.js +247 -0
- package/dist/shutdown-reason.js.map +1 -0
- package/dist/start.d.ts.map +1 -1
- package/dist/start.js +361 -37
- package/dist/start.js.map +1 -1
- package/dist/status.d.ts.map +1 -1
- package/dist/status.js +30 -0
- package/dist/status.js.map +1 -1
- package/dist/stop.d.ts +14 -1
- package/dist/stop.d.ts.map +1 -1
- package/dist/stop.js +72 -1
- package/dist/stop.js.map +1 -1
- package/dist/store.d.ts +9 -0
- package/dist/store.d.ts.map +1 -1
- package/dist/store.js +41 -0
- package/dist/store.js.map +1 -1
- package/package.json +3 -3
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mcp-bridge.js","sourceRoot":"","sources":["../src/mcp-bridge.ts"],"names":[],"mappings":"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"}
|
package/dist/mcp-launcher.d.ts
CHANGED
|
@@ -7,6 +7,15 @@ export type McpLaunchPlan = {
|
|
|
7
7
|
deckName: string;
|
|
8
8
|
headers: string[];
|
|
9
9
|
};
|
|
10
|
+
export type McpBridgeKind = 'builtin' | 'supergateway';
|
|
11
|
+
/**
|
|
12
|
+
* The built-in bridge re-initializes when the MCP server restarts (NOT-101);
|
|
13
|
+
* supergateway does not, and stays wedged until it is killed by hand. Keep it
|
|
14
|
+
* reachable as an escape hatch, but never as the default.
|
|
15
|
+
*/
|
|
16
|
+
export declare function resolveBridgeKind(value?: string | undefined): McpBridgeKind;
|
|
17
|
+
/** `Name: value` launch headers → the header map the bridge sends on every request. */
|
|
18
|
+
export declare function parseLaunchHeaders(headers: string[]): Record<string, string>;
|
|
10
19
|
export declare const NO_ASSIGNMENT_MESSAGE = "[agent-deck] No deck assigned \u2014 run `agent-deck use <deck>` in this folder.";
|
|
11
20
|
/** Resolve launch headers from the folder assignment (migrating v2/Keychain → v3). */
|
|
12
21
|
export declare function resolveMcpLaunchPlan(workspaceRoot?: string, endpoint?: McpEndpoint): Promise<McpLaunchPlan | {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mcp-launcher.d.ts","sourceRoot":"","sources":["../src/mcp-launcher.ts"],"names":[],"mappings":";AAYA,OAAO,EAAe,KAAK,WAAW,EAAE,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"mcp-launcher.d.ts","sourceRoot":"","sources":["../src/mcp-launcher.ts"],"names":[],"mappings":";AAYA,OAAO,EAAe,KAAK,WAAW,EAAE,MAAM,cAAc,CAAC;AAI7D,MAAM,MAAM,aAAa,GAAG;IAC1B,aAAa,EAAE,MAAM,CAAC;IACtB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,EAAE,CAAC;CACnB,CAAC;AAEF,MAAM,MAAM,aAAa,GAAG,SAAS,GAAG,cAAc,CAAC;AAEvD;;;;GAIG;AACH,wBAAgB,iBAAiB,CAAC,KAAK,qBAAoC,GAAG,aAAa,CAE1F;AAED,uFAAuF;AACvF,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAc5E;AAED,eAAO,MAAM,qBAAqB,qFAC6C,CAAC;AAEhF,sFAAsF;AACtF,wBAAsB,oBAAoB,CACxC,aAAa,SAA0E,EACvF,QAAQ,GAAE,WAGT,GACA,OAAO,CAAC,aAAa,GAAG;IAAE,KAAK,EAAE,MAAM,CAAA;CAAE,CAAC,CA4B5C;AAED,wBAAsB,YAAY,IAAI,OAAO,CAAC,MAAM,CAAC,CA0DpD"}
|
package/dist/mcp-launcher.js
CHANGED
|
@@ -5,6 +5,8 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
5
5
|
};
|
|
6
6
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
7
7
|
exports.NO_ASSIGNMENT_MESSAGE = void 0;
|
|
8
|
+
exports.resolveBridgeKind = resolveBridgeKind;
|
|
9
|
+
exports.parseLaunchHeaders = parseLaunchHeaders;
|
|
8
10
|
exports.resolveMcpLaunchPlan = resolveMcpLaunchPlan;
|
|
9
11
|
exports.runMcpLaunch = runMcpLaunch;
|
|
10
12
|
/**
|
|
@@ -16,6 +18,31 @@ const node_path_1 = __importDefault(require("node:path"));
|
|
|
16
18
|
const shared_1 = require("@agent-deck/shared");
|
|
17
19
|
const mcp_config_1 = require("./mcp-config");
|
|
18
20
|
const assignment_1 = require("./assignment");
|
|
21
|
+
const mcp_bridge_1 = require("./mcp-bridge");
|
|
22
|
+
/**
|
|
23
|
+
* The built-in bridge re-initializes when the MCP server restarts (NOT-101);
|
|
24
|
+
* supergateway does not, and stays wedged until it is killed by hand. Keep it
|
|
25
|
+
* reachable as an escape hatch, but never as the default.
|
|
26
|
+
*/
|
|
27
|
+
function resolveBridgeKind(value = process.env.AGENT_DECK_MCP_BRIDGE) {
|
|
28
|
+
return value?.trim().toLowerCase() === 'supergateway' ? 'supergateway' : 'builtin';
|
|
29
|
+
}
|
|
30
|
+
/** `Name: value` launch headers → the header map the bridge sends on every request. */
|
|
31
|
+
function parseLaunchHeaders(headers) {
|
|
32
|
+
const parsed = {};
|
|
33
|
+
for (const header of headers) {
|
|
34
|
+
const separator = header.indexOf(':');
|
|
35
|
+
if (separator === -1) {
|
|
36
|
+
continue;
|
|
37
|
+
}
|
|
38
|
+
const name = header.slice(0, separator).trim();
|
|
39
|
+
const value = header.slice(separator + 1).trim();
|
|
40
|
+
if (name && value) {
|
|
41
|
+
parsed[name] = value;
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
return parsed;
|
|
45
|
+
}
|
|
19
46
|
exports.NO_ASSIGNMENT_MESSAGE = '[agent-deck] No deck assigned — run `agent-deck use <deck>` in this folder.';
|
|
20
47
|
/** Resolve launch headers from the folder assignment (migrating v2/Keychain → v3). */
|
|
21
48
|
async function resolveMcpLaunchPlan(workspaceRoot = node_path_1.default.resolve(process.env.AGENT_DECK_WORKSPACE?.trim() || process.cwd()), endpoint = {
|
|
@@ -58,6 +85,26 @@ async function runMcpLaunch() {
|
|
|
58
85
|
console.error(plan.error);
|
|
59
86
|
return 1;
|
|
60
87
|
}
|
|
88
|
+
if (resolveBridgeKind() === 'builtin') {
|
|
89
|
+
const bridge = new mcp_bridge_1.McpStdioHttpBridge({
|
|
90
|
+
url: plan.mcpUrl,
|
|
91
|
+
headers: parseLaunchHeaders(plan.headers),
|
|
92
|
+
// An elevated `switch_bound_deck` rewrites the folder assignment while we
|
|
93
|
+
// are connected, and `agent-deck use` can point it at another endpoint.
|
|
94
|
+
// Re-reading it before a replayed handshake is what keeps a restart from
|
|
95
|
+
// reconnecting to the deck and server this process started on.
|
|
96
|
+
resolveTarget: async () => {
|
|
97
|
+
const current = await resolveMcpLaunchPlan(workspaceRoot, endpoint);
|
|
98
|
+
return 'error' in current
|
|
99
|
+
? undefined
|
|
100
|
+
: { url: current.mcpUrl, headers: parseLaunchHeaders(current.headers) };
|
|
101
|
+
},
|
|
102
|
+
stdin: process.stdin,
|
|
103
|
+
stdout: process.stdout,
|
|
104
|
+
});
|
|
105
|
+
await bridge.run();
|
|
106
|
+
return 0;
|
|
107
|
+
}
|
|
61
108
|
const supergatewayArgs = [
|
|
62
109
|
'-y',
|
|
63
110
|
'supergateway',
|
package/dist/mcp-launcher.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mcp-launcher.js","sourceRoot":"","sources":["../src/mcp-launcher.ts"],"names":[],"mappings":";;;;;;;
|
|
1
|
+
{"version":3,"file":"mcp-launcher.js","sourceRoot":"","sources":["../src/mcp-launcher.ts"],"names":[],"mappings":"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"}
|
package/dist/menubar.d.ts
CHANGED
|
@@ -5,6 +5,19 @@ export declare function formatAge(lastActivityAt: string, now: Date): string;
|
|
|
5
5
|
export declare function resolveDashboardBaseUrl(): string;
|
|
6
6
|
export declare function buildApprovalHref(challenge: PendingAdminChallenge, _dashboardBaseUrl: string): string;
|
|
7
7
|
export declare function buildOpenDashboardMenubarLine(): string;
|
|
8
|
+
/** How the menu bar names itself when it stops the deck. */
|
|
9
|
+
export declare const MENUBAR_STOP_SOURCE = "menubar";
|
|
10
|
+
/**
|
|
11
|
+
* The menu bar's own stop, routed through `agent-deck stop --source` so the
|
|
12
|
+
* SIGTERM it causes is distinguishable in supervisor.log from a bare
|
|
13
|
+
* `kill -TERM` and from an operator's own `agent-deck stop` (NOT-135).
|
|
14
|
+
*
|
|
15
|
+
* The argv is deliberately space-free: SwiftBar splits `paramN=` values on
|
|
16
|
+
* whitespace, so a quoted `--detail "Quit Agent Deck"` would arrive as two
|
|
17
|
+
* arguments and lose the attribution this line exists to carry.
|
|
18
|
+
*/
|
|
19
|
+
export declare function buildStopDeckMenubarArgs(): string[];
|
|
20
|
+
export declare function buildStopDeckMenubarLine(): string;
|
|
8
21
|
/** SwiftBar/xbar output. `null` bindings = backend offline (accuracy first: dim, never guess). */
|
|
9
22
|
export declare function renderMenubar(bindings: LiveBinding[] | null, now: Date, pendingApprovals?: PendingAdminChallenge[], dashboardBaseUrl?: string): string;
|
|
10
23
|
export declare function runMenubar(): Promise<number>;
|
package/dist/menubar.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"menubar.d.ts","sourceRoot":"","sources":["../src/menubar.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,WAAW,EAAE,qBAAqB,EAAE,MAAM,oBAAoB,CAAC;AAM7E,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,SAAW,GAAG,MAAM,CAEjE;AAED,wBAAgB,eAAe,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,IAAI,GAAG,MAAM,CAe9D;AAED,wBAAgB,SAAS,CAAC,cAAc,EAAE,MAAM,EAAE,GAAG,EAAE,IAAI,GAAG,MAAM,CAkBnE;AAED,wBAAgB,uBAAuB,IAAI,MAAM,CAMhD;AAED,wBAAgB,iBAAiB,CAAC,SAAS,EAAE,qBAAqB,EAAE,iBAAiB,EAAE,MAAM,GAAG,MAAM,CAOrG;AAED,wBAAgB,6BAA6B,IAAI,MAAM,CAEtD;AAED,kGAAkG;AAClG,wBAAgB,aAAa,CAC3B,QAAQ,EAAE,WAAW,EAAE,GAAG,IAAI,EAC9B,GAAG,EAAE,IAAI,EACT,gBAAgB,GAAE,qBAAqB,EAAO,EAC9C,gBAAgB,SAA4B,GAC3C,MAAM,
|
|
1
|
+
{"version":3,"file":"menubar.d.ts","sourceRoot":"","sources":["../src/menubar.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,WAAW,EAAE,qBAAqB,EAAE,MAAM,oBAAoB,CAAC;AAM7E,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,SAAW,GAAG,MAAM,CAEjE;AAED,wBAAgB,eAAe,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,IAAI,GAAG,MAAM,CAe9D;AAED,wBAAgB,SAAS,CAAC,cAAc,EAAE,MAAM,EAAE,GAAG,EAAE,IAAI,GAAG,MAAM,CAkBnE;AAED,wBAAgB,uBAAuB,IAAI,MAAM,CAMhD;AAED,wBAAgB,iBAAiB,CAAC,SAAS,EAAE,qBAAqB,EAAE,iBAAiB,EAAE,MAAM,GAAG,MAAM,CAOrG;AAED,wBAAgB,6BAA6B,IAAI,MAAM,CAEtD;AAED,4DAA4D;AAC5D,eAAO,MAAM,mBAAmB,YAAY,CAAC;AAE7C;;;;;;;;GAQG;AACH,wBAAgB,wBAAwB,IAAI,MAAM,EAAE,CAEnD;AAED,wBAAgB,wBAAwB,IAAI,MAAM,CAKjD;AAED,kGAAkG;AAClG,wBAAgB,aAAa,CAC3B,QAAQ,EAAE,WAAW,EAAE,GAAG,IAAI,EAC9B,GAAG,EAAE,IAAI,EACT,gBAAgB,GAAE,qBAAqB,EAAO,EAC9C,gBAAgB,SAA4B,GAC3C,MAAM,CAuER;AAyBD,wBAAsB,UAAU,IAAI,OAAO,CAAC,MAAM,CAAC,CAwBlD"}
|
package/dist/menubar.js
CHANGED
|
@@ -3,12 +3,15 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
3
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.MENUBAR_STOP_SOURCE = void 0;
|
|
6
7
|
exports.truncateName = truncateName;
|
|
7
8
|
exports.formatTimeUntil = formatTimeUntil;
|
|
8
9
|
exports.formatAge = formatAge;
|
|
9
10
|
exports.resolveDashboardBaseUrl = resolveDashboardBaseUrl;
|
|
10
11
|
exports.buildApprovalHref = buildApprovalHref;
|
|
11
12
|
exports.buildOpenDashboardMenubarLine = buildOpenDashboardMenubarLine;
|
|
13
|
+
exports.buildStopDeckMenubarArgs = buildStopDeckMenubarArgs;
|
|
14
|
+
exports.buildStopDeckMenubarLine = buildStopDeckMenubarLine;
|
|
12
15
|
exports.renderMenubar = renderMenubar;
|
|
13
16
|
exports.runMenubar = runMenubar;
|
|
14
17
|
const node_path_1 = __importDefault(require("node:path"));
|
|
@@ -71,6 +74,26 @@ function buildApprovalHref(challenge, _dashboardBaseUrl) {
|
|
|
71
74
|
function buildOpenDashboardMenubarLine() {
|
|
72
75
|
return 'Open dashboard | bash=agent-deck param1=open terminal=false';
|
|
73
76
|
}
|
|
77
|
+
/** How the menu bar names itself when it stops the deck. */
|
|
78
|
+
exports.MENUBAR_STOP_SOURCE = 'menubar';
|
|
79
|
+
/**
|
|
80
|
+
* The menu bar's own stop, routed through `agent-deck stop --source` so the
|
|
81
|
+
* SIGTERM it causes is distinguishable in supervisor.log from a bare
|
|
82
|
+
* `kill -TERM` and from an operator's own `agent-deck stop` (NOT-135).
|
|
83
|
+
*
|
|
84
|
+
* The argv is deliberately space-free: SwiftBar splits `paramN=` values on
|
|
85
|
+
* whitespace, so a quoted `--detail "Quit Agent Deck"` would arrive as two
|
|
86
|
+
* arguments and lose the attribution this line exists to carry.
|
|
87
|
+
*/
|
|
88
|
+
function buildStopDeckMenubarArgs() {
|
|
89
|
+
return ['stop', '--source', exports.MENUBAR_STOP_SOURCE, '--detail', 'menu-bar-stop-item'];
|
|
90
|
+
}
|
|
91
|
+
function buildStopDeckMenubarLine() {
|
|
92
|
+
const params = buildStopDeckMenubarArgs()
|
|
93
|
+
.map((arg, i) => `param${i + 1}=${arg}`)
|
|
94
|
+
.join(' ');
|
|
95
|
+
return `Stop Agent Deck | bash=agent-deck ${params} terminal=false refresh=true`;
|
|
96
|
+
}
|
|
74
97
|
/** SwiftBar/xbar output. `null` bindings = backend offline (accuracy first: dim, never guess). */
|
|
75
98
|
function renderMenubar(bindings, now, pendingApprovals = [], dashboardBaseUrl = resolveDashboardBaseUrl()) {
|
|
76
99
|
if (bindings === null) {
|
|
@@ -84,7 +107,15 @@ function renderMenubar(bindings, now, pendingApprovals = [], dashboardBaseUrl =
|
|
|
84
107
|
: bindings.length === 0
|
|
85
108
|
? '◆ —'
|
|
86
109
|
: `◆ ${bindings.length}`;
|
|
87
|
-
|
|
110
|
+
// The deck is up (bindings answered), so stopping it is an offer worth making
|
|
111
|
+
// — and it is the one stop path that has to name itself, since SIGTERM won't.
|
|
112
|
+
const lines = [
|
|
113
|
+
title,
|
|
114
|
+
'---',
|
|
115
|
+
buildOpenDashboardMenubarLine(),
|
|
116
|
+
buildStopDeckMenubarLine(),
|
|
117
|
+
'---',
|
|
118
|
+
];
|
|
88
119
|
if (pendingCount > 0) {
|
|
89
120
|
lines.push('Admin approval pending | size=11 color=orange');
|
|
90
121
|
for (const challenge of pendingApprovals) {
|
package/dist/menubar.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"menubar.js","sourceRoot":"","sources":["../src/menubar.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"menubar.js","sourceRoot":"","sources":["../src/menubar.ts"],"names":[],"mappings":"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"}
|
package/dist/node-runtime.d.ts
CHANGED
|
@@ -1,12 +1,24 @@
|
|
|
1
1
|
export declare function getNodeMajor(): number;
|
|
2
2
|
export declare function formatNodeVersionError(): string;
|
|
3
|
-
export declare function
|
|
3
|
+
export declare function isSupportedNodeMajor(major?: number): boolean;
|
|
4
4
|
/** Load better-sqlite3 from the CLI's backend dependency tree (catches ABI / cache mismatches). */
|
|
5
5
|
export declare function verifySqliteNative(): {
|
|
6
6
|
ok: true;
|
|
7
7
|
} | {
|
|
8
8
|
ok: false;
|
|
9
|
+
reason: string;
|
|
9
10
|
message: string;
|
|
10
11
|
};
|
|
11
|
-
export
|
|
12
|
+
export interface PreflightFailure {
|
|
13
|
+
/** One line, for supervisor.log and `agent-deck status`. */
|
|
14
|
+
reason: string;
|
|
15
|
+
/** The full operator-facing explanation, already formatted for a terminal. */
|
|
16
|
+
message: string;
|
|
17
|
+
}
|
|
18
|
+
/**
|
|
19
|
+
* Runtime checks that must pass before anything is spawned. Returns the failure
|
|
20
|
+
* rather than printing it: a start that dies here has to end up in supervisor.log
|
|
21
|
+
* and `agent-deck status` too, not only on the terminal that invoked it.
|
|
22
|
+
*/
|
|
23
|
+
export declare function checkStartPreflight(): PreflightFailure | null;
|
|
12
24
|
//# sourceMappingURL=node-runtime.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"node-runtime.d.ts","sourceRoot":"","sources":["../src/node-runtime.ts"],"names":[],"mappings":"AAMA,wBAAgB,YAAY,IAAI,MAAM,CAErC;AAED,wBAAgB,sBAAsB,IAAI,MAAM,CAc/C;AAED,wBAAgB,
|
|
1
|
+
{"version":3,"file":"node-runtime.d.ts","sourceRoot":"","sources":["../src/node-runtime.ts"],"names":[],"mappings":"AAMA,wBAAgB,YAAY,IAAI,MAAM,CAErC;AAED,wBAAgB,sBAAsB,IAAI,MAAM,CAc/C;AAED,wBAAgB,oBAAoB,CAAC,KAAK,SAAiB,GAAG,OAAO,CAEpE;AAED,mGAAmG;AACnG,wBAAgB,kBAAkB,IAAI;IAAE,EAAE,EAAE,IAAI,CAAA;CAAE,GAAG;IAAE,EAAE,EAAE,KAAK,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAqClG;AAMD,MAAM,WAAW,gBAAgB;IAC/B,4DAA4D;IAC5D,MAAM,EAAE,MAAM,CAAC;IACf,8EAA8E;IAC9E,OAAO,EAAE,MAAM,CAAC;CACjB;AAED;;;;GAIG;AACH,wBAAgB,mBAAmB,IAAI,gBAAgB,GAAG,IAAI,CAe7D"}
|
package/dist/node-runtime.js
CHANGED
|
@@ -2,9 +2,9 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.getNodeMajor = getNodeMajor;
|
|
4
4
|
exports.formatNodeVersionError = formatNodeVersionError;
|
|
5
|
-
exports.
|
|
5
|
+
exports.isSupportedNodeMajor = isSupportedNodeMajor;
|
|
6
6
|
exports.verifySqliteNative = verifySqliteNative;
|
|
7
|
-
exports.
|
|
7
|
+
exports.checkStartPreflight = checkStartPreflight;
|
|
8
8
|
const paths_1 = require("./paths");
|
|
9
9
|
/** Node majors we test against. 24 is the default target; 20+ remains supported. */
|
|
10
10
|
const SUPPORTED_NODE_MAJORS = [20, 22, 23, 24, 25, 26];
|
|
@@ -27,13 +27,8 @@ function formatNodeVersionError() {
|
|
|
27
27
|
`Unsupported major: ${major}. Native SQLite bindings (better-sqlite3) must match your Node version.`,
|
|
28
28
|
].join('\n');
|
|
29
29
|
}
|
|
30
|
-
function
|
|
31
|
-
|
|
32
|
-
if (SUPPORTED_NODE_MAJORS.includes(major)) {
|
|
33
|
-
return null;
|
|
34
|
-
}
|
|
35
|
-
console.error(formatNodeVersionError());
|
|
36
|
-
return 1;
|
|
30
|
+
function isSupportedNodeMajor(major = getNodeMajor()) {
|
|
31
|
+
return SUPPORTED_NODE_MAJORS.includes(major);
|
|
37
32
|
}
|
|
38
33
|
/** Load better-sqlite3 from the CLI's backend dependency tree (catches ABI / cache mismatches). */
|
|
39
34
|
function verifySqliteNative() {
|
|
@@ -42,14 +37,24 @@ function verifySqliteNative() {
|
|
|
42
37
|
paths: [(0, paths_1.resolveBackendRoot)(), (0, paths_1.getCliPackageRoot)()],
|
|
43
38
|
});
|
|
44
39
|
// eslint-disable-next-line @typescript-eslint/no-require-imports
|
|
45
|
-
require(sqlitePath);
|
|
40
|
+
const Database = require(sqlitePath);
|
|
41
|
+
// `require` alone proves nothing: better-sqlite3 dlopens its .node binding
|
|
42
|
+
// lazily, on first Database construction. Without this probe an ABI
|
|
43
|
+
// mismatch passes preflight and only surfaces as the backend exiting 1.
|
|
44
|
+
const probe = new Database(':memory:');
|
|
45
|
+
probe.close();
|
|
46
46
|
return { ok: true };
|
|
47
47
|
}
|
|
48
48
|
catch (error) {
|
|
49
49
|
const detail = error instanceof Error ? error.message : String(error);
|
|
50
|
-
|
|
50
|
+
// Node reports a failed dlopen as `code`, not in the message, and an
|
|
51
|
+
// arch mismatch ("incompatible architecture") never says NODE_MODULE_VERSION.
|
|
52
|
+
const code = error?.code ?? '';
|
|
53
|
+
if (detail.includes('NODE_MODULE_VERSION') || code === 'ERR_DLOPEN_FAILED') {
|
|
51
54
|
return {
|
|
52
55
|
ok: false,
|
|
56
|
+
reason: `better-sqlite3 native module does not match node ${process.version} ` +
|
|
57
|
+
`(NODE_MODULE_VERSION ${process.versions.modules}): ${firstLine(detail)}`,
|
|
53
58
|
message: [
|
|
54
59
|
'better-sqlite3 native module does not match this Node.js version.',
|
|
55
60
|
'',
|
|
@@ -61,15 +66,29 @@ function verifySqliteNative() {
|
|
|
61
66
|
].join('\n'),
|
|
62
67
|
};
|
|
63
68
|
}
|
|
64
|
-
return { ok: false, message: detail };
|
|
69
|
+
return { ok: false, reason: `better-sqlite3 could not be loaded: ${firstLine(detail)}`, message: detail };
|
|
65
70
|
}
|
|
66
71
|
}
|
|
67
|
-
function
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
72
|
+
function firstLine(text) {
|
|
73
|
+
return text.split('\n')[0].trim();
|
|
74
|
+
}
|
|
75
|
+
/**
|
|
76
|
+
* Runtime checks that must pass before anything is spawned. Returns the failure
|
|
77
|
+
* rather than printing it: a start that dies here has to end up in supervisor.log
|
|
78
|
+
* and `agent-deck status` too, not only on the terminal that invoked it.
|
|
79
|
+
*/
|
|
80
|
+
function checkStartPreflight() {
|
|
81
|
+
const major = getNodeMajor();
|
|
82
|
+
if (!isSupportedNodeMajor(major)) {
|
|
83
|
+
return {
|
|
84
|
+
reason: `unsupported Node.js major ${major} (${process.version})`,
|
|
85
|
+
message: formatNodeVersionError(),
|
|
86
|
+
};
|
|
87
|
+
}
|
|
88
|
+
const sqlite = verifySqliteNative();
|
|
89
|
+
if (!sqlite.ok) {
|
|
90
|
+
return { reason: sqlite.reason, message: sqlite.message };
|
|
71
91
|
}
|
|
72
|
-
|
|
73
|
-
return 1;
|
|
92
|
+
return null;
|
|
74
93
|
}
|
|
75
94
|
//# sourceMappingURL=node-runtime.js.map
|
package/dist/node-runtime.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"node-runtime.js","sourceRoot":"","sources":["../src/node-runtime.ts"],"names":[],"mappings":";;AAMA,oCAEC;AAED,wDAcC;AAED,
|
|
1
|
+
{"version":3,"file":"node-runtime.js","sourceRoot":"","sources":["../src/node-runtime.ts"],"names":[],"mappings":"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"}
|
package/dist/ports.d.ts
CHANGED
|
@@ -1,12 +1,50 @@
|
|
|
1
|
+
/** Sessions from a previous MCP process, as `/health` tallies them (NOT-101). */
|
|
2
|
+
export interface McpStaleSessionTally {
|
|
3
|
+
/** Requests rejected because they carried a session this process never issued. */
|
|
4
|
+
count: number;
|
|
5
|
+
/** How many distinct pre-restart sessions those requests came from. */
|
|
6
|
+
distinctSessions: number;
|
|
7
|
+
/** Of those, the ones whose client re-initialized on its own. */
|
|
8
|
+
recoveredSessions?: number;
|
|
9
|
+
/** The rest — nobody reconnected from them, so those clients are stranded. */
|
|
10
|
+
unresolvedSessions?: number;
|
|
11
|
+
lastAt?: string;
|
|
12
|
+
lastUnresolvedAt?: string;
|
|
13
|
+
}
|
|
14
|
+
/**
|
|
15
|
+
* MCP session health, field for field as the server reports it — one vocabulary
|
|
16
|
+
* across the wire, the server, and `agent-deck status`.
|
|
17
|
+
*/
|
|
18
|
+
export interface McpSessionHealth {
|
|
19
|
+
/** New on every MCP process start — a changed id means a restart happened. */
|
|
20
|
+
instanceId?: string;
|
|
21
|
+
startedAt?: string;
|
|
22
|
+
liveSessions?: number;
|
|
23
|
+
staleSessions: McpStaleSessionTally;
|
|
24
|
+
}
|
|
1
25
|
export interface AgentDeckProbe {
|
|
2
26
|
backendUp: boolean;
|
|
3
27
|
mcpUp: boolean;
|
|
4
28
|
backendVersion?: string;
|
|
5
29
|
backendUrl: string;
|
|
6
30
|
mcpUrl: string;
|
|
31
|
+
mcpSessions?: McpSessionHealth;
|
|
7
32
|
}
|
|
8
33
|
export declare function isTcpPortOpen(host: string, port: number): Promise<boolean>;
|
|
9
34
|
export declare function probeAgentDeck(host: string, backendPort: number, mcpPort: number): Promise<AgentDeckProbe>;
|
|
35
|
+
/** Read `/health` defensively — an older MCP server reports fewer fields. */
|
|
36
|
+
export declare function readMcpSessionHealth(health: Record<string, unknown> | null): McpSessionHealth;
|
|
37
|
+
/**
|
|
38
|
+
* Status lines for MCP sessions. A restart orphans every connected client, so a
|
|
39
|
+
* non-zero stale tally is the difference between "running" and "running, and the
|
|
40
|
+
* clients you already have open are talking to a session that no longer exists".
|
|
41
|
+
*
|
|
42
|
+
* The tally is cumulative for the life of the process, so it cannot be read as
|
|
43
|
+
* "clients are stranded right now" — a client that recovered still shows up in
|
|
44
|
+
* it. Only the unresolved sessions (nobody re-initialized away from them) earn a
|
|
45
|
+
* warning; the rest is reported as what it is, past activity.
|
|
46
|
+
*/
|
|
47
|
+
export declare function formatMcpSessionStatus(sessions: McpSessionHealth | undefined): string[];
|
|
10
48
|
export declare function listListeningPids(port: number): number[];
|
|
11
49
|
export declare function formatPortConflict(port: number, label: string, host: string, isAgentDeck: boolean): string;
|
|
12
50
|
//# sourceMappingURL=ports.d.ts.map
|
package/dist/ports.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ports.d.ts","sourceRoot":"","sources":["../src/ports.ts"],"names":[],"mappings":"AAGA,MAAM,WAAW,cAAc;IAC7B,SAAS,EAAE,OAAO,CAAC;IACnB,KAAK,EAAE,OAAO,CAAC;IACf,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"ports.d.ts","sourceRoot":"","sources":["../src/ports.ts"],"names":[],"mappings":"AAGA,iFAAiF;AACjF,MAAM,WAAW,oBAAoB;IACnC,kFAAkF;IAClF,KAAK,EAAE,MAAM,CAAC;IACd,uEAAuE;IACvE,gBAAgB,EAAE,MAAM,CAAC;IACzB,iEAAiE;IACjE,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,8EAA8E;IAC9E,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B;AAED;;;GAGG;AACH,MAAM,WAAW,gBAAgB;IAC/B,8EAA8E;IAC9E,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,aAAa,EAAE,oBAAoB,CAAC;CACrC;AAED,MAAM,WAAW,cAAc;IAC7B,SAAS,EAAE,OAAO,CAAC;IACnB,KAAK,EAAE,OAAO,CAAC;IACf,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,gBAAgB,CAAC;CAChC;AAkBD,wBAAsB,aAAa,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAahF;AAED,wBAAsB,cAAc,CAClC,IAAI,EAAE,MAAM,EACZ,WAAW,EAAE,MAAM,EACnB,OAAO,EAAE,MAAM,GACd,OAAO,CAAC,cAAc,CAAC,CAsBzB;AAED,6EAA6E;AAC7E,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,GAAG,gBAAgB,CAqB7F;AAED;;;;;;;;;GASG;AACH,wBAAgB,sBAAsB,CAAC,QAAQ,EAAE,gBAAgB,GAAG,SAAS,GAAG,MAAM,EAAE,CAyCvF;AAED,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,CAiBxD;AAED,wBAAgB,kBAAkB,CAChC,IAAI,EAAE,MAAM,EACZ,KAAK,EAAE,MAAM,EACb,IAAI,EAAE,MAAM,EACZ,WAAW,EAAE,OAAO,GACnB,MAAM,CAkBR"}
|
package/dist/ports.js
CHANGED
|
@@ -5,6 +5,8 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
exports.isTcpPortOpen = isTcpPortOpen;
|
|
7
7
|
exports.probeAgentDeck = probeAgentDeck;
|
|
8
|
+
exports.readMcpSessionHealth = readMcpSessionHealth;
|
|
9
|
+
exports.formatMcpSessionStatus = formatMcpSessionStatus;
|
|
8
10
|
exports.listListeningPids = listListeningPids;
|
|
9
11
|
exports.formatPortConflict = formatPortConflict;
|
|
10
12
|
const node_child_process_1 = require("node:child_process");
|
|
@@ -56,8 +58,69 @@ async function probeAgentDeck(host, backendPort, mcpPort) {
|
|
|
56
58
|
backendVersion: typeof backendHealth?.version === 'string' ? backendHealth.version : undefined,
|
|
57
59
|
backendUrl,
|
|
58
60
|
mcpUrl,
|
|
61
|
+
mcpSessions: mcpUp ? readMcpSessionHealth(mcpHealth) : undefined,
|
|
59
62
|
};
|
|
60
63
|
}
|
|
64
|
+
/** Read `/health` defensively — an older MCP server reports fewer fields. */
|
|
65
|
+
function readMcpSessionHealth(health) {
|
|
66
|
+
const stale = (health?.staleSessions ?? {});
|
|
67
|
+
const asOptionalCount = (value) => typeof value === 'number' ? value : undefined;
|
|
68
|
+
const asText = (value) => typeof value === 'string' ? value : undefined;
|
|
69
|
+
return {
|
|
70
|
+
instanceId: asText(health?.instanceId),
|
|
71
|
+
startedAt: asText(health?.startedAt),
|
|
72
|
+
liveSessions: asOptionalCount(health?.liveSessions),
|
|
73
|
+
staleSessions: {
|
|
74
|
+
count: asOptionalCount(stale.count) ?? 0,
|
|
75
|
+
distinctSessions: asOptionalCount(stale.distinctSessions) ?? 0,
|
|
76
|
+
// Absent on a server that predates NOT-101: only the totals are known there.
|
|
77
|
+
recoveredSessions: asOptionalCount(stale.recoveredSessions),
|
|
78
|
+
unresolvedSessions: asOptionalCount(stale.unresolvedSessions),
|
|
79
|
+
lastAt: asText(stale.lastAt),
|
|
80
|
+
lastUnresolvedAt: asText(stale.lastUnresolvedAt),
|
|
81
|
+
},
|
|
82
|
+
};
|
|
83
|
+
}
|
|
84
|
+
/**
|
|
85
|
+
* Status lines for MCP sessions. A restart orphans every connected client, so a
|
|
86
|
+
* non-zero stale tally is the difference between "running" and "running, and the
|
|
87
|
+
* clients you already have open are talking to a session that no longer exists".
|
|
88
|
+
*
|
|
89
|
+
* The tally is cumulative for the life of the process, so it cannot be read as
|
|
90
|
+
* "clients are stranded right now" — a client that recovered still shows up in
|
|
91
|
+
* it. Only the unresolved sessions (nobody re-initialized away from them) earn a
|
|
92
|
+
* warning; the rest is reported as what it is, past activity.
|
|
93
|
+
*/
|
|
94
|
+
function formatMcpSessionStatus(sessions) {
|
|
95
|
+
if (!sessions) {
|
|
96
|
+
return [];
|
|
97
|
+
}
|
|
98
|
+
const lines = [];
|
|
99
|
+
const live = sessions.liveSessions ?? 0;
|
|
100
|
+
lines.push(` Sessions ${live} live${sessions.startedAt ? ` (since ${sessions.startedAt})` : ''}`);
|
|
101
|
+
const stale = sessions.staleSessions;
|
|
102
|
+
if (stale.count === 0) {
|
|
103
|
+
return lines;
|
|
104
|
+
}
|
|
105
|
+
// A server that predates recovery reporting only gives us the totals; treat
|
|
106
|
+
// every stale session it saw as unresolved, which is what it meant back then.
|
|
107
|
+
const unresolved = stale.unresolvedSessions ?? stale.distinctSessions;
|
|
108
|
+
if (unresolved > 0) {
|
|
109
|
+
const clients = unresolved === 1 ? '1 client' : `${unresolved} clients`;
|
|
110
|
+
const lastAt = stale.lastUnresolvedAt ?? stale.lastAt;
|
|
111
|
+
lines.push(` ⚠ Stale ${clients} still using a session from before the last MCP restart` +
|
|
112
|
+
`${lastAt ? ` (last attempt ${lastAt})` : ''}`);
|
|
113
|
+
lines.push(' Their tool calls fail with 404 until they re-initialize.');
|
|
114
|
+
lines.push(" Agent Deck's own bridge reconnects; a supergateway bridge must be " +
|
|
115
|
+
'restarted with its host.');
|
|
116
|
+
return lines;
|
|
117
|
+
}
|
|
118
|
+
const attempts = stale.count === 1 ? '1 request' : `${stale.count} requests`;
|
|
119
|
+
const recovered = stale.recoveredSessions ?? stale.distinctSessions;
|
|
120
|
+
lines.push(` Recovered ${recovered === 1 ? '1 client' : `${recovered} clients`} re-initialized after a ` +
|
|
121
|
+
`restart (${attempts} rejected before they did${stale.lastAt ? `, last ${stale.lastAt}` : ''})`);
|
|
122
|
+
return lines;
|
|
123
|
+
}
|
|
61
124
|
function listListeningPids(port) {
|
|
62
125
|
if (process.platform === 'win32') {
|
|
63
126
|
return [];
|
package/dist/ports.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ports.js","sourceRoot":"","sources":["../src/ports.ts"],"names":[],"mappings":";;;;;
|
|
1
|
+
{"version":3,"file":"ports.js","sourceRoot":"","sources":["../src/ports.ts"],"names":[],"mappings":"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"}
|
package/dist/setup.js
CHANGED
|
@@ -264,7 +264,7 @@ async function runSetup(args) {
|
|
|
264
264
|
(0, mcp_config_1.writeJsonFile)(configPath, merged);
|
|
265
265
|
console.log(`Wrote agent-deck MCP config → ${configPath}`);
|
|
266
266
|
if (client === 'claude-desktop') {
|
|
267
|
-
console.log(
|
|
267
|
+
console.log("Claude Desktop uses Agent Deck's stdio bridge because JSON config is stdio-only.");
|
|
268
268
|
console.log('Start Agent Deck before opening Claude Desktop.');
|
|
269
269
|
}
|
|
270
270
|
return await finishSetup(client, scope, endpoint, parsed.start === true, parsed.statusline, parsed.menubar);
|