dodo-mcp 1.0.0 → 1.0.2

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.
@@ -8,7 +8,7 @@ import { createMcpHandler, McpServer } from '@modelcontextprotocol/server';
8
8
  import { toNodeHandler } from '@modelcontextprotocol/node';
9
9
  import { DodoError } from '../errors.js';
10
10
  import { ensureConfigDir, ipcSocketPath, resolveConfigDir, statePaths } from '../config/paths.js';
11
- import { validatePublicUrl } from '../config/globalConfig.js';
11
+ import { GlobalConfigSchema, loadGlobalConfig, validatePublicUrl } from '../config/globalConfig.js';
12
12
  import { loadOrCreateJwks, loadOrCreateCookieKeys } from '../auth/keys.js';
13
13
  import { buildProvider } from '../auth/provider.js';
14
14
  import { buildTokenVerifier } from '../auth/verifier.js';
@@ -25,6 +25,7 @@ import { attachOptionalServices } from './optionalServices.js';
25
25
  import { createWorkspaceHost } from './workspaceHost.js';
26
26
  import { startLocalConfig } from './localConfig.js';
27
27
  import { DODO_VERSION } from './version.js';
28
+ import { RemoteConfigGateway } from './remoteConfig.js';
28
29
  export { DODO_VERSION };
