@opentabs-dev/cli 0.0.16 → 0.0.18

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.
Files changed (41) hide show
  1. package/dist/cli.js +5 -1
  2. package/dist/cli.js.map +1 -1
  3. package/dist/commands/audit.d.ts +11 -0
  4. package/dist/commands/audit.d.ts.map +1 -0
  5. package/dist/commands/audit.js +220 -0
  6. package/dist/commands/audit.js.map +1 -0
  7. package/dist/commands/config.d.ts.map +1 -1
  8. package/dist/commands/config.js +308 -18
  9. package/dist/commands/config.js.map +1 -1
  10. package/dist/commands/doctor.d.ts +7 -1
  11. package/dist/commands/doctor.d.ts.map +1 -1
  12. package/dist/commands/doctor.js +63 -8
  13. package/dist/commands/doctor.js.map +1 -1
  14. package/dist/commands/index.d.ts +1 -0
  15. package/dist/commands/index.d.ts.map +1 -1
  16. package/dist/commands/index.js +1 -0
  17. package/dist/commands/index.js.map +1 -1
  18. package/dist/commands/logs.js +3 -3
  19. package/dist/commands/logs.js.map +1 -1
  20. package/dist/commands/plugin.d.ts +1 -1
  21. package/dist/commands/plugin.d.ts.map +1 -1
  22. package/dist/commands/plugin.js +377 -5
  23. package/dist/commands/plugin.js.map +1 -1
  24. package/dist/commands/start.d.ts.map +1 -1
  25. package/dist/commands/start.js +20 -4
  26. package/dist/commands/start.js.map +1 -1
  27. package/dist/commands/status.d.ts.map +1 -1
  28. package/dist/commands/status.js +25 -4
  29. package/dist/commands/status.js.map +1 -1
  30. package/dist/config.d.ts +13 -1
  31. package/dist/config.d.ts.map +1 -1
  32. package/dist/config.js +17 -8
  33. package/dist/config.js.map +1 -1
  34. package/dist/parse-port.d.ts.map +1 -1
  35. package/dist/parse-port.js +2 -0
  36. package/dist/parse-port.js.map +1 -1
  37. package/dist/scaffold.d.ts +14 -2
  38. package/dist/scaffold.d.ts.map +1 -1
  39. package/dist/scaffold.js +115 -8
  40. package/dist/scaffold.js.map +1 -1
  41. package/package.json +4 -4
@@ -1,8 +1,11 @@
1
1
  /**
2
2
  * `opentabs config` command — view and manage configuration.
3
3
  */
4
- import { atomicWriteConfig, getConfigPath, readConfig } from '../config.js';
4
+ import { atomicWriteConfig, getConfigPath, getExtensionDir, isConnectionRefused, readConfig } from '../config.js';
5
+ import { resolvePort } from '../parse-port.js';
5
6
  import pc from 'picocolors';
7
+ import { chmod, mkdir, rename, unlink } from 'node:fs/promises';
8
+ import { join, resolve } from 'node:path';
6
9
  const REDACTED = '***';
