@agent-deck/backend 1.6.2 → 1.6.4

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 (82) hide show
  1. package/dist/.tsbuildinfo +1 -1
  2. package/dist/export-import/sanitize-for-export.d.ts +9 -0
  3. package/dist/export-import/sanitize-for-export.d.ts.map +1 -1
  4. package/dist/export-import/sanitize-for-export.js +21 -0
  5. package/dist/export-import/sanitize-for-export.js.map +1 -1
  6. package/dist/lib/client-scope.d.ts.map +1 -1
  7. package/dist/lib/client-scope.js +3 -20
  8. package/dist/lib/client-scope.js.map +1 -1
  9. package/dist/mcp-server.d.ts +7 -0
  10. package/dist/mcp-server.d.ts.map +1 -1
  11. package/dist/mcp-server.js +33 -7
  12. package/dist/mcp-server.js.map +1 -1
  13. package/dist/routes/decks.d.ts.map +1 -1
  14. package/dist/routes/decks.js +27 -3
  15. package/dist/routes/decks.js.map +1 -1
  16. package/dist/routes/oauth.d.ts.map +1 -1
  17. package/dist/routes/oauth.js +16 -5
  18. package/dist/routes/oauth.js.map +1 -1
  19. package/dist/routes/scope.d.ts.map +1 -1
  20. package/dist/routes/scope.js +2 -1
  21. package/dist/routes/scope.js.map +1 -1
  22. package/dist/routes/services.d.ts.map +1 -1
  23. package/dist/routes/services.js +14 -7
  24. package/dist/routes/services.js.map +1 -1
  25. package/dist/scope/live-display-registry.d.ts +2 -1
  26. package/dist/scope/live-display-registry.d.ts.map +1 -1
  27. package/dist/scope/live-display-registry.js +3 -1
  28. package/dist/scope/live-display-registry.js.map +1 -1
  29. package/dist/server/index.d.ts +2 -1
  30. package/dist/server/index.d.ts.map +1 -1
  31. package/dist/server/index.js +5 -2
  32. package/dist/server/index.js.map +1 -1
  33. package/dist/services/collection-warning-service.d.ts +3 -0
  34. package/dist/services/collection-warning-service.d.ts.map +1 -1
  35. package/dist/services/collection-warning-service.js +24 -1
  36. package/dist/services/collection-warning-service.js.map +1 -1
  37. package/dist/services/oauth-manager.d.ts +2 -0
  38. package/dist/services/oauth-manager.d.ts.map +1 -1
  39. package/dist/services/oauth-manager.js +12 -0
  40. package/dist/services/oauth-manager.js.map +1 -1
  41. package/dist/services/service-manager.d.ts +21 -1
  42. package/dist/services/service-manager.d.ts.map +1 -1
  43. package/dist/services/service-manager.js +95 -10
  44. package/dist/services/service-manager.js.map +1 -1
  45. package/dist/vault/index.d.ts +1 -0
  46. package/dist/vault/index.d.ts.map +1 -1
  47. package/dist/vault/index.js +1 -0
  48. package/dist/vault/index.js.map +1 -1
  49. package/dist/vault/service-header-vault.d.ts +16 -0
  50. package/dist/vault/service-header-vault.d.ts.map +1 -0
  51. package/dist/vault/service-header-vault.js +54 -0
  52. package/dist/vault/service-header-vault.js.map +1 -0
  53. package/package.json +4 -4
  54. package/static-ui/assets/index-BG4SetCL.css +1 -0
  55. package/static-ui/assets/index-BV17LsZJ.js +485 -0
  56. package/static-ui/index.html +2 -2
  57. package/dist/mcp-stdio.d.ts +0 -2
  58. package/dist/mcp-stdio.d.ts.map +0 -1
  59. package/dist/mcp-stdio.js.map +0 -1
  60. package/dist/playbooks/playbook-parser.d.ts +0 -8
  61. package/dist/playbooks/playbook-parser.d.ts.map +0 -1
  62. package/dist/playbooks/playbook-parser.js +0 -76
  63. package/dist/playbooks/playbook-parser.js.map +0 -1
  64. package/dist/playbooks/playbook-service.d.ts +0 -9
  65. package/dist/playbooks/playbook-service.d.ts.map +0 -1
  66. package/dist/playbooks/playbook-service.js +0 -107
  67. package/dist/playbooks/playbook-service.js.map +0 -1
  68. package/dist/scope/bindings-sidecar.d.ts +0 -9
  69. package/dist/scope/bindings-sidecar.d.ts.map +0 -1
  70. package/dist/scope/bindings-sidecar.js +0 -57
  71. package/dist/scope/bindings-sidecar.js.map +0 -1
  72. package/dist/scope/repo-deck.d.ts +0 -10
  73. package/dist/scope/repo-deck.d.ts.map +0 -1
  74. package/dist/scope/repo-deck.js +0 -63
  75. package/dist/scope/repo-deck.js.map +0 -1
  76. package/dist/test-local-mcp-e2e.d.ts +0 -3
  77. package/dist/test-local-mcp-e2e.d.ts.map +0 -1
  78. package/dist/test-local-mcp-e2e.js +0 -104
  79. package/dist/test-local-mcp-e2e.js.map +0 -1
  80. package/static-ui/assets/index-C5IxoxXU.js +0 -485
  81. package/static-ui/assets/index-D2xN_rHi.css +0 -1
  82. package/static-ui/favicon.png +0 -0