29
30
  /**
30
31
  * The HTTP entry (`dodo start`): OAuth AS + MCP resource server on
@@ -105,6 +106,13 @@ export async function startServer(opts) {
105
106
  resourceUrl = `${issuer}/mcp`;
106
107
  locked = false;
107
108
  }
109
+ if (opts.remoteConfig && !issuer) {
110
+ await ws0.shutdownServices();
111
+ installDb.close();
112
+ throw new DodoError('CONFLICT', 'dodo --web requires a configured public HTTPS origin', {
113
+ recovery: 'run dodo init --public-url https://your-host, then run dodo --web again',
114
+ });
115
+ }
108
116
  // ---- express app -------------------------------------------------------
109
117
  const app = express();
110
118
  app.disable('x-powered-by');
@@ -119,6 +127,13 @@ export async function startServer(opts) {
119
127
  if (issuer)
120
128
  originAllowlist.push(new URL(issuer).hostname);
121
129
  app.use(originValidation(originAllowlist));
130
+ // This router is inert (404) until the local owner explicitly opens a
131
+ // bounded lease. It is mounted before OAuth's provider callback so the
132
+ // temporary /config namespace can be reached through the same tunnel.
133
+ const remoteConfigGateway = issuer
134
+ ? new RemoteConfigGateway(issuer, opts.remoteConfigLeaseMs)
135
+ : undefined;
136
+ remoteConfigGateway?.mount(app);
122
137
  app.get('/healthz', (_req, res) => {
123
138
  res.setHeader('Cache-Control', 'no-store').json({ status: 'ok', name: 'dodo', version: DODO_VERSION, authConfigured: !locked, workspaceSelected });
124
139
  });
@@ -283,8 +298,46 @@ export async function startServer(opts) {
283
298
  }
284
299
  // ---- private IPC (per workspace) ---------------------------------------
285
300
  const transportInfo = () => ({ kind: 'http', port: actualPort, locked, publicUrl: issuer });
301
+ let remoteConfigReady = false;
302
+ const remoteConfigControl = remoteConfigGateway ? {
303
+ open: async (args) => {
304
+ if (!remoteConfigReady)
305
+ throw new DodoError('NOT_SUPPORTED', 'Remote Config requires the loopback Local Config server');
306
+ const keys = Object.keys(args);
307
+ if (keys.some(key => key !== 'tunnelToken')) {
308
+ throw new DodoError('INVALID_INPUT', 'Remote Config open request contains an unsupported field');
309
+ }
310
+ const token = args['tunnelToken'];
311
+ if (token !== undefined && typeof token !== 'string') {
312
+ throw new DodoError('INVALID_INPUT', 'temporary Tunnel token must be a string');
313
+ }
314
+ if (typeof token === 'string' && token.length > 0) {
315
+ if (!opts.tunnelRuntime)
316
+ throw new DodoError('NOT_SUPPORTED', 'this DODO process cannot own a Cloudflare Tunnel');
317
+ if (!opts.tunnelRuntime.status().running) {
318
+ const latest = loadGlobalConfig(paths.configFile);
319
+ if (!issuer || latest.publicUrl !== issuer) {
320
+ throw new DodoError('CONFLICT', 'restart DODO after configuring the public HTTPS origin before opening Remote Config');
321
+ }
322
+ const transient = GlobalConfigSchema.parse({ ...latest, tunnel: { ...latest.tunnel, mode: 'managed' } });
323
+ await opts.tunnelRuntime.start(transient, token);
324
+ }
325
+ }
326
+ return remoteConfigGateway.open();
327
+ },
328
+ close: () => remoteConfigGateway.close(),
329
+ status: () => ({
330
+ ...remoteConfigGateway.status(),
331
+ tunnel: opts.tunnelRuntime?.status() ?? { available: false, running: false, current: null, lastKnown: null },
332
+ }),
333
+ } : undefined;
286
334
  const resourcesFor = async (ws) => {
287
- return startOwnerControl(ws, createIpcDispatcher({ ws, transport: transportInfo(), requestStop: () => void shutdown() }));
335
+ return startOwnerControl(ws, createIpcDispatcher({
336
+ ws,
337
+ transport: transportInfo(),
338
+ requestStop: () => void shutdown(),
339
+ ...(remoteConfigControl ? { remoteConfig: remoteConfigControl } : {}),
340
+ }));
288
341
  };
289
342
  // A live process for the target root would be clobbered by our IPC bind
290
343
  // (startIpcServer removes an existing socket file): probe it first.
@@ -340,6 +393,7 @@ export async function startServer(opts) {
340
393
  installation.defaultReady = () => theHost.state() === 'ready';
341
394
  // ---- owner-only Local Config plane ------------------------------------
342
395
  let localConfig;
396
+ let initialRemoteConfig = null;
343
397
  try {
344
398
  if (opts.configPort !== undefined) {
345
399
  localConfig = await startLocalConfig(theHost, opts.configPort, {
@@ -351,6 +405,13 @@ export async function startServer(opts) {
351
405
  log,
352
406
  });
353
407
  installation.ai.settings.ports.push(Number(new URL(localConfig.url).port));
408
+ remoteConfigGateway?.attachLocal(localConfig.url);
409
+ remoteConfigReady = Boolean(remoteConfigGateway);
410
+ if (opts.remoteConfig)
411
+ initialRemoteConfig = remoteConfigGateway?.open(opts.remoteConfigLeaseMs) ?? null;
412
+ }
413
+ if (opts.remoteConfig && !initialRemoteConfig) {
414
+ throw new DodoError('NOT_SUPPORTED', 'Remote Config requires the loopback Local Config server');
354
415
  }
355
416
  }
356
417
  catch (err) {
@@ -375,6 +436,7 @@ export async function startServer(opts) {
375
436
  shutdownPromise = (async () => {
376
437
  try {
377
438
  await localConfig?.close();
439
+ remoteConfigGateway?.close();
378
440
  await closeHttp();
379
441
  await jobsClosed;
380
442
  await mcpHandlerClose?.();
@@ -405,6 +467,10 @@ export async function startServer(opts) {
405
467
  ];
406
468
  if (localConfig)
407
469
  log(`[dodo] Private config (expires in 8h): ${localConfig.url}`);
470
+ if (initialRemoteConfig) {
471
+ log(`[dodo] Remote Config (expires in 1h): ${initialRemoteConfig.url}`);
472
+ log(`[dodo] Remote Config pairing code (shown once): ${initialRemoteConfig.pairingCode}`);
473
+ }
408
474
  if (runMode)
409
475
  log(`[dodo] ${runMode}: trusted OS-user execution for this run; OAuth, client/path access and file guards remain required.`);
410
476
  if (!opts.quiet)
@@ -431,6 +497,8 @@ export async function startServer(opts) {
431
497
  return theHost.current().services;
432
498
  },
433
499
  configUrl: localConfig?.url ?? null,
500
+ remoteConfig: initialRemoteConfig,
501
+ remoteConfigStatus: () => remoteConfigGateway?.status() ?? null,
434
502
  host: theHost,
435
503
  get workspaceSelected() {
436
504
  return workspaceSelected;
@@ -1 +1 @@
1
- {"version":3,"file":"appServer.js","sourceRoot":"","sources":["../../src/server/appServer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"appServer.js","sourceRoot":"","sources":["../../src/server/appServer.ts"],"names":[],"mappings":"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"}
@@ -6,6 +6,8 @@
6
6
  (() => {
7
7
  const $ = (id) => document.getElementById(id);
8
8
  const TOKEN_KEY = 'dodo-config-token';
9
+ const REMOTE_CONFIG = location.pathname === '/config' || location.pathname.startsWith('/config/');
10
+ const API_PREFIX = REMOTE_CONFIG ? '/config' : '';
9
11
  const THEME_KEY = 'dodo-theme';
10
12
  const MODE_LABEL = { inspect: 'inspect', edit: 'edit', trusted: 'trusted' };
11
13
  const MODE_TEXT = {
@@ -16,12 +18,22 @@
16
18
 
17
19
  // ---- token (fragment → sessionStorage, fragment stripped from the URL) ----
18
20
  let token = '';
19
- if (location.hash.length > 1) {
21
+ if (!REMOTE_CONFIG && location.hash.length > 1) {
20
22
  token = location.hash.slice(1);
21
23
  try { sessionStorage.setItem(TOKEN_KEY, token); } catch (_e) { /* private mode */ }
