@agent-deck/cli 1.11.5 → 1.11.6

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/open.d.ts CHANGED
@@ -1,7 +1,17 @@
1
+ import { openDashboardInBrowser } from './dashboard-open';
2
+ import { probeAgentDeck } from './ports';
1
3
  export declare function parseOpenArgs(args: string[]): {
2
4
  path: string;
3
5
  } | {
4
6
  error: string;
5
7
  };
6
- export declare function runOpenCommand(args: string[]): Promise<number>;
8
+ export type OpenCommandDeps = {
9
+ probeBackend?: typeof probeAgentDeck;
10
+ startBackend?: (options: {
11
+ backendPort: number;
12
+ mcpPort: number;
13
+ }) => Promise<number>;
14
+ openDashboard?: typeof openDashboardInBrowser;
15
+ };
16
+ export declare function runOpenCommand(args: string[], deps?: OpenCommandDeps): Promise<number>;
7
17
  //# sourceMappingURL=open.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"open.d.ts","sourceRoot":"","sources":["../src/open.ts"],"names":[],"mappings":"AAIA,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,GAAG;IAAE,KAAK,EAAE,MAAM,CAAA;CAAE,CAuBlF;AAWD,wBAAsB,cAAc,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC,CA4BpE"}
1
+ {"version":3,"file":"open.d.ts","sourceRoot":"","sources":["../src/open.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,sBAAsB,EAAE,MAAM,kBAAkB,CAAC;AAC1D,OAAO,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AAEzC,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,GAAG;IAAE,KAAK,EAAE,MAAM,CAAA;CAAE,CAuBlF;AAYD,MAAM,MAAM,eAAe,GAAG;IAC5B,YAAY,CAAC,EAAE,OAAO,cAAc,CAAC;IACrC,YAAY,CAAC,EAAE,CAAC,OAAO,EAAE;QAAE,WAAW,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC;IACtF,aAAa,CAAC,EAAE,OAAO,sBAAsB,CAAC;CAC/C,CAAC;AAcF,wBAAsB,cAAc,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,IAAI,GAAE,eAAoB,GAAG,OAAO,CAAC,MAAM,CAAC,CA6ChG"}
package/dist/open.js CHANGED
@@ -1,4 +1,37 @@
1
1
  "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
2
35
  Object.defineProperty(exports, "__esModule", { value: true });
3
36
  exports.parseOpenArgs = parseOpenArgs;
4
37
  exports.runOpenCommand = runOpenCommand;
@@ -37,11 +70,23 @@ function printOpenUsage() {
37
70
  console.log(`Usage:
38
71
  agent-deck open [--path /admin/approve?...]
39
72
 
40
- Mints a short-lived dashboard bootstrap URL and opens the system browser.
73
+ Starts the local backend when it is stopped, then mints a short-lived
74
+ dashboard bootstrap URL and opens the system browser.
41
75
  The bare dashboard origin remains unauthorized without an existing session;
42
76
  run agent-deck open whenever access needs to be restored.`);
43
77
  }
44
- async function runOpenCommand(args) {
78
+ /**
79
+ * NOT-286: cold-open starter. Reuses the existing `runStart` daemon path so
80
+ * `agent-deck open` never grows its own supervisor — it just asks for a
81
+ * background deck without opening a second browser tab (`openBrowser: false`;
82
+ * this command mints and opens its own bootstrap URL below). Lazily imported
83
+ * so `open --help` and unit tests stay light.
84
+ */
85
+ async function defaultStartBackend(options) {
86
+ const { runStart } = await Promise.resolve().then(() => __importStar(require('./start')));
87
+ return runStart({ daemon: true, openBrowser: false, ...options });
88
+ }
89
+ async function runOpenCommand(args, deps = {}) {
45
90
  const parsed = parseOpenArgs(args);
46
91
  if ('error' in parsed) {
47
92
  if (parsed.error === 'help') {
@@ -55,12 +100,24 @@ async function runOpenCommand(args) {
55
100
  const host = process.env.AGENT_DECK_HOST ?? '127.0.0.1';
56
101
  const backendPort = (0, defaults_1.readCliBackendPort)();
57
102
  const mcpPort = Number.parseInt(process.env.AGENT_DECK_MCP_PORT ?? '1110', 10) || 1110;
58
- const probe = await (0, ports_1.probeAgentDeck)(host, backendPort, mcpPort);
103
+ const probeBackend = deps.probeBackend ?? ports_1.probeAgentDeck;
104
+ const startBackend = deps.startBackend ?? defaultStartBackend;
105
+ const openDashboard = deps.openDashboard ?? dashboard_open_1.openDashboardInBrowser;
106
+ let probe = await probeBackend(host, backendPort, mcpPort);
59
107
  if (!probe.backendUp) {
60
- console.error('[agent-deck] Backend is not running. Start it first: agent-deck start');
61
- return 1;
108
+ console.log('[agent-deck] Backend is not running. Starting it now ...');
109
+ const startCode = await startBackend({ backendPort, mcpPort });
110
+ if (startCode !== 0) {
111
+ console.error('[agent-deck] Could not start the backend. Run `agent-deck status` for the cause, then retry `agent-deck open`.');
112
+ return startCode;
113
+ }
114
+ probe = await probeBackend(host, backendPort, mcpPort);
115
+ if (!probe.backendUp) {
116
+ console.error('[agent-deck] The backend started but is not answering yet. Run `agent-deck status`, then retry `agent-deck open`.');
117
+ return 1;
118
+ }
62
119
  }
63
- const result = await (0, dashboard_open_1.openDashboardInBrowser)(probe.backendUrl, parsed.path);
120
+ const result = await openDashboard(probe.backendUrl, parsed.path);
64
121
  if (result.code !== 0) {
65
122
  console.error(`[agent-deck] ${result.message ?? 'Failed to open dashboard'}`);
66
123
  return result.code;
package/dist/open.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"open.js","sourceRoot":"","sources":["../src/open.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"open.js","sourceRoot":"","sources":["../src/open.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@agent-deck/cli",
3
- "version": "1.11.5",
3
+ "version": "1.11.6",
4
4
  "description": "Local MCP proxy — decks of tools, keys, and self-improving playbooks",
5
5
  "license": "MIT",
6
6
  "bin": {
@@ -40,8 +40,8 @@
40
40
  "prepublishOnly": "node ../../scripts/pre-publish-check.mjs && npm run build"
41
41
  },
42
42
  "dependencies": {
43
- "@agent-deck/backend": "^1.11.5",
44
- "@agent-deck/shared": "^1.11.5"
43
+ "@agent-deck/backend": "^1.11.6",
44
+ "@agent-deck/shared": "^1.11.6"
45
45
  },
46
46
  "devDependencies": {
47
47
  "@types/node": "^20.11.5",