@@ -40,6 +40,7 @@ const icon_resolver_1 = require("./icon-resolver");
40
40
  const mcp_connection_error_1 = require("../lib/mcp-connection-error");
41
41
  const normalize_service_tool_result_1 = require("../lib/normalize-service-tool-result");
42
42
  const service_codec_1 = require("../store/service-codec");
43
+ const sanitize_for_export_1 = require("../export-import/sanitize-for-export");
43
44
  class ServiceManager {
44
45
  db;
45
46
  mcpClient;
@@ -47,16 +48,48 @@ class ServiceManager {
47
48
  clientSecrets;
48
49
  credentialManager;
49
50
  storeWriter;
51
+ headerVault;
50
52
  configManager;
51
- constructor(db, mcpClient, oauthManager, clientSecrets, credentialManager, storeWriter) {
53
+ constructor(db, mcpClient, oauthManager, clientSecrets, credentialManager, storeWriter, headerVault) {
52
54
  this.db = db;
53
55
  this.mcpClient = mcpClient;
54
56
  this.oauthManager = oauthManager;
55
57
  this.clientSecrets = clientSecrets;
56
58
  this.credentialManager = credentialManager;
57
59
  this.storeWriter = storeWriter;
60
+ this.headerVault = headerVault;
58
61
  this.configManager = new config_manager_1.ConfigManager();
59
62
  }
63
+ /**
64
+ * Overlay a service's secret headers (Authorization / API keys) from the vault
65
+ * onto its non-secret headers. Secrets live only in the vault, never in SQLite
66
+ * or the git store, so reads must re-merge them for the dashboard + connections.
67
+ */
68
+ async withVaultHeaders(service) {
69
+ if (!this.headerVault) {
70
+ return service;
71
+ }
72
+ const secret = await this.headerVault.get(service.id);
73
+ if (!secret) {
74
+ return service;
75
+ }
76
+ return { ...service, headers: { ...(service.headers ?? {}), ...secret } };
77
+ }
78
+ /**
79
+ * Persist a header update: secret headers go to the vault (kept out of SQLite +
80
+ * git), non-secret headers stay on the row. Returns the headers to write to the
81
+ * DB row. No-op passthrough when no vault is configured (legacy path).
82
+ */
83
+ async persistSecretHeaders(serviceId, headers) {
84
+ if (!this.headerVault || headers === undefined) {
85
+ return headers;
86
+ }
87
+ const { secret, nonSecret } = (0, sanitize_for_export_1.splitSecretHeaders)(headers);
88
+ await this.headerVault.set(serviceId, secret);
89
+ // Normalize empty to undefined so the row stores null — matching createService,
90
+ // so "only-secret headers" doesn't write "{}" and dirty the git-synced store.
91
+ return Object.keys(nonSecret).length > 0 ? nonSecret : undefined;
92
+ }
60
93
  async writeToStore(service) {
61
94
  if (!this.storeWriter) {
62
95
  return;
@@ -93,8 +126,19 @@ class ServiceManager {
93
126
  if (nameConflict) {
94
127
  throw new Error(`Service with name "${validatedInput.name}" already exists`);
95
128
  }
129
+ // Hold secret headers back from the DB row; they belong in the vault.
130
+ let secretHeaders = {};
131
+ if (this.headerVault && validatedInput.headers !== undefined) {
132
+ const split = (0, sanitize_for_export_1.splitSecretHeaders)(validatedInput.headers);
133
+ secretHeaders = split.secret;
134
+ validatedInput.headers =
135
+ Object.keys(split.nonSecret).length > 0 ? split.nonSecret : undefined;
136
+ }
96
137
  // Create service in database
97
138
  const service = await this.db.createService(validatedInput);
139
+ if (this.headerVault && Object.keys(secretHeaders).length > 0) {
140
+ await this.headerVault.set(service.id, secretHeaders);
141
+ }
98
142
  // Try to discover OAuth configuration if it's an MCP service
99
143
  if (service.type === 'mcp' && !service.oauthClientId) {
100
144
  try {
@@ -122,7 +166,33 @@ class ServiceManager {
122
166
  });
123
167
  void this.probeInitialHealth(service.id);
124
168
  await this.writeToStore((await this.db.getService(service.id)) ?? service);
125
- return service;
169
+ // Merge the just-vaulted secret headers back so the 201 body matches get/update.
170
+ return this.withVaultHeaders(service);
171
+ }
172
+ /**
173
+ * One-shot upgrade: move secret headers still sitting in the SQLite row into the
174
+ * vault, so a future store reindex can't wipe survivors that predate this feature.
175
+ * Idempotent — after it runs, rows carry only non-secret headers.
176
+ */
177
+ async migrateSecretHeadersToVault() {
178
+ if (!this.headerVault) {
179
+ return;
180
+ }
181
+ for (const service of await this.db.getAllServices()) {
182
+ if (!service.headers) {
183
+ continue;
184
+ }
185
+ const { secret, nonSecret } = (0, sanitize_for_export_1.splitSecretHeaders)(service.headers);
186
+ if (Object.keys(secret).length === 0) {
187
+ continue;
188
+ }
189
+ // A value already in the vault is newer than the legacy row — keep it.
190
+ const existing = (await this.headerVault.get(service.id)) ?? {};
191
+ await this.headerVault.set(service.id, { ...secret, ...existing });
192
+ await this.db.updateService(service.id, {
193
+ headers: Object.keys(nonSecret).length > 0 ? nonSecret : undefined,
194
+ });
195
+ }
126
196
  }
127
197
  probeInitialHealth(serviceId) {
128
198
  void this.discoverServiceTools(serviceId).catch((error) => {
@@ -178,15 +248,16 @@ class ServiceManager {
178
248
  return null;
179
249
  }
180
250
  if (!this.shouldResolveIcon(service)) {
181
- return service;
251
+ return this.withVaultHeaders(service);
182
252
  }
183
253
  const result = await (0, icon_resolver_1.cacheIconForService)(serviceId, service.url);
184
254
  if (!result.iconPath) {
185
- return service;
255
+ return this.withVaultHeaders(service);
186
256
  }
187
- return await this.db.updateService(serviceId, {
257
+ const updated = await this.db.updateService(serviceId, {
188
258
  iconUrl: (0, icon_resolver_1.serviceIconApiPath)(serviceId),
189
259
  });
260
+ return updated ? this.withVaultHeaders(updated) : null;
190
261
  }
191
262
  shouldResolveIcon(service) {
192
263
  return service.type !== 'local-mcp' && !service.url.startsWith('local://');
@@ -211,33 +282,38 @@ class ServiceManager {
211
282
  })));
212
283
  }
213
284
  async getService(id) {
214
- return await this.db.getService(id);
285
+ const service = await this.db.getService(id);
286
+ return service ? this.withVaultHeaders(service) : null;
215
287
  }
216
288
  async getAllServices() {
217
289
  const services = await this.db.getAllServices();
218
290
  return Promise.all(services.map(async (service) => {
219
291
  if (!this.shouldResolveIcon(service)) {
220
- return service;
292
+ return this.withVaultHeaders(service);
221
293
  }
222
294
  const missingIconUrl = !service.iconUrl;
223
295
  const missingCacheFile = service.iconUrl && !(await (0, icon_resolver_1.serviceIconFileExists)(service.id));
224
296
  if (missingIconUrl || missingCacheFile) {
225
297
  const updated = await this.refreshServiceIcon(service.id);
226
- return updated ?? service;
298
+ return this.withVaultHeaders(updated ?? service);
227
299
  }
228
- return service;
300
+ return this.withVaultHeaders(service);
229
301
  }));
230
302
  }
231
303
  async updateService(id, input) {
232
304
  // Validate input
233
305
  const validatedInput = shared_1.UpdateServiceSchema.parse(input);
306
+ const headersUpdated = validatedInput.headers !== undefined;
307
+ // Route secret headers to the vault; only non-secret headers reach the row.
308
+ validatedInput.headers = await this.persistSecretHeaders(id, validatedInput.headers);
234
309
  const service = await this.db.updateService(id, validatedInput);
235
310
  if (service) {
236
311
  await this.writeToStore(service);
237
312
  // Header auth changes must drop the cached transport (old Authorization).
238
- if (validatedInput.headers !== undefined && service.type === 'mcp') {
313
+ if (headersUpdated && service.type === 'mcp') {
239
314
  this.mcpClient.invalidateClient(id);
240
315
  }
316
+ return this.withVaultHeaders(service);
241
317
  }
242
318
  return service;
243
319
  }
@@ -265,6 +341,7 @@ class ServiceManager {
265
341
  const deleted = await this.db.deleteService(id);
266
342
  if (deleted) {
267
343
  await this.deleteFromStore(id);
344
+ await this.headerVault?.delete(id);
268
345
  }
269
346
  return deleted;
270
347
  }
@@ -272,6 +349,13 @@ class ServiceManager {
272
349
  const headers = typeof service.headers === 'string'
273
350
  ? JSON.parse(service.headers)
274
351
  : { ...(service.headers ?? {}) };
352
+ // Secret headers live in the vault, not on the row — merge them for the call.
353
+ if (this.headerVault) {
354
+ const secret = await this.headerVault.get(service.id);
355
+ if (secret) {
356
+ Object.assign(headers, secret);
357
+ }
358
+ }
275
359
  if (service.credentialId && this.credentialManager) {
276
360
  const credentialHeaders = await this.credentialManager.resolveHttpHeaders(service.credentialId);
277
361
  Object.assign(headers, credentialHeaders);
@@ -329,6 +413,7 @@ class ServiceManager {
329
413
  }
330
414
  if (updated) {
331
415
  await this.writeToStore(updated);
416
+ return this.withVaultHeaders(updated);
332
417
  }
333
418
  return updated;
334
419
  }
@@ -1 +1 @@
1
- {"version":3,"file":"service-manager.js","sourceRoot":"","sources":["../../src/services/service-manager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"service-manager.js","sourceRoot":"","sources":["../../src/services/service-manager.ts"],"names":[],"mappings":"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"}
@@ -3,4 +3,5 @@ export * from './yaml-sync';
3
3
  export * from './credential-manager';
4
4
  export * from './oauth-client-secret-vault';
5
5
  export * from './oauth-token-vault';
6
+ export * from './service-header-vault';
6
7
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/vault/index.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAC;AAC/B,cAAc,aAAa,CAAC;AAC5B,cAAc,sBAAsB,CAAC;AACrC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,qBAAqB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/vault/index.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAC;AAC/B,cAAc,aAAa,CAAC;AAC5B,cAAc,sBAAsB,CAAC;AACrC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,qBAAqB,CAAC;AACpC,cAAc,wBAAwB,CAAC"}
@@ -19,4 +19,5 @@ __exportStar(require("./yaml-sync"), exports);
19
19
  __exportStar(require("./credential-manager"), exports);
20
20
  __exportStar(require("./oauth-client-secret-vault"), exports);
21
21
  __exportStar(require("./oauth-token-vault"), exports);
22
+ __exportStar(require("./service-header-vault"), exports);
22
23
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/vault/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,iDAA+B;AAC/B,8CAA4B;AAC5B,uDAAqC;AACrC,8DAA4C;AAC5C,sDAAoC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/vault/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,iDAA+B;AAC/B,8CAA4B;AAC5B,uDAAqC;AACrC,8DAA4C;AAC5C,sDAAoC;AACpC,yDAAuC"}
@@ -0,0 +1,16 @@
1
+ import type { SecretStore } from './secret-store';
2
+ export declare function serviceHeaderAccount(serviceId: string): string;
3
+ /**
4
+ * Secret custom headers (Authorization / API keys) for MCP service cards.
5
+ * Kept in the local SecretStore (Keychain), never in SQLite or the git-synced
6
+ * file store — mirrors {@link OAuthTokenVault}. This is what lets a user's Bearer
7
+ * token survive a store reindex/restart without ever being committed to git.
8
+ */
9
+ export declare class ServiceHeaderVault {
10
+ private secretStore;
11
+ constructor(secretStore: SecretStore);
12
+ get(serviceId: string): Promise<Record<string, string> | null>;
13
+ set(serviceId: string, headers: Record<string, string>): Promise<void>;
14
+ delete(serviceId: string): Promise<void>;
15
+ }
16
+ //# sourceMappingURL=service-header-vault.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"service-header-vault.d.ts","sourceRoot":"","sources":["../../src/vault/service-header-vault.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAElD,wBAAgB,oBAAoB,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,CAE9D;AAoBD;;;;;GAKG;AACH,qBAAa,kBAAkB;IACjB,OAAO,CAAC,WAAW;gBAAX,WAAW,EAAE,WAAW;IAEtC,GAAG,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,IAAI,CAAC;IAK9D,GAAG,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IActE,MAAM,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;CAG/C"}
@@ -0,0 +1,54 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ServiceHeaderVault = void 0;
4
+ exports.serviceHeaderAccount = serviceHeaderAccount;
5
+ function serviceHeaderAccount(serviceId) {
6
+ return `custom-headers:${serviceId}`;
7
+ }
8
+ function parseHeaders(raw) {
9
+ try {
10
+ const parsed = JSON.parse(raw);
11
+ if (!parsed || typeof parsed !== 'object' || Array.isArray(parsed)) {
12
+ return null;
13
+ }
14
+ const next = {};
15
+ for (const [key, value] of Object.entries(parsed)) {
16
+ if (typeof value === 'string') {
17
+ next[key] = value;
18
+ }
19
+ }
20
+ return Object.keys(next).length > 0 ? next : null;
21
+ }
22
+ catch {
23
+ return null;
24
+ }
25
+ }
26
+ /**
27
+ * Secret custom headers (Authorization / API keys) for MCP service cards.
28
+ * Kept in the local SecretStore (Keychain), never in SQLite or the git-synced
29
+ * file store — mirrors {@link OAuthTokenVault}. This is what lets a user's Bearer
30
+ * token survive a store reindex/restart without ever being committed to git.
31
+ */
32
+ class ServiceHeaderVault {
33
+ secretStore;
34
+ constructor(secretStore) {
35
+ this.secretStore = secretStore;
36
+ }
37
+ async get(serviceId) {
38
+ const stored = await this.secretStore.get(serviceHeaderAccount(serviceId));
39
+ return stored ? parseHeaders(stored) : null;
40
+ }
41
+ async set(serviceId, headers) {
42
+ const entries = Object.entries(headers).filter(([, value]) => typeof value === 'string' && value.length > 0);
43
+ if (entries.length === 0) {
44
+ await this.delete(serviceId);
45
+ return;
46
+ }
47
+ await this.secretStore.set(serviceHeaderAccount(serviceId), JSON.stringify(Object.fromEntries(entries)));
48
+ }
49
+ async delete(serviceId) {
50
+ await this.secretStore.delete(serviceHeaderAccount(serviceId));
51
+ }
52
+ }
53
+ exports.ServiceHeaderVault = ServiceHeaderVault;
54
+ //# sourceMappingURL=service-header-vault.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"service-header-vault.js","sourceRoot":"","sources":["../../src/vault/service-header-vault.ts"],"names":[],"mappings":";;;AAEA,oDAEC;AAFD,SAAgB,oBAAoB,CAAC,SAAiB;IACpD,OAAO,kBAAkB,SAAS,EAAE,CAAC;AACvC,CAAC;AAED,SAAS,YAAY,CAAC,GAAW;IAC/B,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAA4B,CAAC;QAC1D,IAAI,CAAC,MAAM,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;YACnE,OAAO,IAAI,CAAC;QACd,CAAC;QACD,MAAM,IAAI,GAA2B,EAAE,CAAC;QACxC,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;YAClD,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;gBAC9B,IAAI,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;YACpB,CAAC;QACH,CAAC;QACD,OAAO,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC;IACpD,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAED;;;;;GAKG;AACH,MAAa,kBAAkB;IACT;IAApB,YAAoB,WAAwB;QAAxB,gBAAW,GAAX,WAAW,CAAa;IAAG,CAAC;IAEhD,KAAK,CAAC,GAAG,CAAC,SAAiB;QACzB,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,oBAAoB,CAAC,SAAS,CAAC,CAAC,CAAC;QAC3E,OAAO,MAAM,CAAC,CAAC,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IAC9C,CAAC;IAED,KAAK,CAAC,GAAG,CAAC,SAAiB,EAAE,OAA+B;QAC1D,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,MAAM,CAC5C,CAAC,CAAC,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,CAC7D,CAAC;QACF,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACzB,MAAM,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;YAC7B,OAAO;QACT,CAAC;QACD,MAAM,IAAI,CAAC,WAAW,CAAC,GAAG,CACxB,oBAAoB,CAAC,SAAS,CAAC,EAC/B,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,CAC5C,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,SAAiB;QAC5B,MAAM,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,oBAAoB,CAAC,SAAS,CAAC,CAAC,CAAC;IACjE,CAAC;CACF;AAzBD,gDAyBC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@agent-deck/backend",
3
- "version": "1.6.2",
3
+ "version": "1.6.4",
4
4
  "description": "Agent Deck backend API, MCP server, and vault",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -46,15 +46,15 @@
46
46
  "prepublishOnly": "node ../../scripts/pre-publish-check.mjs && npm run build"
47
47
  },
48
48
  "dependencies": {
49
- "@agent-deck/shared": "^1.6.2",
49
+ "@agent-deck/shared": "^1.6.4",
50
50
  "@fastify/cors": "^10.0.0",
51
51
  "@fastify/static": "^8.0.0",
52
52
  "@fastify/websocket": "^11.2.0",
53
53
  "@modelcontextprotocol/sdk": "^1.29.0",
54
54
  "better-sqlite3": "^12.11.1",
55
- "dotenv": "^17.2.1",
55
+ "dotenv": "^17.4.2",
56
56
  "express": "^4.19.2",
57
- "fastify": "^5.0.0",
57
+ "fastify": "^5.11.0",
58
58
  "gray-matter": "^4.0.3",
59
59
  "openid-client": "^6.6.4",
60
60
  "use-mcp": "^0.0.21",