22
24
  history.replaceState(null, '', location.pathname);
23
25
  } else {
24
- try { token = sessionStorage.getItem(TOKEN_KEY) || ''; } catch (_e) { token = ''; }
26
+ try { token = REMOTE_CONFIG ? '' : (sessionStorage.getItem(TOKEN_KEY) || ''); } catch (_e) { token = ''; }
27
+ if (REMOTE_CONFIG && location.hash) history.replaceState(null, '', location.pathname);
28
+ }
29
+ if (REMOTE_CONFIG) {
30
+ document.title = 'DODO Remote Config';
31
+ const subtitle = document.querySelector('.brand .sub');
32
+ if (subtitle) subtitle.textContent = 'Remote Config · เปิดชั่วคราวไม่เกิน 1 ชั่วโมง';
33
+ const configLabel = document.querySelector('#chip-config b');
34
+ if (configLabel) configLabel.textContent = 'Remote Config';
35
+ const footerLead = document.querySelector('.foot > span')?.firstChild;
36
+ if (footerLead) footerLead.nodeValue = 'DODO Remote Config · ผ่าน HTTPS tunnel · หมดอายุใน ';
25
37
  }
26
38
 
27
39
  // ---- theme: dark default, light, system; remembered per browser ----
@@ -99,11 +111,11 @@
99
111
  return context ? { 'x-dodo-workspace': context.workspaceId, 'x-dodo-epoch': context.epoch } : {};
100
112
  }