7
10
  const redactSecret = (config) => {
8
11
  if (typeof config.secret === 'string') {
@@ -15,12 +18,18 @@ const handleConfigPath = () => {
15
18
  };
16
19
  const handleConfigShow = async (options) => {
17
20
  const configPath = getConfigPath();
18
- const config = await readConfig(configPath);
19
- if (!config) {
20
- console.error(pc.red(`No config found at ${configPath}`));
21
+ const result = await readConfig(configPath);
22
+ if (!result.config) {
23
+ if (result.error === 'invalid') {
24
+ console.error(pc.red(`Invalid config at ${configPath}: ${result.message}`));
25
+ }
26
+ else {
27
+ console.error(pc.red(`No config found at ${configPath}`));
28
+ }
21
29
  console.error('Run opentabs start to auto-create config.');
22
30
  process.exit(1);
23
31
  }
32
+ const config = result.config;
24
33
  const redacted = redactSecret(config);
25
34
  if (options.json) {
26
35
  console.log(JSON.stringify(redacted, null, 2));
@@ -54,6 +63,19 @@ const handleConfigShow = async (options) => {
54
63
  }
55
64
  }
56
65
  }
66
+ else if (key === 'browserToolPolicy' && typeof value === 'object' && value !== null) {
67
+ const entries = Object.entries(value);
68
+ console.log(` ${pc.cyan('browserToolPolicy')}`);
69
+ if (entries.length === 0) {
70
+ console.log(` ${pc.dim('(none)')}`);
71
+ }
72
+ else {
73
+ for (const [toolName, enabled] of entries) {
74
+ const indicator = enabled ? pc.green('enabled') : pc.red('disabled');
75
+ console.log(` ${toolName}: ${indicator}`);
76
+ }
77
+ }
78
+ }
57
79
  else {
58
80
  const display = typeof value === 'string' || typeof value === 'number' || typeof value === 'boolean'
59
81
  ? String(value)
@@ -64,16 +86,74 @@ const handleConfigShow = async (options) => {
64
86
  }
65
87
  };
66
88
  const TOOL_PREFIX = 'tool.';
67
- const handleConfigSet = async (key, value) => {
68
- if (!key.startsWith(TOOL_PREFIX)) {
69
- console.error(pc.red(`Unknown config key: ${key}`));
70
- console.error(`Supported keys: tool.<plugin>_<tool>`);
89
+ const BROWSER_TOOL_PREFIX = 'browser-tool.';
90
+ const LOCAL_PLUGINS_ADD = 'localPlugins.add';
91
+ const LOCAL_PLUGINS_REMOVE = 'localPlugins.remove';
92
+ const PORT_KEY = 'port';
93
+ const SUPPORTED_KEYS = `Supported keys:
94
+ tool.<plugin>_<tool> Enable/disable a plugin tool (value: enabled | disabled)
95
+ browser-tool.<name> Enable/disable a browser tool (value: enabled | disabled)
96
+ port Set the server port (value: 1-65535)
97
+ localPlugins.add Add a local plugin path (value: absolute or relative path)
98
+ localPlugins.remove Remove a local plugin path (value: path to remove)`;
99
+ const loadConfig = async () => {
100
+ const configPath = getConfigPath();
101
+ const result = await readConfig(configPath);
102
+ if (!result.config) {
103
+ if (result.error === 'invalid') {
104
+ console.error(pc.red(`Invalid config at ${configPath}: ${result.message}`));
105
+ }
106
+ else {
107
+ console.error(pc.red(`No config found at ${configPath}`));
108
+ }
109
+ console.error('Run opentabs start to auto-create config.');
110
+ process.exit(1);
111
+ }
112
+ return { config: result.config, configPath };
113
+ };
114
+ const fetchToolNames = async (port) => {
115
+ try {
116
+ const res = await fetch(`http://localhost:${port}/health`, {
117
+ signal: AbortSignal.timeout(3_000),
118
+ });
119
+ if (!res.ok)
120
+ return null;
121
+ const data = (await res.json());
122
+ if (!Array.isArray(data.pluginDetails))
123
+ return null;
124
+ return data.pluginDetails.flatMap(p => p.tools);
125
+ }
126
+ catch {
127
+ return null;
128
+ }
129
+ };
130
+ const handleListTools = async () => {
131
+ const port = resolvePort({});
132
+ const tools = await fetchToolNames(port);
133
+ if (!tools) {
134
+ console.error(pc.yellow('Cannot reach the MCP server to list available tools.'));
135
+ console.error(`Start it with: ${pc.bold('opentabs start')}`);
136
+ console.error('');
137
+ console.error('Tool names use the format <plugin>_<tool>, e.g. slack_send_message');
71
138
  process.exit(1);
72
139
  }
140
+ if (tools.length === 0) {
141
+ console.log(pc.dim('No tools available (no plugins installed).'));
142
+ return;
143
+ }
144
+ console.log(pc.bold('Available tools:'));
145
+ for (const name of tools) {
146
+ console.log(` ${name}`);
147
+ }
148
+ console.log('');
149
+ console.log(pc.dim('Usage: opentabs config set tool.<name> enabled|disabled'));
150
+ };
151
+ const handleSetTool = async (key, value) => {
73
152
  const toolName = key.slice(TOOL_PREFIX.length);
74
153
  if (!toolName || !toolName.includes('_')) {
75
154
  console.error(pc.red(`Invalid tool name: ${toolName || '(empty)'}`));
76
155
  console.error('Tool names use the format <plugin>_<tool>, e.g. slack_send_message');
156
+ console.error(`Run ${pc.bold('opentabs config set tool.')} to list available tools.`);
77
157
  process.exit(1);
78
158
  }
79
159
  if (value !== 'enabled' && value !== 'disabled') {
@@ -81,13 +161,7 @@ const handleConfigSet = async (key, value) => {
81
161
  console.error('Value must be "enabled" or "disabled".');
82
162
  process.exit(1);
83
163
  }
84
- const configPath = getConfigPath();
85
- const config = await readConfig(configPath);
86
- if (!config) {
87
- console.error(pc.red(`No config found at ${configPath}`));
88
- console.error('Run opentabs start to auto-create config.');
89
- process.exit(1);
90
- }
164
+ const { config, configPath } = await loadConfig();
91
165
  if (!config.tools || typeof config.tools !== 'object' || Array.isArray(config.tools)) {
92
166
  config.tools = {};
93
167
  }
@@ -98,6 +172,198 @@ const handleConfigSet = async (key, value) => {
98
172
  const indicator = enabled ? pc.green('enabled') : pc.red('disabled');
99
173
  console.log(`${toolName}: ${indicator}`);
100
174
  };
175
+ const handleSetBrowserTool = async (key, value) => {
176
+ const toolName = key.slice(BROWSER_TOOL_PREFIX.length);
177
+ if (!toolName || (!toolName.startsWith('browser_') && !toolName.startsWith('extension_'))) {
178
+ console.error(pc.red(`Invalid browser tool name: ${toolName || '(empty)'}`));
179
+ console.error('Browser tool names start with "browser_" or "extension_", e.g. browser_execute_script');
180
+ process.exit(1);
181
+ }
182
+ if (value !== 'enabled' && value !== 'disabled') {
183
+ console.error(pc.red(`Invalid value: ${value}`));
184
+ console.error('Value must be "enabled" or "disabled".');
185
+ process.exit(1);
186
+ }
187
+ const { config, configPath } = await loadConfig();
188
+ if (!config.browserToolPolicy ||
189
+ typeof config.browserToolPolicy !== 'object' ||
190
+ Array.isArray(config.browserToolPolicy)) {
191
+ config.browserToolPolicy = {};
192
+ }
193
+ const policy = config.browserToolPolicy;
194
+ const enabled = value === 'enabled';
195
+ policy[toolName] = enabled;
196
+ await atomicWriteConfig(configPath, JSON.stringify(config, null, 2) + '\n');
197
+ const indicator = enabled ? pc.green('enabled') : pc.red('disabled');
198
+ console.log(`${toolName}: ${indicator}`);
199
+ };
200
+ const handleSetPort = async (value) => {
201
+ const port = Number(value);
202
+ if (!Number.isInteger(port) || port < 1 || port > 65535) {
203
+ console.error(pc.red(`Invalid port: ${value}`));
204
+ console.error('Port must be an integer between 1 and 65535.');
205
+ process.exit(1);
206
+ }
207
+ const { config, configPath } = await loadConfig();
208
+ config.port = port;
209
+ await atomicWriteConfig(configPath, JSON.stringify(config, null, 2) + '\n');
210
+ console.log(`port: ${pc.cyan(String(port))}`);
211
+ };
212
+ const handleSetLocalPluginsAdd = async (value) => {
213
+ const pluginPath = resolve(value);
214
+ const { config, configPath } = await loadConfig();
215
+ if (!Array.isArray(config.localPlugins)) {
216
+ config.localPlugins = [];
217
+ }
218
+ const plugins = config.localPlugins;
219
+ if (plugins.includes(pluginPath)) {
220
+ console.log(`${pc.dim('Already registered:')} ${pluginPath}`);
221
+ return;
222
+ }
223
+ plugins.push(pluginPath);
224
+ await atomicWriteConfig(configPath, JSON.stringify(config, null, 2) + '\n');
225
+ console.log(`${pc.green('Added:')} ${pluginPath}`);
226
+ };
227
+ const handleSetLocalPluginsRemove = async (value) => {
228
+ const pluginPath = resolve(value);
229
+ const { config, configPath } = await loadConfig();
230
+ if (!Array.isArray(config.localPlugins)) {
231
+ console.error(pc.red(`Path not found in localPlugins: ${pluginPath}`));
232
+ process.exit(1);
233
+ }
234
+ const plugins = config.localPlugins;
235
+ const index = plugins.indexOf(pluginPath);
236
+ if (index === -1) {
237
+ console.error(pc.red(`Path not found in localPlugins: ${pluginPath}`));
238
+ process.exit(1);
239
+ }
240
+ plugins.splice(index, 1);
241
+ await atomicWriteConfig(configPath, JSON.stringify(config, null, 2) + '\n');
242
+ console.log(`${pc.green('Removed:')} ${pluginPath}`);
243
+ };
244
+ const handleConfigSet = async (key, value) => {
245
+ if (key === TOOL_PREFIX) {
246
+ return handleListTools();
247
+ }
248
+ if (!value) {
249
+ console.error(pc.red('Missing value.'));
250
+ console.error(SUPPORTED_KEYS);
251
+ process.exit(1);
252
+ }
253
+ if (key.startsWith(TOOL_PREFIX)) {
254
+ return handleSetTool(key, value);
255
+ }
256
+ if (key.startsWith(BROWSER_TOOL_PREFIX)) {
257
+ return handleSetBrowserTool(key, value);
258
+ }
259
+ if (key === PORT_KEY) {
260
+ return handleSetPort(value);
261
+ }
262
+ if (key === LOCAL_PLUGINS_ADD) {
263
+ return handleSetLocalPluginsAdd(value);
264
+ }
265
+ if (key === LOCAL_PLUGINS_REMOVE) {
266
+ return handleSetLocalPluginsRemove(value);
267
+ }
268
+ console.error(pc.red(`Unknown config key: ${key}`));
269
+ console.error(SUPPORTED_KEYS);
270
+ process.exit(1);
271
+ };
272
+ const handleConfigReset = async (options) => {
273
+ const configPath = getConfigPath();
274
+ const configFile = Bun.file(configPath);
275
+ if (!(await configFile.exists())) {
276
+ console.log(`No config file found at ${configPath}`);
277
+ return;
278
+ }
279
+ if (!options.confirm) {
280
+ console.error(pc.yellow(`This will delete your config at ${configPath}.`));
281
+ console.error(pc.yellow('Your server secret will change on next start.'));
282
+ console.error('');
283
+ console.error(`Run with ${pc.bold('--confirm')} to proceed:`);
284
+ console.error(` opentabs config reset --confirm`);
285
+ process.exit(1);
286
+ }
287
+ await configFile.delete();
288
+ console.log('Config reset. Run opentabs start to regenerate.');
289
+ };
290
+ /** Generate a 256-bit cryptographic random secret as a 64-character hex string. */
291
+ const generateSecret = () => {
292
+ const bytes = new Uint8Array(32);
293
+ crypto.getRandomValues(bytes);
294
+ return Array.from(bytes, b => b.toString(16).padStart(2, '0')).join('');
295
+ };
296
+ /**
297
+ * Write auth.json to the managed extension directory so the Chrome extension
298
+ * can bootstrap the shared secret without an unauthenticated HTTP request.
299
+ * Matches the atomic write pattern: write to .tmp, chmod 0600, rename.
300
+ */
301
+ const writeAuthFile = async (secret, port) => {
302
+ const extensionDir = getExtensionDir();
303
+ await mkdir(extensionDir, { recursive: true });
304
+ const authPath = join(extensionDir, 'auth.json');
305
+ const tmpPath = authPath + '.tmp';
306
+ try {
307
+ await Bun.write(tmpPath, JSON.stringify({ secret, port }) + '\n');
308
+ await chmod(tmpPath, 0o600).catch((err) => {
309
+ console.warn(`Warning: Could not set file permissions on ${tmpPath}: ${err instanceof Error ? err.message : String(err)}. The auth file may be readable by other users.`);
310
+ });
311
+ await rename(tmpPath, authPath);
312
+ }
313
+ catch (err) {
314
+ await unlink(tmpPath).catch(() => { });
315
+ throw err;
316
+ }
317
+ };
318
+ const handleRotateSecret = async (options) => {
319
+ const { config, configPath } = await loadConfig();
320
+ const oldSecret = typeof config.secret === 'string' ? config.secret : null;
321
+ const newSecret = generateSecret();
322
+ // Update the secret in config
323
+ config.secret = newSecret;
324
+ await atomicWriteConfig(configPath, JSON.stringify(config, null, 2) + '\n');
325
+ // Determine port from config or default
326
+ const port = resolvePort(options);
327
+ // Write auth.json with the new secret
328
+ try {
329
+ await writeAuthFile(newSecret, port);
330
+ }
331
+ catch (err) {
332
+ console.warn(pc.yellow(`Warning: Could not write auth.json: ${err instanceof Error ? err.message : String(err)}`));
333
+ }
334
+ // Notify the running server using the OLD secret
335
+ if (oldSecret) {
336
+ try {
337
+ const res = await fetch(`http://localhost:${port}/reload`, {
338
+ method: 'POST',
339
+ headers: { Authorization: `Bearer ${oldSecret}` },
340
+ signal: AbortSignal.timeout(3_000),
341
+ });
342
+ if (res.ok) {
343
+ console.log(pc.green('Secret rotated successfully.'));
344
+ console.log('Restart the Chrome extension to reconnect.');
345
+ return;
346
+ }
347
+ console.log(pc.green('Secret rotated in config and auth.json.'));
348
+ console.log(pc.yellow(`Could not notify running server (HTTP ${res.status}).`));
349
+ console.log('Restart the MCP server and Chrome extension for changes to take effect.');
350
+ }
351
+ catch (err) {
352
+ console.log(pc.green('Secret rotated in config and auth.json.'));
353
+ if (isConnectionRefused(err)) {
354
+ console.log(pc.dim('MCP server is not running. Changes will take effect on next start.'));
355
+ }
356
+ else {
357
+ console.log(pc.yellow('Could not reach MCP server. Restart it for changes to take effect.'));
358
+ }
359
+ console.log('Restart the Chrome extension to reconnect.');
360
+ }
361
+ }
362
+ else {
363
+ console.log(pc.green('Secret rotated in config and auth.json.'));
364
+ console.log('Restart the MCP server and Chrome extension for changes to take effect.');
365
+ }
366
+ };
101
367
  const registerConfigCommand = (program) => {
102
368
  const configCmd = program
103
369
  .command('config')
@@ -106,12 +372,18 @@ const registerConfigCommand = (program) => {
106
372
  configCmd.help();
107
373
  });
108
374
  configCmd
109
- .command('set <key> <value>')
110
- .description('Set a config value (e.g. tool.slack_send_message enabled)')
375
+ .command('set <key> [value]')
376
+ .description('Set a config value')
111
377
  .addHelpText('after', `
112
378
  Examples:
379
+ $ opentabs config set tool. List available tools
113
380
  $ opentabs config set tool.slack_send_message disabled
114
- $ opentabs config set tool.slack_send_message enabled`)
381
+ $ opentabs config set tool.slack_send_message enabled
382
+ $ opentabs config set browser-tool.browser_execute_script disabled
383
+ $ opentabs config set browser-tool.browser_execute_script enabled
384
+ $ opentabs config set port 9515
385
+ $ opentabs config set localPlugins.add /path/to/plugin
386
+ $ opentabs config set localPlugins.remove /path/to/plugin`)
115
387
  .action((key, value) => handleConfigSet(key, value));
116
388
  configCmd
117
389
  .command('path')
@@ -129,6 +401,24 @@ Examples:
129
401
  $ opentabs config show
130
402
  $ opentabs config show --json`)
131
403
  .action((options) => handleConfigShow(options));
404
+ configCmd
405
+ .command('reset')
406
+ .description('Delete config file (server will regenerate on next start)')
407
+ .option('--confirm', 'Skip confirmation and delete immediately')
408
+ .addHelpText('after', `
409
+ Examples:
410
+ $ opentabs config reset --confirm`)
411
+ .action((options) => handleConfigReset(options));
412
+ configCmd
413
+ .command('rotate-secret')
414
+ .description('Rotate the shared authentication secret')
415
+ .addHelpText('after', `
416
+ Generates a new 256-bit random secret and writes it to config.json and auth.json.
417
+ If the MCP server is running, notifies it to reload the config.
418
+
419
+ Examples:
420
+ $ opentabs config rotate-secret`)
421
+ .action((_options, command) => handleRotateSecret(command.optsWithGlobals()));
132
422
  };
133
423
  export { registerConfigCommand };
134
424
  //# sourceMappingURL=config.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/commands/config.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/commands/config.ts"],"names":[],"mappings":"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"}
@@ -15,8 +15,14 @@ declare const checkConfigFile: () => Promise<{
15
15
  config: Record<string, unknown> | null;
16
16
  }>;
17
17
  declare const checkExtensionConnected: (data: Record<string, unknown> | null) => CheckResult;
18
+ declare const checkNpmPlugins: (data: Record<string, unknown> | null) => CheckResult[];
19
+ interface McpClientLocation {
20
+ name: string;
21
+ path: string;
22
+ }
23
+ declare const checkMcpClientConfig: (clients?: McpClientLocation[]) => Promise<CheckResult>;
18
24
  declare const checkPlugins: (config: Record<string, unknown> | null) => Promise<CheckResult[]>;
19
25
  declare const registerDoctorCommand: (program: Command) => void;
20
- export { checkBunVersion, checkConfigFile, checkExtensionConnected, checkPlugins, registerDoctorCommand };
26
+ export { checkBunVersion, checkConfigFile, checkExtensionConnected, checkMcpClientConfig, checkNpmPlugins, checkPlugins, registerDoctorCommand, };
21
27
  export type { CheckResult };
22
28
  //# sourceMappingURL=doctor.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"doctor.d.ts","sourceRoot":"","sources":["../../src/commands/doctor.ts"],"names":[],"mappings":"AAAA;;GAEG;AASH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAMzC,UAAU,WAAW;IACnB,KAAK,EAAE,MAAM,CAAC;IACd,EAAE,EAAE,OAAO,CAAC;IACZ,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,OAAO,CAAC;CAChB;AAkBD,QAAA,MAAM,eAAe,QAAO,WAM3B,CAAC;AAEF,QAAA,MAAM,eAAe,QAAa,OAAO,CAAC;IAAE,MAAM,EAAE,WAAW,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAA;CAAE,CAUxG,CAAC;AA2BF,QAAA,MAAM,uBAAuB,GAAI,MAAM,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,KAAG,WAYvE,CAAC;AAsDF,QAAA,MAAM,YAAY,GAAU,QAAQ,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,KAAG,OAAO,CAAC,WAAW,EAAE,CA0DzF,CAAC;AA8DF,QAAA,MAAM,qBAAqB,GAAI,SAAS,OAAO,KAAG,IAajD,CAAC;AAEF,OAAO,EAAE,eAAe,EAAE,eAAe,EAAE,uBAAuB,EAAE,YAAY,EAAE,qBAAqB,EAAE,CAAC;AAC1G,YAAY,EAAE,WAAW,EAAE,CAAC"}
1
+ {"version":3,"file":"doctor.d.ts","sourceRoot":"","sources":["../../src/commands/doctor.ts"],"names":[],"mappings":"AAAA;;GAEG;AASH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAMzC,UAAU,WAAW;IACnB,KAAK,EAAE,MAAM,CAAC;IACd,EAAE,EAAE,OAAO,CAAC;IACZ,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,OAAO,CAAC;CAChB;AAkBD,QAAA,MAAM,eAAe,QAAO,WAM3B,CAAC;AAEF,QAAA,MAAM,eAAe,QAAa,OAAO,CAAC;IAAE,MAAM,EAAE,WAAW,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAA;CAAE,CAoBxG,CAAC;AA2BF,QAAA,MAAM,uBAAuB,GAAI,MAAM,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,KAAG,WAYvE,CAAC;AAmEF,QAAA,MAAM,eAAe,GAAI,MAAM,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,KAAG,WAAW,EAiC1E,CAAC;AAEF,UAAU,iBAAiB;IACzB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;CACd;AAOD,QAAA,MAAM,oBAAoB,GACxB,UAAS,iBAAiB,EAAgC,KACzD,OAAO,CAAC,WAAW,CA0BrB,CAAC;AAEF,QAAA,MAAM,YAAY,GAAU,QAAQ,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,KAAG,OAAO,CAAC,WAAW,EAAE,CAoDzF,CAAC;AAoEF,QAAA,MAAM,qBAAqB,GAAI,SAAS,OAAO,KAAG,IAajD,CAAC;AAEF,OAAO,EACL,eAAe,EACf,eAAe,EACf,uBAAuB,EACvB,oBAAoB,EACpB,eAAe,EACf,YAAY,EACZ,qBAAqB,GACtB,CAAC;AACF,YAAY,EAAE,WAAW,EAAE,CAAC"}
@@ -32,9 +32,15 @@ const checkBunVersion = () => {
32
32
  };
33
33
  const checkConfigFile = async () => {
34
34
  const configPath = getConfigPath();
35
- const config = await readConfig(configPath);
36
- if (config) {
37
- return { result: pass('Config file', configPath), config };
35
+ const readResult = await readConfig(configPath);
36
+ if (readResult.config) {
37
+ return { result: pass('Config file', configPath), config: readResult.config };
38
+ }
39
+ if (readResult.error === 'invalid') {
40
+ return {
41
+ result: fail('Config file', `invalid at ${configPath}: ${readResult.message}`, 'Run opentabs config reset --confirm to delete and regenerate'),
42
+ config: null,
43
+ };
38
44
  }
39
45
  return {
40
46
  result: warn('Config file', `not found at ${configPath}`, 'Run opentabs start to auto-create config'),
@@ -107,6 +113,53 @@ const checkExtensionVersion = async (installedVersion) => {
107
113
  }
108
114
  return warn('Extension version', `v${installedVersion} (CLI is v${cliVersion})`, 'Restart opentabs start to update the extension');
109
115
  };
116
+ const checkNpmPlugins = (data) => {
117
+ if (!data) {
118
+ return [pass('npm plugins', 'requires running server to check')];
119
+ }
120
+ const pluginDetails = Array.isArray(data.pluginDetails) ? data.pluginDetails : [];
121
+ const failedPlugins = Array.isArray(data.failedPlugins) ? data.failedPlugins : [];
122
+ const npmPlugins = pluginDetails.filter(p => p.source === 'npm');
123
+ const results = [];
124
+ if (npmPlugins.length === 0 && failedPlugins.length === 0) {
125
+ results.push(pass('npm plugins', 'none discovered'));
126
+ return results;
127
+ }
128
+ for (const p of npmPlugins) {
129
+ const detail = `${p.displayName} — ${p.toolCount} tool${p.toolCount === 1 ? '' : 's'}, tab ${p.tabState}`;
130
+ results.push(pass(`npm plugin ${p.name}`, detail));
131
+ }
132
+ for (const f of failedPlugins) {
133
+ results.push(warn(`npm plugin ${f.path}`, `failed: ${f.error}`, 'Check plugin installation or rebuild with opentabs-plugin build'));
134
+ }
135
+ return results;
136
+ };
137
+ const defaultMcpClientLocations = () => [
138
+ { name: 'Claude Code', path: join(homedir(), '.claude', 'settings', 'mcp.json') },
139
+ { name: 'Cursor', path: join(process.cwd(), '.cursor', 'mcp.json') },
140
+ ];
141
+ const checkMcpClientConfig = async (clients = defaultMcpClientLocations()) => {
142
+ for (const client of clients) {
143
+ if (!existsSync(client.path))
144
+ continue;
145
+ try {
146
+ const content = await Bun.file(client.path).text();
147
+ const parsed = JSON.parse(content);
148
+ if (parsed !== null &&
149
+ typeof parsed === 'object' &&
150
+ 'mcpServers' in parsed &&
151
+ parsed.mcpServers !== null &&
152
+ typeof parsed.mcpServers === 'object' &&
153
+ 'opentabs' in parsed.mcpServers) {
154
+ return pass('MCP client config', `${client.name} (${client.path})`);
155
+ }
156
+ }
157
+ catch {
158
+ // File exists but isn't valid JSON — skip to next client
159
+ }
160
+ }
161
+ return warn('MCP client config', 'no MCP client configured for OpenTabs', 'Add an "opentabs" entry to ~/.claude/settings/mcp.json (Claude Code) or .cursor/mcp.json (Cursor)');
162
+ };
110
163
  const checkPlugins = async (config) => {
111
164
  if (!config) {
112
165
  return [warn('Plugins', 'no config to check', 'Create a config file first')];
@@ -114,9 +167,7 @@ const checkPlugins = async (config) => {
114
167
  const configPath = getConfigPath();
115
168
  const pluginPaths = getLocalPluginsFromConfig(config);
116
169
  if (pluginPaths.length === 0) {
117
- return [
118
- warn('Plugins', 'no local plugins configured', 'npm plugins are auto-discovered; local plugins are registered by opentabs-plugin build'),
119
- ];
170
+ return [pass('Local plugins', 'none configured (npm plugins are auto-discovered at startup)')];
120
171
  }
121
172
  const results = [];
122
173
  for (const pluginPath of pluginPaths) {
@@ -168,9 +219,13 @@ const handleDoctor = async (options) => {
168
219
  results.push(installedResult);
169
220
  // 6. Extension version matches CLI
170
221
  results.push(await checkExtensionVersion(versionFile));
171
- // 7. Plugin checks
222
+ // 7. MCP client config
223
+ results.push(await checkMcpClientConfig());
224
+ // 8. Local plugin checks
172
225
  const pluginResults = await checkPlugins(config);
173
226
  results.push(...pluginResults);
227
+ // 9. npm plugin health (from server /health data)
228
+ results.push(...checkNpmPlugins(healthData));
174
229
  // Print results
175
230
  console.log(pc.bold('OpenTabs Doctor'));
176
231
  console.log('');
@@ -210,5 +265,5 @@ Examples:
210
265
  $ opentabs doctor --port 3000`)
211
266
  .action((_options, command) => handleDoctor(command.optsWithGlobals()));
212
267
  };
213
- export { checkBunVersion, checkConfigFile, checkExtensionConnected, checkPlugins, registerDoctorCommand };
268
+ export { checkBunVersion, checkConfigFile, checkExtensionConnected, checkMcpClientConfig, checkNpmPlugins, checkPlugins, registerDoctorCommand, };
214
269
  //# sourceMappingURL=doctor.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"doctor.js","sourceRoot":"","sources":["../../src/commands/doctor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"doctor.js","sourceRoot":"","sources":["../../src/commands/doctor.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,4 @@
1
+ export { registerAuditCommand } from './audit.js';
1
2
  export { registerConfigCommand } from './config.js';
2
3
  export { registerDoctorCommand } from './doctor.js';
3
4
  export { registerLogsCommand } from './logs.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/commands/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AACpD,OAAO,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AACpD,OAAO,EAAE,mBAAmB,EAAE,MAAM,WAAW,CAAC;AAChD,OAAO,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAC;AAClD,OAAO,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AACpD,OAAO,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/commands/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAC;AAClD,OAAO,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AACpD,OAAO,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AACpD,OAAO,EAAE,mBAAmB,EAAE,MAAM,WAAW,CAAC;AAChD,OAAO,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAC;AAClD,OAAO,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AACpD,OAAO,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC"}
@@ -1,3 +1,4 @@
1
+ export { registerAuditCommand } from './audit.js';
1
2
  export { registerConfigCommand } from './config.js';
2
3
  export { registerDoctorCommand } from './doctor.js';
3
4
  export { registerLogsCommand } from './logs.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/commands/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AACpD,OAAO,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AACpD,OAAO,EAAE,mBAAmB,EAAE,MAAM,WAAW,CAAC;AAChD,OAAO,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAC;AAClD,OAAO,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AACpD,OAAO,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/commands/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAC;AAClD,OAAO,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AACpD,OAAO,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AACpD,OAAO,EAAE,mBAAmB,EAAE,MAAM,WAAW,CAAC;AAChD,OAAO,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAC;AAClD,OAAO,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AACpD,OAAO,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC"}