101
113
  async function api(path, body, context = workspaceContext()) {
102
- const headers = { Authorization: `Bearer ${token}`, ...context };
114
+ const headers = { ...(token ? { Authorization: `Bearer ${token}` } : {}), ...context };
103
115
  if (body !== undefined) Object.assign(headers, context, { 'Content-Type': 'application/json' });
104
116
  let res;
105
117
  try {
106
- res = await fetch(`/api/${path}`, { method: body !== undefined ? 'POST' : 'GET', headers, body: body !== undefined ? JSON.stringify(body) : undefined, credentials: 'omit', cache: 'no-store' });
118
+ res = await fetch(`${API_PREFIX}/api/${path}`, { method: body !== undefined ? 'POST' : 'GET', headers, body: body !== undefined ? JSON.stringify(body) : undefined, credentials: REMOTE_CONFIG ? 'same-origin' : 'omit', cache: 'no-store' });
107
119
  } catch (_e) {
108
120
  const err = new Error('ติดต่อ DODO ไม่ได้ — server อาจปิดอยู่ หรือกำลัง restart');
109
121
  err.status = 0;
@@ -112,7 +124,7 @@
112
124
  let data = null;
113
125
  try { data = await res.json(); } catch (_e) { data = null; }
114
126
  if (!res.ok) {
115
- const err = new Error((data && data.error) || `HTTP ${res.status}`);
127
+ const err = new Error((data && data.error) || (REMOTE_CONFIG && res.status === 404 ? 'Remote Config หมดอายุแล้ว — รัน dodo --web เพื่อเปิดใหม่' : `HTTP ${res.status}`));
116
128
  err.status = res.status;
117
129
  err.code = data && data.code;
118
130
  err.data = data;
@@ -172,7 +184,7 @@
172
184
  }
173
185
  function fmtRemaining(ms) {
174
186
  if (!Number.isFinite(ms) || ms <= 0) return 'หมดอายุแล้ว';
175
- const m = Math.floor(ms / 60000);
187
+ const m = Math.ceil(ms / 60000);
176
188
  const h = Math.floor(m / 60);
177
189
  return h > 0 ? `${h} ชม. ${m % 60} นาที` : `${m} นาที`;
178
190
  }
@@ -947,7 +959,7 @@
947
959
  });
948
960
  setInterval(() => { if (!document.hidden && !document.querySelector('.btn[aria-busy="true"]')) refresh(false); }, 30000);
949
961
 
950
- if (!token) {
962
+ if (!token && !REMOTE_CONFIG) {
951
963
  $('card-auth').hidden = false;
952
964
  for (const p of ['ws', 'projects', 'perm', 'conn', 'clients']) cardState(p, 'error', 'ต้องเปิดจากลิงก์ส่วนตัวใน terminal');
953
965
  setChip('chip-config', 'error', '✕', 'ไม่มี token');
@@ -6,6 +6,8 @@
6
6
  'use strict';
7
7
  (() => {
8
8
  const $ = id => document.getElementById(id);
9
+ const REMOTE_CONFIG = location.pathname === '/config' || location.pathname.startsWith('/config/');
10
+ const API_PREFIX = REMOTE_CONFIG ? '/config' : '';
9
11
  const UI = window.DodoUI || {};
10
12
  const alerts = () => (UI.alerts && UI.alerts.available() ? UI.alerts : null);
11
13
  const panel = $('workbench');
@@ -21,10 +23,11 @@
21
23
 
22
24
  const headers = (target = false) => {
23
25
  const c = target ? selected : state?.controlContext;
24
- return { Authorization: `Bearer ${sessionStorage.getItem('dodo-config-token') || ''}`, 'Content-Type':'application/json', ...(c ? { 'x-dodo-workspace':c.workspaceId, 'x-dodo-epoch':c.workspaceEpoch } : {}) };
26
+ const token = REMOTE_CONFIG ? '' : (sessionStorage.getItem('dodo-config-token') || '');
27
+ return { ...(token ? { Authorization: `Bearer ${token}` } : {}), 'Content-Type':'application/json', ...(c ? { 'x-dodo-workspace':c.workspaceId, 'x-dodo-epoch':c.workspaceEpoch } : {}) };
25
28
  };
26
29
  async function api(path, body, target = false) {
27
- const response = await fetch(`/api/${path}`, { method:body === undefined ? 'GET':'POST', headers:headers(target), ...(body !== undefined ? { body:JSON.stringify(body) } : {}), cache:'no-store', credentials:'omit' });
30
+ const response = await fetch(`${API_PREFIX}/api/${path}`, { method:body === undefined ? 'GET':'POST', headers:headers(target), ...(body !== undefined ? { body:JSON.stringify(body) } : {}), cache:'no-store', credentials:REMOTE_CONFIG?'same-origin':'omit' });
28
31
  const result = await response.json(); if (!response.ok || result.ok === false) throw new Error(result.error || `HTTP ${response.status}`); return result.data ?? result;
29
32
  }
30
33
  function notice(text, error = false) {
@@ -318,7 +321,7 @@
318
321
  void (async()=>{
319
322
  while(!signal.aborted && failures<5){
320
323
  try {
321
- const res=await fetch(`/api/ai/runs/${encodeURIComponent(id)}/events?after=${cursor}`,{headers:headers(),signal,cache:'no-store'});
324
+ const res=await fetch(`${API_PREFIX}/api/ai/runs/${encodeURIComponent(id)}/events?after=${cursor}`,{headers:headers(),signal,cache:'no-store',credentials:REMOTE_CONFIG?'same-origin':'omit'});
322
325
  if(!res.ok)throw new Error(`เปิด events ไม่สำเร็จ (${res.status})`);
323
326
  const reader=res.body.getReader(),decoder=new TextDecoder();let pending='';
324
327
  statusLine.textContent='เชื่อมต่อแล้ว · กำลังรับผลจริง';failures=0;
@@ -390,5 +393,5 @@
390
393
 
391
394
  let hasToken = false;
392
395
  try { hasToken = Boolean(sessionStorage.getItem('dodo-config-token')); } catch { hasToken = false; }
393
- if (hasToken) void show('overview');
396
+ if (hasToken || REMOTE_CONFIG) void show('overview');
394
397
  })();
@@ -33,6 +33,31 @@ export function createIpcDispatcher(ctx) {
33
33
  setTimeout(() => ctx.requestStop(), 50);
34
34
  return { stopping: true };
35
35
  }
36
+ case 'remoteConfig.open': {
37
+ if (!ctx.remoteConfig)
38
+ throw new Error('Remote Config requires a configured public HTTPS origin');
39
+ const result = await ctx.remoteConfig.open(args);
40
+ try {
41
+ store.audit({ principal: 'local-cli-owner', workspaceId, tool: 'local.remote-config.open', result: 'opened-one-hour-lease' });
42
+ }
43
+ catch (error) {
44
+ ctx.remoteConfig.close();
45
+ throw error;
46
+ }
47
+ return result;
48
+ }
49
+ case 'remoteConfig.close': {
50
+ if (!ctx.remoteConfig)
51
+ throw new Error('Remote Config is unavailable');
52
+ ctx.remoteConfig.close();
53
+ store.audit({ principal: 'local-cli-owner', workspaceId, tool: 'local.remote-config.close', result: 'closed' });
54
+ return { closed: true };
55
+ }
56
+ case 'remoteConfig.status': {
57
+ if (!ctx.remoteConfig)
58
+ return { active: false, paired: false, url: null, expiresAt: null };
59
+ return ctx.remoteConfig.status();
60
+ }
36
61
  case 'schedule.list': return services.schedules.list();
37
62
  case 'schedule.propose': return services.schedules.propose(args);
38
63
  case 'schedule.show': return services.schedules.inspect(String(args['id']));
@@ -1 +1 @@
1
- {"version":3,"file":"ipcDispatch.js","sourceRoot":"","sources":["../../src/server/ipcDispatch.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ipcDispatch.js","sourceRoot":"","sources":["../../src/server/ipcDispatch.ts"],"names":[],"mappings":"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"}