theokit 0.59.0 → 0.60.0
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/{actions-virtual-module-L6SCJLDI.js → actions-virtual-module-DNOALUTX.js} +5 -5
- package/dist/{actions-virtual-module-YQBEDNHN.js → actions-virtual-module-UE5H42GP.js} +4 -4
- package/dist/adapters/agent-mount.d.ts +1 -1
- package/dist/adapters/agent-mount.js +2 -2
- package/dist/adapters/security-headers.d.ts +2 -2
- package/dist/adapters/security-headers.js +1 -1
- package/dist/{agent-X7RDENTI.js → agent-VWPSEDXD.js} +3 -3
- package/dist/{app-typed-client-BE4LZPK2.js → app-typed-client-4KLNKET6.js} +4 -4
- package/dist/{app-typed-client-F3YLMV4N.js → app-typed-client-MKTSLES3.js} +5 -5
- package/dist/{aws-lambda-VKMYUMP2.js → aws-lambda-2R77AV5F.js} +3 -3
- package/dist/{build-H2UDKBV7.js → build-RG54DH3F.js} +5 -5
- package/dist/{bun-POLTY2HK.js → bun-MAAG4MKW.js} +3 -3
- package/dist/{chunk-CF2DNN5R.js → chunk-45XETXSG.js} +10 -2
- package/dist/chunk-45XETXSG.js.map +1 -0
- package/dist/{chunk-IRQGAC4L.js → chunk-5GZROLDV.js} +2 -2
- package/dist/{chunk-IRQGAC4L.js.map → chunk-5GZROLDV.js.map} +1 -1
- package/dist/{chunk-M357ILK5.js → chunk-DMODPX7P.js} +2 -2
- package/dist/{chunk-6YRZWT5X.js → chunk-ETKLM6UN.js} +9 -9
- package/dist/{chunk-BPYMC7SU.js → chunk-EYRWD2AB.js} +2 -2
- package/dist/{chunk-HA35FS7U.js → chunk-FFS7IRZF.js} +2 -2
- package/dist/{chunk-IF7CZXPW.js → chunk-GZ5YHD5H.js} +3 -3
- package/dist/{chunk-MWPC7EOR.js → chunk-IZTOGKLS.js} +5 -5
- package/dist/{chunk-YGL3H3UW.js → chunk-K3DUUEQ5.js} +31 -8
- package/dist/chunk-K3DUUEQ5.js.map +1 -0
- package/dist/{chunk-GO7UWJ47.js → chunk-KPZ2JSAU.js} +53 -26
- package/dist/chunk-KPZ2JSAU.js.map +1 -0
- package/dist/{chunk-IJER2SYS.js → chunk-OH32SN46.js} +20 -1
- package/dist/{chunk-IJER2SYS.js.map → chunk-OH32SN46.js.map} +1 -1
- package/dist/{chunk-4OTIXAUY.js → chunk-TMQ52AZR.js} +24 -1
- package/dist/chunk-TMQ52AZR.js.map +1 -0
- package/dist/{chunk-E43VJ3E5.js → chunk-VPX3MS5D.js} +2 -2
- package/dist/{chunk-RPET332G.js → chunk-VV2VU3LJ.js} +2 -2
- package/dist/chunk-VV2VU3LJ.js.map +1 -0
- package/dist/{chunk-35QIWOHT.js → chunk-WFIAYPBH.js} +10 -2
- package/dist/chunk-WFIAYPBH.js.map +1 -0
- package/dist/{chunk-VJRPOUKM.js → chunk-XES7ZE2K.js} +4 -4
- package/dist/cli/index.js +9 -9
- package/dist/{cloudflare-SIG42OIW.js → cloudflare-F5DNYH4B.js} +3 -3
- package/dist/{deno-deploy-LQAYOOPW.js → deno-deploy-47E7GIME.js} +3 -3
- package/dist/{dev-SJE2GSAC.js → dev-5ETOFKOP.js} +22 -17
- package/dist/dev-5ETOFKOP.js.map +1 -0
- package/dist/index.d.ts +7 -0
- package/dist/index.js +6 -5
- package/dist/index.js.map +1 -1
- package/dist/{info-6WJ3JRNE.js → info-2H7I55YN.js} +3 -3
- package/dist/{internal-api-W5RURFU7.js → internal-api-3YDGG5FF.js} +5 -5
- package/dist/{internal-api-4FBFRQ4G.js → internal-api-UM77XDXN.js} +4 -4
- package/dist/{load-config-BKUAMGO5.js → load-config-VMKOV44Y.js} +3 -3
- package/dist/{mcp-I5HCW4QF.js → mcp-B42ISIJG.js} +4 -4
- package/dist/{netlify-C2IRCZKI.js → netlify-BJQGPMGY.js} +3 -3
- package/dist/{openapi-WDX3XX2J.js → openapi-SKKXWFX4.js} +3 -3
- package/dist/{preview-PWGO5LUE.js → preview-XP77EPTL.js} +3 -3
- package/dist/{provider-resolver-VS61zqsw.d.ts → provider-resolver-1aWi_WSz.d.ts} +17 -0
- package/dist/{registry-3LUHO4IB.js → registry-APCN3PSJ.js} +7 -7
- package/dist/{routes-A2YLFEYC.js → routes-ECCDRHXZ.js} +3 -3
- package/dist/{schema-WKTNTGX6.js → schema-ND7GHPQK.js} +2 -2
- package/dist/{security-headers-Ccj7ncNx.d.ts → security-headers-C2cByfJn.d.ts} +5 -0
- package/dist/server/agent/index.d.ts +17 -2
- package/dist/server/agent/index.js +2 -2
- package/dist/server/index.d.ts +3 -3
- package/dist/server/index.js +10 -6
- package/dist/server/index.js.map +1 -1
- package/dist/server/security/index.d.ts +2 -2
- package/dist/server/security/index.js +2 -2
- package/dist/server/webhook/index.d.ts +9 -4
- package/dist/server/webhook/index.js +7 -3
- package/dist/{server-boundary-WVWEJNUJ.js → server-boundary-JG53VI6L.js} +5 -5
- package/dist/{server-boundary-CJIXOPCF.js → server-boundary-X52AMCKI.js} +4 -4
- package/dist/{start-KEWSYVVU.js → start-3FYIYTM7.js} +8 -8
- package/dist/{vercel-BMCQKCWE.js → vercel-BEDGUVXX.js} +3 -3
- package/dist/vite-plugin/index.js +5 -5
- package/dist/{vite-plugin-TU3HQA43.js → vite-plugin-BG5K3L46.js} +8 -8
- package/dist/whatsapp-D_Fnl1LX.d.ts +85 -0
- package/package.json +3 -3
- package/dist/chunk-35QIWOHT.js.map +0 -1
- package/dist/chunk-4OTIXAUY.js.map +0 -1
- package/dist/chunk-CF2DNN5R.js.map +0 -1
- package/dist/chunk-GO7UWJ47.js.map +0 -1
- package/dist/chunk-RPET332G.js.map +0 -1
- package/dist/chunk-YGL3H3UW.js.map +0 -1
- package/dist/dev-SJE2GSAC.js.map +0 -1
- package/dist/webhook-types-DGIjjcaI.d.ts +0 -43
- /package/dist/{actions-virtual-module-L6SCJLDI.js.map → actions-virtual-module-DNOALUTX.js.map} +0 -0
- /package/dist/{actions-virtual-module-YQBEDNHN.js.map → actions-virtual-module-UE5H42GP.js.map} +0 -0
- /package/dist/{agent-X7RDENTI.js.map → agent-VWPSEDXD.js.map} +0 -0
- /package/dist/{app-typed-client-BE4LZPK2.js.map → app-typed-client-4KLNKET6.js.map} +0 -0
- /package/dist/{app-typed-client-F3YLMV4N.js.map → app-typed-client-MKTSLES3.js.map} +0 -0
- /package/dist/{aws-lambda-VKMYUMP2.js.map → aws-lambda-2R77AV5F.js.map} +0 -0
- /package/dist/{build-H2UDKBV7.js.map → build-RG54DH3F.js.map} +0 -0
- /package/dist/{bun-POLTY2HK.js.map → bun-MAAG4MKW.js.map} +0 -0
- /package/dist/{chunk-M357ILK5.js.map → chunk-DMODPX7P.js.map} +0 -0
- /package/dist/{chunk-6YRZWT5X.js.map → chunk-ETKLM6UN.js.map} +0 -0
- /package/dist/{chunk-BPYMC7SU.js.map → chunk-EYRWD2AB.js.map} +0 -0
- /package/dist/{chunk-HA35FS7U.js.map → chunk-FFS7IRZF.js.map} +0 -0
- /package/dist/{chunk-IF7CZXPW.js.map → chunk-GZ5YHD5H.js.map} +0 -0
- /package/dist/{chunk-MWPC7EOR.js.map → chunk-IZTOGKLS.js.map} +0 -0
- /package/dist/{chunk-E43VJ3E5.js.map → chunk-VPX3MS5D.js.map} +0 -0
- /package/dist/{chunk-VJRPOUKM.js.map → chunk-XES7ZE2K.js.map} +0 -0
- /package/dist/{cloudflare-SIG42OIW.js.map → cloudflare-F5DNYH4B.js.map} +0 -0
- /package/dist/{deno-deploy-LQAYOOPW.js.map → deno-deploy-47E7GIME.js.map} +0 -0
- /package/dist/{info-6WJ3JRNE.js.map → info-2H7I55YN.js.map} +0 -0
- /package/dist/{internal-api-W5RURFU7.js.map → internal-api-3YDGG5FF.js.map} +0 -0
- /package/dist/{internal-api-4FBFRQ4G.js.map → internal-api-UM77XDXN.js.map} +0 -0
- /package/dist/{load-config-BKUAMGO5.js.map → load-config-VMKOV44Y.js.map} +0 -0
- /package/dist/{mcp-I5HCW4QF.js.map → mcp-B42ISIJG.js.map} +0 -0
- /package/dist/{netlify-C2IRCZKI.js.map → netlify-BJQGPMGY.js.map} +0 -0
- /package/dist/{openapi-WDX3XX2J.js.map → openapi-SKKXWFX4.js.map} +0 -0
- /package/dist/{preview-PWGO5LUE.js.map → preview-XP77EPTL.js.map} +0 -0
- /package/dist/{registry-3LUHO4IB.js.map → registry-APCN3PSJ.js.map} +0 -0
- /package/dist/{routes-A2YLFEYC.js.map → routes-ECCDRHXZ.js.map} +0 -0
- /package/dist/{schema-WKTNTGX6.js.map → schema-ND7GHPQK.js.map} +0 -0
- /package/dist/{server-boundary-WVWEJNUJ.js.map → server-boundary-JG53VI6L.js.map} +0 -0
- /package/dist/{server-boundary-CJIXOPCF.js.map → server-boundary-X52AMCKI.js.map} +0 -0
- /package/dist/{start-KEWSYVVU.js.map → start-3FYIYTM7.js.map} +0 -0
- /package/dist/{vercel-BMCQKCWE.js.map → vercel-BEDGUVXX.js.map} +0 -0
- /package/dist/{vite-plugin-TU3HQA43.js.map → vite-plugin-BG5K3L46.js.map} +0 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/vite-plugin/index.ts","../src/vite-plugin/config-hook.ts","../src/config/load-config.ts","../src/config/errors.ts","../src/config/schema.ts","../src/core/contracts/theo-ui-theme.ts","../src/config/resolve-plugin-specifiers.ts","../src/vite-plugin/theoui-detect.ts","../src/vite-plugin/config-resolve.ts","../src/vite-plugin/configure-server-hook.ts","../src/devtools/server-side/route-manifest.ts","../src/router/scan.ts","../src/router/types.ts","../src/vite-plugin/action-middleware.ts","../src/vite-plugin/agent-middleware.ts","../src/server/agent/agent-card-handler.ts","../src/server/agent/approve-agent.ts","../src/server/agent/handle-agent-run-reconnect.ts","../src/server/agent/thread-dispatcher.ts","../src/server/agent/thread-run-registry.ts","../src/server/agent/handle-thread-routes.ts","../src/server/agent/list-approvals-handler.ts","../src/server/agent/serve-aux-routes.ts","../src/server/http/plugin-lifecycle.ts","../src/server/http/resolve-agent-subject.ts","../src/vite-plugin/api-middleware.ts","../src/vite-plugin/ssr-dev-middleware.ts","../src/core/contracts/find-root-div.ts","../src/vite-plugin/hoist-head-tags.ts","../src/vite-plugin/ws-upgrade.ts","../src/vite-plugin/integrate-studio.ts","../src/vite-plugin/integrate-ui.ts","../src/vite-plugin/auto-detect.ts","../src/vite-plugin/transform-html-hook.ts","../src/vite-plugin/inject-devtools.ts","../src/vite-plugin/inject-entry-client.ts","../src/vite-plugin/inject-stylesheets.ts","../src/router/entry-server.ts","../src/router/entry.ts","../src/router/generate.ts","../src/vite-plugin/virtual-modules-hook.ts","../src/vite-plugin/integrations.ts"],"mappings":"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","names":["existsSync","resolve","dirname","existsSync","resolve","resolve","existsSync","resolve","existsSync","resolve","existsSync","join","resolve","existsSync","join","resolve","randomUUID","jsonError","jsonError","agent","refusal","messageOf","resolve","PREFIX","randomUUID","resolve","resolve","readFileSync","resolve","resolve","readFileSync","resolve","existsSync","readFileSync","dirname","join","pathToFileURL","existsSync","readFileSync","dirname","join","join","existsSync","readFileSync","pathToFileURL","dirname","join","existsSync","pathToFileURL","existsSync","resolve","SCRIPT_TAG","existsSync","resolve","basename","resolve","existsSync","dirname"]}
|
|
@@ -233,7 +233,8 @@ function stripe(opts) {
|
|
|
233
233
|
};
|
|
234
234
|
}
|
|
235
235
|
|
|
236
|
-
// src/server/webhook/providers/
|
|
236
|
+
// src/server/webhook/providers/hub-signature-256.ts
|
|
237
|
+
var HEADER = "x-hub-signature-256";
|
|
237
238
|
var PREFIX = "sha256=";
|
|
238
239
|
function fromHex2(hex) {
|
|
239
240
|
if (hex.length % 2 !== 0) return null;
|
|
@@ -245,43 +246,39 @@ function fromHex2(hex) {
|
|
|
245
246
|
}
|
|
246
247
|
return bytes;
|
|
247
248
|
}
|
|
248
|
-
function
|
|
249
|
-
const secrets = Array.isArray(opts.secret) ? opts.secret : [opts.secret];
|
|
249
|
+
function verifyHubSignature256(secrets) {
|
|
250
250
|
return async (req) => {
|
|
251
|
-
const header = req.headers.get(
|
|
252
|
-
if (!header) {
|
|
253
|
-
return { ok: false, reason: "missing x-hub-signature-256 header" };
|
|
254
|
-
}
|
|
251
|
+
const header = req.headers.get(HEADER);
|
|
252
|
+
if (!header) return { ok: false, reason: `missing ${HEADER} header` };
|
|
255
253
|
if (!header.startsWith(PREFIX)) {
|
|
256
|
-
return { ok: false, reason:
|
|
254
|
+
return { ok: false, reason: `malformed ${HEADER} header (missing ${PREFIX} prefix)` };
|
|
257
255
|
}
|
|
258
|
-
const
|
|
259
|
-
|
|
260
|
-
|
|
261
|
-
|
|
262
|
-
|
|
263
|
-
const rawBody = await req.text();
|
|
264
|
-
const enc2 = new TextEncoder();
|
|
265
|
-
const bodyBytes = enc2.encode(rawBody);
|
|
256
|
+
const signature = fromHex2(header.slice(PREFIX.length));
|
|
257
|
+
if (!signature) return { ok: false, reason: "malformed signature hex" };
|
|
258
|
+
const encoder = new TextEncoder();
|
|
259
|
+
const body = encoder.encode(await req.text());
|
|
260
|
+
let matched = false;
|
|
266
261
|
for (const secret of secrets) {
|
|
267
262
|
const key = await globalThis.crypto.subtle.importKey(
|
|
268
263
|
"raw",
|
|
269
|
-
|
|
264
|
+
encoder.encode(secret),
|
|
270
265
|
{ name: "HMAC", hash: "SHA-256" },
|
|
271
266
|
false,
|
|
272
267
|
["sign"]
|
|
273
268
|
);
|
|
274
|
-
const
|
|
275
|
-
|
|
276
|
-
if (
|
|
277
|
-
if (timingSafeEqual(sigBytes, expectedBytes)) {
|
|
278
|
-
return { ok: true };
|
|
279
|
-
}
|
|
269
|
+
const expected = new Uint8Array(await globalThis.crypto.subtle.sign("HMAC", key, body));
|
|
270
|
+
if (signature.length !== expected.length) continue;
|
|
271
|
+
if (timingSafeEqual(signature, expected)) matched = true;
|
|
280
272
|
}
|
|
281
|
-
return { ok: false, reason: "signature mismatch" };
|
|
273
|
+
return matched ? { ok: true } : { ok: false, reason: "signature mismatch" };
|
|
282
274
|
};
|
|
283
275
|
}
|
|
284
276
|
|
|
277
|
+
// src/server/webhook/providers/github.ts
|
|
278
|
+
function github(opts) {
|
|
279
|
+
return verifyHubSignature256(Array.isArray(opts.secret) ? opts.secret : [opts.secret]);
|
|
280
|
+
}
|
|
281
|
+
|
|
285
282
|
// src/server/webhook/providers/slack.ts
|
|
286
283
|
var PREFIX2 = "v0=";
|
|
287
284
|
function fromHex3(hex) {
|
|
@@ -405,6 +402,34 @@ function discord(opts) {
|
|
|
405
402
|
};
|
|
406
403
|
}
|
|
407
404
|
|
|
405
|
+
// src/server/webhook/providers/whatsapp.ts
|
|
406
|
+
function whatsapp(opts) {
|
|
407
|
+
return verifyHubSignature256(
|
|
408
|
+
Array.isArray(opts.appSecret) ? opts.appSecret : [opts.appSecret]
|
|
409
|
+
);
|
|
410
|
+
}
|
|
411
|
+
function whatsappSubscribe(opts) {
|
|
412
|
+
const encoder = new TextEncoder();
|
|
413
|
+
const expected = encoder.encode(opts.verifyToken);
|
|
414
|
+
return (req) => {
|
|
415
|
+
const params = new URL(req.url).searchParams;
|
|
416
|
+
if (params.get("hub.mode") !== "subscribe") {
|
|
417
|
+
return { ok: false, reason: `hub.mode must be 'subscribe'` };
|
|
418
|
+
}
|
|
419
|
+
const presented = params.get("hub.verify_token");
|
|
420
|
+
if (presented === null) return { ok: false, reason: "missing hub.verify_token" };
|
|
421
|
+
const got = encoder.encode(presented);
|
|
422
|
+
if (got.length !== expected.length || !timingSafeEqual(got, expected)) {
|
|
423
|
+
return { ok: false, reason: "hub.verify_token mismatch" };
|
|
424
|
+
}
|
|
425
|
+
const challenge = params.get("hub.challenge");
|
|
426
|
+
if (challenge === null || challenge.length === 0) {
|
|
427
|
+
return { ok: false, reason: "missing hub.challenge" };
|
|
428
|
+
}
|
|
429
|
+
return { ok: true, challenge };
|
|
430
|
+
};
|
|
431
|
+
}
|
|
432
|
+
|
|
408
433
|
export {
|
|
409
434
|
timingSafeEqual,
|
|
410
435
|
DEFAULT_MAX_BODY_BYTES,
|
|
@@ -416,6 +441,8 @@ export {
|
|
|
416
441
|
github,
|
|
417
442
|
slack,
|
|
418
443
|
telegram,
|
|
419
|
-
discord
|
|
444
|
+
discord,
|
|
445
|
+
whatsapp,
|
|
446
|
+
whatsappSubscribe
|
|
420
447
|
};
|
|
421
|
-
//# sourceMappingURL=chunk-
|
|
448
|
+
//# sourceMappingURL=chunk-KPZ2JSAU.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/server/webhook/timing-safe-equal.ts","../src/server/webhook/raw-body.ts","../src/server/webhook/define-webhook.ts","../src/server/webhook/providers/stripe.ts","../src/server/webhook/providers/hub-signature-256.ts","../src/server/webhook/providers/github.ts","../src/server/webhook/providers/slack.ts","../src/server/webhook/providers/telegram.ts","../src/server/webhook/providers/discord.ts","../src/server/webhook/providers/whatsapp.ts"],"mappings":";;;;;;;;;AAqBA,IAAI;AAEJ,SAAS,kBAA8C;AACrD,MAAI,mBAAmB,OAAW,QAAO;AACzC,MAAI;AAIF,UAAM,YAAY,UAAQ,aAAa;AAGvC,qBAAiB,UAAU,mBAAmB;AAAA,EAChD,QAAQ;AACN,qBAAiB;AAAA,EACnB;AACA,SAAO;AACT;AAQO,SAAS,gBAAgB,GAAe,GAAwB;AACrE,MAAI,EAAE,aAAa,eAAe,EAAE,aAAa,aAAa;AAC5D,UAAM,IAAI;AAAA,MACR,qDAAqD,OAAO,CAAC,QAAQ,OAAO,CAAC;AAAA,IAC/E;AAAA,EACF;AAEA,MAAI,EAAE,WAAW,EAAE,OAAQ,QAAO;AAClC,MAAI,EAAE,WAAW,EAAG,QAAO;AAK3B,QAAM,WAAW,gBAAgB;AACjC,MAAI,SAAU,QAAO,SAAS,GAAG,CAAC;AAKlC,MAAI,OAAO;AACX,WAAS,IAAI,GAAG,IAAI,EAAE,QAAQ,KAAK;AACjC,YAAQ,EAAE,CAAC,IAAI,EAAE,CAAC;AAAA,EACpB;AACA,SAAO,SAAS;AAClB;;;AClDO,IAAM,yBAAyB;AAmB/B,IAAM,oBAAN,cAAgC,MAAM;AAAA,EAI3C,YACkB,OACA,YAChB;AACA,UAAM,2CAA2C,UAAU,iBAAiB,KAAK,QAAQ;AAHzE;AACA;AAGhB,SAAK,OAAO;AAAA,EACd;AAAA,EALkB;AAAA,EACA;AAAA,EALT,SAAS;AAAA,EACT,OAAO;AASlB;AAEA,eAAsB,YACpB,SACA,UAA8B,CAAC,GACP;AACxB,QAAM,eAAe,QAAQ,gBAAgB;AAK7C,QAAM,QAAQ,QAAQ,MAAM;AAK5B,MAAI,MAAM,SAAS,MAAM;AACvB,WAAO,EAAE,SAAS,IAAI,WAAW,QAAQ;AAAA,EAC3C;AAEA,QAAM,SAAS,MAAM,KAAK,UAAU;AACpC,QAAM,SAAuB,CAAC;AAC9B,MAAI,QAAQ;AAEZ,MAAI;AACF,eAAS;AACP,YAAM,EAAE,OAAO,KAAK,IAAI,MAAM,OAAO,KAAK;AAC1C,UAAI,KAAM;AACV,eAAS,MAAM;AACf,UAAI,QAAQ,cAAc;AAGxB,aAAK,OAAO,OAAO;AACnB,cAAM,IAAI,kBAAkB,cAAc,KAAK;AAAA,MACjD;AACA,aAAO,KAAK,KAAK;AAAA,IACnB;AAAA,EACF,UAAE;AACA,QAAI;AACF,aAAO,YAAY;AAAA,IACrB,QAAQ;AAAA,IAER;AAAA,EACF;AAGA,QAAM,QAAQ,IAAI,WAAW,KAAK;AAClC,MAAI,SAAS;AACb,aAAW,SAAS,QAAQ;AAC1B,UAAM,IAAI,OAAO,MAAM;AACvB,cAAU,MAAM;AAAA,EAClB;AACA,QAAM,UAAU,IAAI,YAAY,EAAE,OAAO,KAAK;AAE9C,SAAO,EAAE,SAAS,WAAW,QAAQ;AACvC;;;ACtEO,SAAS,cAAc,MAA+C;AAC3E,SAAO;AAAA,IACL,QAAQ,KAAK;AAAA,IACb,SAAS,KAAK;AAAA,IACd,cAAc,KAAK;AAAA,IACnB,gBAAgB;AAAA,EAClB;AACF;AAYA,eAAsB,gBAAgB,KAAwB,SAAqC;AACjG,MAAI;AACJ,MAAI;AACJ,MAAI;AACF,UAAMA,UAAS,MAAM,YAAY,SAAS,EAAE,cAAc,IAAI,aAAa,CAAC;AAC5E,cAAUA,QAAO;AACjB,gBAAYA,QAAO;AAAA,EACrB,SAAS,KAAK;AACZ,QAAI,eAAe,mBAAmB;AACpC,aAAO,IAAI,SAAS,KAAK,UAAU,EAAE,OAAO,IAAI,MAAM,SAAS,IAAI,QAAQ,CAAC,GAAG;AAAA,QAC7E,QAAQ;AAAA,QACR,SAAS,EAAE,gBAAgB,mBAAmB;AAAA,MAChD,CAAC;AAAA,IACH;AACA,WAAO,IAAI;AAAA,MACT,KAAK,UAAU;AAAA,QACb,OAAO;AAAA,QACP,SAAS,eAAe,QAAQ,IAAI,UAAU;AAAA,MAChD,CAAC;AAAA,MACD,EAAE,QAAQ,KAAK,SAAS,EAAE,gBAAgB,mBAAmB,EAAE;AAAA,IACjE;AAAA,EACF;AAGA,QAAM,gBAAgB,oBAAoB,QAAQ,OAAO;AACzD,QAAM,UAAU,eAAe,YAAY,wBAAwB,EAAE;AAGrE,MAAI;AACJ,MAAI;AACF,mBAAe,MAAM,IAAI,OAAO,SAAS;AAAA,EAC3C,SAAS,KAAK;AACZ,mBAAe;AAAA,MACb,IAAI;AAAA,MACJ,QAAQ,iBAAiB,eAAe,QAAQ,IAAI,UAAU,OAAO,GAAG,CAAC;AAAA,IAC3E;AAAA,EACF;AAEA,MAAI,CAAC,aAAa,IAAI;AACpB,WAAO,IAAI;AAAA,MACT,KAAK,UAAU,EAAE,OAAO,yBAAyB,SAAS,aAAa,OAAO,CAAC;AAAA,MAC/E,EAAE,QAAQ,KAAK,SAAS,EAAE,gBAAgB,mBAAmB,EAAE;AAAA,IACjE;AAAA,EACF;AAEA,QAAM,MAAsB;AAAA,IAC1B,SAAS;AAAA,IACT;AAAA,IACA;AAAA,IACA,QAAQ,QAAQ;AAAA,EAClB;AAEA,QAAM,SAAS,MAAM,IAAI,QAAQ,GAAG;AACpC,MAAI,kBAAkB,SAAU,QAAO;AACvC,MAAI,WAAW,UAAa,WAAW,MAAM;AAC3C,WAAO,IAAI,SAAS,MAAM,EAAE,QAAQ,IAAI,CAAC;AAAA,EAC3C;AACA,SAAO,IAAI,SAAS,KAAK,UAAU,MAAM,GAAG;AAAA,IAC1C,QAAQ;AAAA,IACR,SAAS,EAAE,gBAAgB,mBAAmB;AAAA,EAChD,CAAC;AACH;;;AC9EA,SAAS,kBAAkB,QAAqC;AAC9D,QAAM,QAAQ,OAAO,MAAM,GAAG,EAAE,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC;AACnD,MAAI,YAA2B;AAC/B,QAAM,aAAuB,CAAC;AAC9B,MAAI,SAAS;AACb,aAAW,QAAQ,OAAO;AACxB,UAAM,CAAC,KAAK,KAAK,IAAI,KAAK,MAAM,KAAK,CAAC;AACtC,QAAI,QAAQ,KAAK;AACf;AACA,kBAAY,OAAO,SAAS,OAAO,EAAE;AACrC,UAAI,CAAC,OAAO,SAAS,SAAS,EAAG,QAAO;AAAA,IAC1C,WAAW,QAAQ,MAAM;AACvB,iBAAW,KAAK,KAAK;AAAA,IACvB;AAAA,EACF;AAEA,MAAI,WAAW,EAAG,QAAO;AACzB,MAAI,cAAc,KAAM,QAAO;AAC/B,MAAI,WAAW,WAAW,EAAG,QAAO;AACpC,SAAO,EAAE,WAAW,WAAW;AACjC;AAEA,IAAM,MAAM,IAAI,YAAY;AAQ5B,eAAe,iBACb,QACA,WACA,SACqB;AACrB,QAAM,MAAM,MAAM,WAAW,OAAO,OAAO;AAAA,IACzC;AAAA,IACA,IAAI,OAAO,MAAM;AAAA,IACjB,EAAE,MAAM,QAAQ,MAAM,UAAU;AAAA,IAChC;AAAA,IACA,CAAC,MAAM;AAAA,EACT;AACA,QAAM,SAAS,MAAM,WAAW,OAAO,OAAO;AAAA,IAC5C;AAAA,IACA;AAAA,IACA,IAAI,OAAO,GAAG,SAAS,IAAI,OAAO,EAAE;AAAA,EACtC;AACA,SAAO,IAAI,WAAW,MAAM;AAC9B;AAEA,IAAM,UAAU,CAAC,QAAmC;AAClD,MAAI,IAAI,SAAS,MAAM,EAAG,QAAO;AACjC,QAAM,QAAQ,IAAI,WAAW,IAAI,SAAS,CAAC;AAC3C,WAAS,IAAI,GAAG,IAAI,MAAM,QAAQ,KAAK;AACrC,UAAM,OAAO,OAAO,SAAS,IAAI,MAAM,IAAI,GAAG,IAAI,IAAI,CAAC,GAAG,EAAE;AAC5D,QAAI,OAAO,MAAM,IAAI,EAAG,QAAO;AAC/B,UAAM,CAAC,IAAI;AAAA,EACb;AACA,SAAO;AACT;AAEO,SAAS,OAAO,MAAsC;AAC3D,QAAM,YAAY,KAAK,oBAAoB;AAC3C,QAAM,UAA6B,MAAM,QAAQ,KAAK,MAAM,IACxD,KAAK,SACL,CAAC,KAAK,MAAgB;AAE1B,SAAO,OAAO,QAAwC;AACpD,UAAM,SAAS,IAAI,QAAQ,IAAI,kBAAkB;AACjD,QAAI,CAAC,QAAQ;AACX,aAAO,EAAE,IAAI,OAAO,QAAQ,kCAAkC;AAAA,IAChE;AACA,UAAM,SAAS,kBAAkB,MAAM;AACvC,QAAI,CAAC,QAAQ;AACX,aAAO,EAAE,IAAI,OAAO,QAAQ,oCAAoC;AAAA,IAClE;AAEA,UAAM,aAAa,KAAK,MAAM,KAAK,IAAI,IAAI,GAAI;AAC/C,UAAM,QAAQ,KAAK,IAAI,aAAa,OAAO,SAAS;AACpD,QAAI,QAAQ,WAAW;AACrB,aAAO;AAAA,QACL,IAAI;AAAA,QACJ,QAAQ,4CAA4C,KAAK,gBAAgB,SAAS;AAAA,MACpF;AAAA,IACF;AAEA,UAAM,UAAU,MAAM,IAAI,KAAK;AAE/B,eAAW,UAAU,SAAS;AAC5B,YAAM,gBAAgB,MAAM,iBAAiB,QAAQ,OAAO,WAAW,OAAO;AAC9E,iBAAW,OAAO,OAAO,YAAY;AACnC,cAAM,WAAW,QAAQ,GAAG;AAC5B,YAAI,CAAC,SAAU;AACf,YAAI,SAAS,WAAW,cAAc,OAAQ;AAC9C,YAAI,gBAAgB,UAAU,aAAa,GAAG;AAC5C,iBAAO,EAAE,IAAI,KAAK;AAAA,QACpB;AAAA,MACF;AAAA,IACF;AAEA,WAAO,EAAE,IAAI,OAAO,QAAQ,qBAAqB;AAAA,EACnD;AACF;;;ACtHA,IAAM,SAAS;AACf,IAAM,SAAS;AAGf,SAASC,SAAQ,KAAgC;AAC/C,MAAI,IAAI,SAAS,MAAM,EAAG,QAAO;AACjC,QAAM,QAAQ,IAAI,WAAW,IAAI,SAAS,CAAC;AAC3C,WAAS,IAAI,GAAG,IAAI,MAAM,QAAQ,KAAK;AACrC,UAAM,OAAO,OAAO,SAAS,IAAI,MAAM,IAAI,GAAG,IAAI,IAAI,CAAC,GAAG,EAAE;AAC5D,QAAI,OAAO,MAAM,IAAI,EAAG,QAAO;AAC/B,UAAM,CAAC,IAAI;AAAA,EACb;AACA,SAAO;AACT;AASO,SAAS,sBAAsB,SAAsC;AAC1E,SAAO,OAAO,QAAwC;AACpD,UAAM,SAAS,IAAI,QAAQ,IAAI,MAAM;AACrC,QAAI,CAAC,OAAQ,QAAO,EAAE,IAAI,OAAO,QAAQ,WAAW,MAAM,UAAU;AACpE,QAAI,CAAC,OAAO,WAAW,MAAM,GAAG;AAC9B,aAAO,EAAE,IAAI,OAAO,QAAQ,aAAa,MAAM,oBAAoB,MAAM,WAAW;AAAA,IACtF;AAEA,UAAM,YAAYA,SAAQ,OAAO,MAAM,OAAO,MAAM,CAAC;AACrD,QAAI,CAAC,UAAW,QAAO,EAAE,IAAI,OAAO,QAAQ,0BAA0B;AAEtE,UAAM,UAAU,IAAI,YAAY;AAChC,UAAM,OAAO,QAAQ,OAAO,MAAM,IAAI,KAAK,CAAC;AAE5C,QAAI,UAAU;AACd,eAAW,UAAU,SAAS;AAC5B,YAAM,MAAM,MAAM,WAAW,OAAO,OAAO;AAAA,QACzC;AAAA,QACA,QAAQ,OAAO,MAAM;AAAA,QACrB,EAAE,MAAM,QAAQ,MAAM,UAAU;AAAA,QAChC;AAAA,QACA,CAAC,MAAM;AAAA,MACT;AACA,YAAM,WAAW,IAAI,WAAW,MAAM,WAAW,OAAO,OAAO,KAAK,QAAQ,KAAK,IAAI,CAAC;AACtF,UAAI,UAAU,WAAW,SAAS,OAAQ;AAG1C,UAAI,gBAAgB,WAAW,QAAQ,EAAG,WAAU;AAAA,IACtD;AAEA,WAAO,UAAU,EAAE,IAAI,KAAK,IAAI,EAAE,IAAI,OAAO,QAAQ,qBAAqB;AAAA,EAC5E;AACF;;;AClDO,SAAS,OAAO,MAAsC;AAC3D,SAAO,sBAAsB,MAAM,QAAQ,KAAK,MAAM,IAAI,KAAK,SAAS,CAAC,KAAK,MAAgB,CAAC;AACjG;;;ACGA,IAAMC,UAAS;AAEf,SAASC,SAAQ,KAAgC;AAC/C,MAAI,IAAI,SAAS,MAAM,EAAG,QAAO;AACjC,QAAM,QAAQ,IAAI,WAAW,IAAI,SAAS,CAAC;AAC3C,WAAS,IAAI,GAAG,IAAI,MAAM,QAAQ,KAAK;AACrC,UAAM,OAAO,OAAO,SAAS,IAAI,MAAM,IAAI,GAAG,IAAI,IAAI,CAAC,GAAG,EAAE;AAC5D,QAAI,OAAO,MAAM,IAAI,EAAG,QAAO;AAC/B,UAAM,CAAC,IAAI;AAAA,EACb;AACA,SAAO;AACT;AAEO,SAAS,MAAM,MAAqC;AACzD,QAAM,YAAY,KAAK,oBAAoB;AAC3C,QAAM,gBAAgB,KAAK;AAE3B,SAAO,OAAO,QAAwC;AACpD,UAAM,WAAW,IAAI,QAAQ,IAAI,2BAA2B;AAC5D,UAAM,YAAY,IAAI,QAAQ,IAAI,mBAAmB;AACrD,QAAI,CAAC,UAAU;AACb,aAAO,EAAE,IAAI,OAAO,QAAQ,2CAA2C;AAAA,IACzE;AACA,QAAI,CAAC,WAAW;AACd,aAAO,EAAE,IAAI,OAAO,QAAQ,mCAAmC;AAAA,IACjE;AACA,QAAI,CAAC,UAAU,WAAWD,OAAM,GAAG;AACjC,aAAO,EAAE,IAAI,OAAO,QAAQ,0DAA0D;AAAA,IACxF;AAEA,UAAM,KAAK,OAAO,SAAS,UAAU,EAAE;AACvC,QAAI,CAAC,OAAO,SAAS,EAAE,GAAG;AACxB,aAAO,EAAE,IAAI,OAAO,QAAQ,sCAAsC;AAAA,IACpE;AAEA,UAAM,aAAa,KAAK,MAAM,KAAK,IAAI,IAAI,GAAI;AAC/C,UAAM,QAAQ,KAAK,IAAI,aAAa,EAAE;AACtC,QAAI,QAAQ,WAAW;AACrB,aAAO;AAAA,QACL,IAAI;AAAA,QACJ,QAAQ,4CAA4C,KAAK,gBAAgB,SAAS;AAAA,MACpF;AAAA,IACF;AAEA,UAAM,UAAU,MAAM,IAAI,KAAK;AAC/B,UAAM,OAAO,MAAM,EAAE,IAAI,OAAO;AAChC,UAAME,OAAM,IAAI,YAAY;AAG5B,UAAM,MAAM,MAAM,WAAW,OAAO,OAAO;AAAA,MACzC;AAAA,MACAA,KAAI,OAAO,aAAa;AAAA,MACxB,EAAE,MAAM,QAAQ,MAAM,UAAU;AAAA,MAChC;AAAA,MACA,CAAC,MAAM;AAAA,IACT;AACA,UAAM,SAAS,MAAM,WAAW,OAAO,OAAO,KAAK,QAAQ,KAAKA,KAAI,OAAO,IAAI,CAAC;AAChF,UAAM,gBAAgB,IAAI,WAAW,MAAM;AAE3C,UAAM,SAAS,UAAU,MAAMF,QAAO,MAAM;AAC5C,UAAM,WAAWC,SAAQ,MAAM;AAC/B,QAAI,CAAC,UAAU;AACb,aAAO,EAAE,IAAI,OAAO,QAAQ,0BAA0B;AAAA,IACxD;AACA,QAAI,SAAS,WAAW,cAAc,QAAQ;AAC5C,aAAO,EAAE,IAAI,OAAO,QAAQ,qBAAqB;AAAA,IACnD;AACA,QAAI,gBAAgB,UAAU,aAAa,GAAG;AAC5C,aAAO,EAAE,IAAI,KAAK;AAAA,IACpB;AACA,WAAO,EAAE,IAAI,OAAO,QAAQ,qBAAqB;AAAA,EACnD;AACF;;;ACpFO,SAAS,SAAS,MAAwC;AAC/D,QAAME,OAAM,IAAI,YAAY;AAC5B,QAAM,WAAWA,KAAI,OAAO,KAAK,WAAW;AAE5C,SAAO,CAAC,QAA+B;AACrC,UAAM,SAAS,IAAI,QAAQ,IAAI,iCAAiC;AAChE,QAAI,CAAC,QAAQ;AACX,aAAO,EAAE,IAAI,OAAO,QAAQ,iDAAiD;AAAA,IAC/E;AACA,UAAM,MAAMA,KAAI,OAAO,MAAM;AAC7B,QAAI,IAAI,WAAW,SAAS,OAAQ,QAAO,EAAE,IAAI,OAAO,QAAQ,wBAAwB;AACxF,WAAO,gBAAgB,KAAK,QAAQ,IAChC,EAAE,IAAI,KAAK,IACX,EAAE,IAAI,OAAO,QAAQ,wBAAwB;AAAA,EACnD;AACF;;;ACfA,SAASC,SAAQ,KAA6C;AAC5D,MAAI,IAAI,WAAW,KAAK,IAAI,SAAS,MAAM,EAAG,QAAO;AACrD,QAAM,QAAQ,IAAI,WAAW,IAAI,SAAS,CAAC;AAC3C,WAAS,IAAI,GAAG,IAAI,MAAM,QAAQ,KAAK;AACrC,UAAM,OAAO,OAAO,SAAS,IAAI,MAAM,IAAI,GAAG,IAAI,IAAI,CAAC,GAAG,EAAE;AAC5D,QAAI,OAAO,MAAM,IAAI,EAAG,QAAO;AAC/B,UAAM,CAAC,IAAI;AAAA,EACb;AACA,SAAO;AACT;AAEO,SAAS,QAAQ,MAAuC;AAC7D,QAAM,WAAWA,SAAQ,KAAK,SAAS;AAEvC,SAAO,OAAO,QAAwC;AACpD,QAAI,CAAC,SAAU,QAAO,EAAE,IAAI,OAAO,QAAQ,2BAA2B;AACtE,UAAM,SAAS,IAAI,QAAQ,IAAI,qBAAqB;AACpD,UAAM,YAAY,IAAI,QAAQ,IAAI,uBAAuB;AACzD,QAAI,CAAC,OAAQ,QAAO,EAAE,IAAI,OAAO,QAAQ,qCAAqC;AAC9E,QAAI,CAAC,UAAW,QAAO,EAAE,IAAI,OAAO,QAAQ,uCAAuC;AAEnF,UAAM,WAAWA,SAAQ,MAAM;AAC/B,QAAI,CAAC,SAAU,QAAO,EAAE,IAAI,OAAO,QAAQ,0BAA0B;AAErE,UAAM,UAAU,MAAM,IAAI,KAAK;AAC/B,UAAM,UAAU,IAAI,WAAW,IAAI,YAAY,EAAE,OAAO,YAAY,OAAO,CAAC;AAE5E,QAAI;AACF,YAAM,MAAM,MAAM,WAAW,OAAO,OAAO;AAAA,QACzC;AAAA,QACA;AAAA,QACA,EAAE,MAAM,UAAU;AAAA,QAClB;AAAA,QACA,CAAC,QAAQ;AAAA,MACX;AACA,YAAM,KAAK,MAAM,WAAW,OAAO,OAAO,OAAO,WAAW,KAAK,UAAU,OAAO;AAClF,aAAO,KAAK,EAAE,IAAI,KAAK,IAAI,EAAE,IAAI,OAAO,QAAQ,qBAAqB;AAAA,IACvE,SAAS,KAAK;AACZ,aAAO;AAAA,QACL,IAAI;AAAA,QACJ,QAAQ,wBAAwB,eAAe,QAAQ,IAAI,UAAU,SAAS;AAAA,MAChF;AAAA,IACF;AAAA,EACF;AACF;;;ACnBO,SAAS,SAAS,MAAwC;AAC/D,SAAO;AAAA,IACL,MAAM,QAAQ,KAAK,SAAS,IAAI,KAAK,YAAY,CAAC,KAAK,SAAmB;AAAA,EAC5E;AACF;AAsBO,SAAS,kBAAkB,MAA6C;AAC7E,QAAM,UAAU,IAAI,YAAY;AAChC,QAAM,WAAW,QAAQ,OAAO,KAAK,WAAW;AAEhD,SAAO,CAAC,QAAkC;AACxC,UAAM,SAAS,IAAI,IAAI,IAAI,GAAG,EAAE;AAChC,QAAI,OAAO,IAAI,UAAU,MAAM,aAAa;AAC1C,aAAO,EAAE,IAAI,OAAO,QAAQ,+BAA+B;AAAA,IAC7D;AAIA,UAAM,YAAY,OAAO,IAAI,kBAAkB;AAC/C,QAAI,cAAc,KAAM,QAAO,EAAE,IAAI,OAAO,QAAQ,2BAA2B;AAI/E,UAAM,MAAM,QAAQ,OAAO,SAAS;AACpC,QAAI,IAAI,WAAW,SAAS,UAAU,CAAC,gBAAgB,KAAK,QAAQ,GAAG;AACrE,aAAO,EAAE,IAAI,OAAO,QAAQ,4BAA4B;AAAA,IAC1D;AAEA,UAAM,YAAY,OAAO,IAAI,eAAe;AAI5C,QAAI,cAAc,QAAQ,UAAU,WAAW,GAAG;AAChD,aAAO,EAAE,IAAI,OAAO,QAAQ,wBAAwB;AAAA,IACtD;AAEA,WAAO,EAAE,IAAI,MAAM,UAAU;AAAA,EAC/B;AACF;","names":["result","fromHex","PREFIX","fromHex","enc","enc","fromHex"]}
|
|
@@ -207,6 +207,24 @@ function jsonError(status, code, message) {
|
|
|
207
207
|
headers: { "content-type": "application/json" }
|
|
208
208
|
});
|
|
209
209
|
}
|
|
210
|
+
async function handleSubscribe(request, platform, config) {
|
|
211
|
+
const subscribe = config.subscribe?.[platform];
|
|
212
|
+
if (subscribe === void 0) {
|
|
213
|
+
return jsonError(
|
|
214
|
+
405,
|
|
215
|
+
"SUBSCRIBE_UNSUPPORTED",
|
|
216
|
+
`Platform '${platform}' declared no subscribe handshake. Add one to \`subscribe\` (e.g. whatsappSubscribe({ verifyToken })).`
|
|
217
|
+
);
|
|
218
|
+
}
|
|
219
|
+
const result = await subscribe(request);
|
|
220
|
+
if (!result.ok) {
|
|
221
|
+
return jsonError(401, "INVALID_SUBSCRIBE", `Subscribe handshake failed: ${result.reason}`);
|
|
222
|
+
}
|
|
223
|
+
return new Response(result.challenge, {
|
|
224
|
+
status: 200,
|
|
225
|
+
headers: { "content-type": "text/plain; charset=utf-8" }
|
|
226
|
+
});
|
|
227
|
+
}
|
|
210
228
|
async function handleChannelWebhook(request, urlPath, config) {
|
|
211
229
|
const parsed = parseChannelPath(urlPath);
|
|
212
230
|
if (parsed === null) {
|
|
@@ -223,6 +241,7 @@ async function handleChannelWebhook(request, urlPath, config) {
|
|
|
223
241
|
`No validator configured for platform '${parsed.platform}'.`
|
|
224
242
|
);
|
|
225
243
|
}
|
|
244
|
+
if (request.method === "GET") return await handleSubscribe(request, parsed.platform, config);
|
|
226
245
|
const verify = config.validators[parsed.platform];
|
|
227
246
|
const verifyResult = await verify(request.clone());
|
|
228
247
|
if (!verifyResult.ok) {
|
|
@@ -289,4 +308,4 @@ export {
|
|
|
289
308
|
streamAgentTurnInProcess,
|
|
290
309
|
InProcessApprovalRequiredError
|
|
291
310
|
};
|
|
292
|
-
//# sourceMappingURL=chunk-
|
|
311
|
+
//# sourceMappingURL=chunk-OH32SN46.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/server/agent/workflow-tool.ts","../src/server/agent/acp-tool.ts","../src/server/agent/vendor-agent-tool.ts","../src/server/agent/code-mode.ts","../src/server/agent/channel-webhook.ts","../src/server/agent/index.ts","../src/server/agent/mcp-stdio.ts"],"mappings":"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
|
|
1
|
+
{"version":3,"sources":["../src/server/agent/workflow-tool.ts","../src/server/agent/acp-tool.ts","../src/server/agent/vendor-agent-tool.ts","../src/server/agent/code-mode.ts","../src/server/agent/channel-webhook.ts","../src/server/agent/index.ts","../src/server/agent/mcp-stdio.ts"],"mappings":"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","names":["tool"]}
|
|
@@ -87,6 +87,29 @@ var theoConfigSchema = z.object({
|
|
|
87
87
|
* is still distinguishable from "somebody said localhost".
|
|
88
88
|
*/
|
|
89
89
|
host: z.union([z.string(), z.boolean()]).optional(),
|
|
90
|
+
/**
|
|
91
|
+
* Hostnames `theokit dev` will answer for, beyond the loopback names Vite permits out of the
|
|
92
|
+
* box — Vite's `server.allowedHosts` (#555).
|
|
93
|
+
*
|
|
94
|
+
* This is NOT {@link host}. That one is the bind ADDRESS; this one is the `Host` header check
|
|
95
|
+
* that runs after the connection is accepted, so binding `0.0.0.0` does not make a tunnelled
|
|
96
|
+
* request pass. Developing against any webhook platform needs a public URL, which means a
|
|
97
|
+
* tunnel or a reverse proxy, which means a `Host` the check refuses by default — and a
|
|
98
|
+
* scaffolded app has no `vite.config.ts` in which to allow it.
|
|
99
|
+
*
|
|
100
|
+
* Vite's own matching rules apply, not globs: a leading dot allows a domain and its
|
|
101
|
+
* subdomains (`.trycloudflare.com`), and anything else is compared literally.
|
|
102
|
+
*
|
|
103
|
+
* `true` disables the check. It is here because a tunnel that mints a fresh random hostname
|
|
104
|
+
* per run cannot be listed, and the alternative — editing config between runs — is what makes
|
|
105
|
+
* people reach for the production server instead. It also removes the protection against
|
|
106
|
+
* DNS-rebinding that the check exists to provide, so prefer the list whenever the hostname is
|
|
107
|
+
* knowable. `theokit start` is unaffected either way: this is dev-server-only.
|
|
108
|
+
*
|
|
109
|
+
* Deliberately NOT defaulted — an empty array is a decision that blocks every host including
|
|
110
|
+
* the loopback names, so "nobody said" has to stay distinguishable from "somebody said none".
|
|
111
|
+
*/
|
|
112
|
+
allowedHosts: z.union([z.array(z.string()), z.literal(true)]).optional(),
|
|
90
113
|
/** Automatically open browser on `theokit dev`. */
|
|
91
114
|
open: z.union([z.boolean(), z.string()]).default(false),
|
|
92
115
|
/** Exit if port is already in use instead of trying next available. */
|
|
@@ -280,4 +303,4 @@ var theoConfigSchema = z.object({
|
|
|
280
303
|
export {
|
|
281
304
|
theoConfigSchema
|
|
282
305
|
};
|
|
283
|
-
//# sourceMappingURL=chunk-
|
|
306
|
+
//# sourceMappingURL=chunk-TMQ52AZR.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/config/schema.ts","../src/core/contracts/theo-ui-theme.ts"],"sourcesContent":["import { z } from 'zod'\n\nimport { THEME_NAME_PATTERN } from '../core/contracts/theo-ui-theme.js'\nimport { servicesConfigSchema } from '../services/index.js'\n\nimport {\n cacheSchema,\n loggingSchema,\n observabilitySchema,\n rateLimitSchema,\n securitySchema,\n storageSchema,\n uploadSchema,\n type FormatErrorContext,\n type FormatErrorHook,\n} from './schemas/index.js'\n\n// Re-export per-concern schemas + types so downstream consumers\n// (`adapters/*`, vite-plugin, generators) keep their existing imports valid.\n// Per plan T2.3 — pure structural split; zero behavior change at the call site.\n//\n// `rateLimitSchema` and `securitySchema` are NOT re-exported: they are composed into\n// `theoConfigSchema` below and nothing imports them from here. They remain available at their\n// source of truth, `./schemas/index.js`.\nexport { cacheSchema, corsSchema, securityHeadersSchema, storageSchema } from './schemas/index.js'\n\nexport type { StorageConfig } from './schemas/index.js'\n\n/**\n * Root `theo.config.ts` schema — composer assembled from the per-concern\n * primitives re-exported above.\n *\n * Embedded blocks that exist ONLY as part of the root config (`agents`,\n * `ui`, `devtools`, `jobs`, `openapi`) stay inline below. They have no\n * external consumers; splitting them would create lonely files (M5\n * smell) without comprehension benefit.\n */\nexport const theoConfigSchema = z\n .object({\n /**\n * Plan v1.2 T2.1 — project identifier propagated into\n * `.theokit/services.json` v2 `project` field. DNS-1123 compatible (drives\n * Gitea repo + ArgoCD App naming on TheoCloud). When omitted, the build\n * emits services.json v1 with the legacy `services-bundle` fallback\n * (ADR D10) and logs a deprecation warning.\n */\n name: z\n .string()\n .max(63)\n .refine(\n // DNS-1123 equivalent expressed as explicit single-char anchors so\n // security/detect-unsafe-regex stays clean (no backtracking).\n (value) =>\n value.length > 0 &&\n /^[a-z0-9-]+$/u.test(value) &&\n !value.startsWith('-') &&\n !value.endsWith('-'),\n 'name must match DNS-1123 (lowercase alphanumeric+hyphens, 1-63 chars, no leading/trailing hyphen)',\n )\n .optional(),\n appDir: z.string().default('app'),\n serverDir: z.string().default('server'),\n /**\n * Directory (relative to the project root) holding `agents/<name>.ts` definitions, scanned by\n * dev/build/terminal/mcp. Defaults to `\"agents\"` — apps that keep the canonical layout are\n * unaffected. Set to e.g. `\"core/agents\"` to organize agents under a domain root (#95 follow-up).\n */\n agentsDir: z.string().default('agents'),\n /**\n * T2.2 / EC-4 — Build output directory. Must be a relative path inside\n * the project root. Refused absolute or parent-relative paths to prevent\n * `cleanOutDir` from wiping arbitrary locations (defense-in-depth on\n * top of cleanOutDir's runtime EC-3 guard).\n */\n distDir: z\n .string()\n .default('.theokit')\n .refine(\n (d) => !/^([A-Za-z]:)?[/\\\\]/.test(d) && !d.startsWith('..'),\n 'distDir must be a relative path inside the project root (e.g., \".theokit\")',\n ),\n /**\n * Agent runtime configuration.\n *\n * - `maxRegistries` (T2.3, legacy): dev-mode cleanup of stale\n * `.theokit/agents/<id>/` dirs by mtime. Now superseded by SDK's\n * native registry GC but kept for backward-compat.\n * - `registry` (Phase 6, Production-Readiness #2): forwarded to\n * `Agent.registry.configure()` lazily on first request.\n * * `maxAgents` — LRU cap. MUST be ≥ max-concurrent-active-conversations\n * (EC-17 DOCUMENT): with maxAgents:1 and 2 concurrent chats, LRU evicts\n * mid-stream → SDK aborts with code:'aborted'. Default 100 covers\n * indie/small-team; tune up for high-traffic.\n * * `idleTimeoutMs` — auto-evict idle agents (default 30 min). 0 disables\n * idle eviction (LRU only).\n */\n agents: z\n .object({\n maxRegistries: z.number().int().positive().default(100),\n registry: z\n .object({\n /** LRU cap — MUST be ≥ max-concurrent-active-conversations. */\n maxAgents: z.number().int().positive().max(10_000).default(100),\n /** Idle eviction window in ms. 0 disables idle eviction (LRU only). */\n idleTimeoutMs: z\n .number()\n .int()\n .nonnegative()\n .default(30 * 60_000),\n })\n .optional(),\n })\n .optional(),\n port: z.number().int().min(1).max(65535).default(3000),\n /** Listen on all addresses (0.0.0.0) for LAN/mobile testing. */\n /**\n * Deliberately NOT defaulted. `resolveListenTarget` ranks an explicit `host` above `HOST`,\n * because a value written into the project is a decision and an environment variable is a\n * deployment detail — and a default applied here made every app look like it had decided.\n * `HOST` was therefore inert everywhere, which is the opposite of what it was added for\n * (containers, #402). The loopback default lives in `resolveListenTarget`, where \"nobody said\"\n * is still distinguishable from \"somebody said localhost\".\n */\n host: z.union([z.string(), z.boolean()]).optional(),\n /**\n * Hostnames `theokit dev` will answer for, beyond the loopback names Vite permits out of the\n * box — Vite's `server.allowedHosts` (#555).\n *\n * This is NOT {@link host}. That one is the bind ADDRESS; this one is the `Host` header check\n * that runs after the connection is accepted, so binding `0.0.0.0` does not make a tunnelled\n * request pass. Developing against any webhook platform needs a public URL, which means a\n * tunnel or a reverse proxy, which means a `Host` the check refuses by default — and a\n * scaffolded app has no `vite.config.ts` in which to allow it.\n *\n * Vite's own matching rules apply, not globs: a leading dot allows a domain and its\n * subdomains (`.trycloudflare.com`), and anything else is compared literally.\n *\n * `true` disables the check. It is here because a tunnel that mints a fresh random hostname\n * per run cannot be listed, and the alternative — editing config between runs — is what makes\n * people reach for the production server instead. It also removes the protection against\n * DNS-rebinding that the check exists to provide, so prefer the list whenever the hostname is\n * knowable. `theokit start` is unaffected either way: this is dev-server-only.\n *\n * Deliberately NOT defaulted — an empty array is a decision that blocks every host including\n * the loopback names, so \"nobody said\" has to stay distinguishable from \"somebody said none\".\n */\n allowedHosts: z.union([z.array(z.string()), z.literal(true)]).optional(),\n /** Automatically open browser on `theokit dev`. */\n open: z.union([z.boolean(), z.string()]).default(false),\n /** Exit if port is already in use instead of trying next available. */\n strictPort: z.boolean().default(false),\n /** Forward browser console/errors to terminal — useful for AI agent dev. */\n forwardConsole: z\n .union([\n z.boolean(),\n z.object({\n unhandledErrors: z.boolean().optional(),\n logLevels: z.array(z.enum(['error', 'warn', 'info', 'log', 'debug'])).optional(),\n }),\n ])\n .default(false),\n /** Pre-transform files on startup for faster first page load. */\n warmup: z\n .object({\n clientFiles: z.array(z.string()).optional(),\n ssrFiles: z.array(z.string()).optional(),\n })\n .optional(),\n ssr: z.boolean().default(false),\n /** When true (and ssr === true), use renderToPipeableStream with progressive\n * shell flush instead of single-shot renderToString. Opt-in for streaming\n * SSR; default false preserves the current behavior. */\n ssrStreaming: z.boolean().default(false),\n rateLimit: rateLimitSchema.optional(),\n upload: uploadSchema.optional(),\n logging: loggingSchema.optional(),\n security: securitySchema.optional(),\n serialization: z.enum(['json', 'superjson']).default('json'),\n // Plugins are validated structurally at runtime by createPluginRunnerFromConfig.\n // Zod only checks the shape minimally (must be array). Type-level safety is\n // provided through defineConfig at the user surface.\n //\n // #425 — an entry MAY also be a module SPECIFIER (a string), resolved to that module's default\n // export by `config/resolve-plugin-specifiers.ts`. A constructed plugin closes over state and\n // therefore has no literal, so it is the string form — and only the string form — that a\n // generated deploy entry can carry. Both shapes are accepted here for the same reason they are\n // accepted at runtime: one declaration has to serve the local server and the deployed one.\n plugins: z.array(z.unknown()).optional(),\n /** Enable client-side batching of theoFetch calls and the\n * /api/__theo_batch__ server endpoint. */\n batching: z\n .union([z.boolean(), z.object({ max: z.number().int().positive().optional() })])\n .optional(),\n /** T4.1 — Audit log. When `logger` is provided, framework events\n * (csrf.warn, rate-limit.exceeded, session.rotated, csp.violation) are\n * emitted to it. Default: noop. */\n audit: z\n .object({\n logger: z.unknown().optional(),\n })\n .optional(),\n /** TheoUI auto-wire (T2.1). `false` = opt-out; object = explicit theme/fonts;\n * undefined = enabled when @theokit/ui is detected in node_modules. */\n ui: z\n .union([\n z.literal(false),\n z.object({\n // Any theme @theokit/ui knows — built-in or from `defineTheme()`. This was a closed\n // enum of `violet-forge | noir | paper`, two of which never existed in @theokit/ui, so\n // the only accepted value was the default and every real theme was rejected. The pattern\n // mirrors what @theokit/ui's ThemeProvider enforces, and it is load-bearing: the value is\n // interpolated into the generated entry and into a CSS selector.\n theme: z\n .string()\n .regex(\n THEME_NAME_PATTERN,\n 'must start with a letter and contain only lowercase letters, digits and hyphens',\n )\n .optional(),\n fonts: z.enum(['bundled', 'cdn']).optional(),\n }),\n ])\n .optional(),\n /**\n * Cache subsystem (caching-and-revalidation-plan).\n * Default `undefined` keeps caching disabled (backward compatible).\n * Pass `cache: {}` to opt in with defaults.\n */\n cache: cacheSchema.optional(),\n /**\n * Observability (#353). Default `undefined` keeps telemetry off. Present and\n * not `enabled: false` opts in; `provider` overrides the environment-derived\n * adapter, which is the priority `adapter-registry.ts` has always documented.\n */\n observability: observabilitySchema.optional(),\n /**\n * Devtools overlay (Phase 0.4.0+ —\n *\n * - `undefined` (default): devtools auto-injects in `pnpm dev`, NEVER in `vite build`.\n * - `false`: devtools disabled entirely (Vite plugin skips injection even in dev).\n * - `{ ... }`: devtools enabled with explicit defaults (position, theme).\n *\n * Tree-shaken to noop in prod via the dual-export pattern in\n * `packages/theo/src/devtools/index.ts` (EC-17 positive prod check).\n */\n devtools: z\n .union([\n z.literal(false),\n z.object({\n position: z.enum(['top-left', 'top-right', 'bottom-left', 'bottom-right']).optional(),\n theme: z.enum(['light', 'dark', 'system']).optional(),\n }),\n ])\n .optional(),\n /**\n * Informative list of deploy adapters the app supports. Does NOT\n * trigger per-build translations — only the `--target` CLI flag does\n * (EC-201 / ADR D2). If `config.adapters` includes a target NOT\n * matching `--target`, `theokit build` emits a cross-reference note.\n */\n adapters: z.array(z.string()).optional(),\n /**\n * Extra package names to pre-bundle via Vite's `optimizeDeps.include`.\n *\n * Framework auto-includes `@theokit/ui` and `lucide-react` when present.\n * Apps adding plugin peer-deps that rely on a runtime `import('<pkg>')`\n * (dynamic specifier) — e.g. `@theokit/plugin-canvas` consumers\n * installing `mermaid` for Mermaid SVG rendering — must declare those\n * here so Vite can resolve the literal in dev mode without\n * \"Failed to resolve module specifier\" errors. Production builds use\n * tsup/esbuild bundling and are not affected.\n *\n * Example:\n * viteOptimizeDeps: ['mermaid']\n */\n viteOptimizeDeps: z.array(z.string()).optional(),\n /**\n * Jobs backend (ADR D3 + T2.1). When configured, every request gets\n * `ctx.queue.enqueue` auto-wired via the outbox lifecycle. Pass a\n * `JobBackend` instance (InMemoryJobBackend, PostgresJobBackend, etc.).\n */\n jobs: z\n .object({\n backend: z.custom<unknown>((v) => typeof v === 'object' && v !== null),\n })\n .optional(),\n /**\n * StorageManager configuration (T1.1 / ADR-0007).\n *\n * Declares Postgres servers + databases + Redis servers. Consumed by\n * `getStorageManager().configure()` at boot via `start.ts`.\n *\n * Default `undefined` means manager exists but is not configured — adapters\n * relying on the manager (PostgresJobBackend.fromStorageManager, etc.) will\n * throw with an actionable error on first use.\n */\n storage: storageSchema.optional(),\n /**\n * Wave 2 — Polyglot services orchestration (T1.1 / ADR-0012/0013/0014/0015).\n *\n * Declarative external sidecar processes (Python FastAPI / Node Hono)\n * that boot alongside the TheoKit TS app. Empty `services: {}` is the\n * default and preserves Wave 1 behavior.\n */\n services: servicesConfigSchema,\n /**\n * G2 — OpenAPI emit (build-time only).\n *\n * When present, `theokit build` writes a generated `openapi.json` from\n * every `defineRoute()` body/query/params Zod schema. `undefined` keeps\n * the framework backward-compatible (no emit). Pass `openapi: {}` to\n * opt in with defaults.\n *\n * Defaults: spec 3.1.0 · servers `http://localhost:3000` · title\n * \"TheoKit App\" · version \"0.0.0\" · outDir \".theokit\" (next to dist).\n *\n * The env var `THEOKIT_OPENAPI_SERVERS` (CSV of URLs) overrides\n * `servers[].url` at emit time without rebuilding the config.\n */\n openapi: z\n .object({\n servers: z\n .array(\n z.object({\n url: z.url(),\n description: z.string().optional(),\n }),\n )\n .default([{ url: 'http://localhost:3000', description: 'Local development' }]),\n specVersion: z.enum(['3.1.0', '3.0.3']).default('3.1.0'),\n title: z.string().default('TheoKit App'),\n version: z.string().default('0.0.0'),\n outDir: z.string().default('.theokit'),\n })\n .optional(),\n /**\n * G5 T1.3 — error envelope transformer hook (blueprint ADR D3).\n *\n * When present, runs at framework error-boundary time to enrich the\n * envelope with consumer-defined extensions (`hint`, custom telemetry\n * tags, etc.) BEFORE the envelope is serialized to the client. The\n * function signature is preserved via the explicit `FormatErrorHook`\n * type — TS inference flows from `theo.config.ts` into `@theo/client`\n * codegen and `@theokit/ui` AgentErrorCard consumers.\n *\n * Use `z.custom<FormatErrorHook>(...)` because Zod's built-in\n * `z.function()` discards its TS signature after parse; `z.custom`\n * with a function-typed runtime guard preserves the call-site type\n * without trading off Zod runtime validation.\n */\n formatError: z\n .custom<FormatErrorHook>((val) => typeof val === 'function', {\n message: 'formatError must be a function',\n })\n .optional(),\n })\n // EC-2 fix: cross-config refine — no service may share TheoKit's web port.\n .refine((cfg) => !Object.values(cfg.services).some((s) => s.port === cfg.port), {\n message: 'service.port collides with TheoKit web port — change one of them',\n path: ['services'],\n })\n\nexport type TheoConfig = z.infer<typeof theoConfigSchema>\n\n// Silence unused-import warnings for type-only re-exports — TS strips at compile,\n// but exports above re-introduce them for downstream consumers.\ntype _FormatErrorContext = FormatErrorContext\n","/**\n * The `@theokit/ui` theme name — a contract shared by the config schema, the entry generators and\n * the Vite plugin's detector.\n *\n * It lives in `core/contracts/` because those three sit in different modules that may not depend on\n * one another: `config/` and `router/` are allowed to reach into `core/` only. Before this file the\n * union was written out separately in all three places, and all three drifted from what the design\n * system actually ships.\n */\n\n/**\n * Theme names `@theokit/ui` ships today — an autocomplete hint, NOT the accepted set.\n *\n * The accepted set used to be exactly `'violet-forge' | 'noir' | 'paper'`, and two of those three\n * were never real: the design system has no `noir` and no `paper`. So the only value config\n * validation accepted was the default, and every genuine theme — plus anything from\n * `defineTheme()` — was rejected.\n *\n * A closed union here is a copy of another package's catalogue; it rots the moment that package\n * ships a theme. This list is therefore advisory, and {@link TheoUiTheme} stays open. The\n * authoritative list is `builtinThemes`, exported by `@theokit/ui`.\n */\nexport type BuiltinThemeName =\n | 'violet-forge'\n | 'falcon-red'\n | 'classic-paper'\n | 'aurora-terminal'\n | 'vercel-mono'\n | 'github-dark'\n | 'dracula'\n | 'one-dark'\n | 'anthropic-style'\n | 'openai-style'\n | 'linear-glass'\n\n/**\n * A theme name. Built-ins autocomplete; a custom theme from `defineTheme()` is equally valid.\n *\n * `(string & {})` is the idiomatic way to keep literal suggestions on an open union — without it\n * TypeScript widens the whole type to `string` and the hints disappear.\n */\nexport type TheoUiTheme = BuiltinThemeName | (string & {})\n\n/** How fonts are delivered — bundled with the app, or fetched from a CDN. */\nexport type TheoUiFonts = 'bundled' | 'cdn'\n\n/**\n * The shape a theme name must have — mirrors the pattern `@theokit/ui`'s `ThemeProvider` enforces\n * before it writes `[data-theme=\"<name>\"]`.\n *\n * Validating here is not cosmetic. The value is interpolated into the generated entry\n * (`defaultTheme: '<name>'`) and into a CSS selector, so an unchecked name is a code-injection\n * vector — and anything this rejects would be rejected by the provider anyway, so the developer\n * gets the error at config time instead of at render time.\n */\nexport const THEME_NAME_PATTERN = /^[a-z][a-z0-9-]*$/\n"],"mappings":"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","names":[]}
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
import "tsx/esm";
|
|
3
3
|
import {
|
|
4
4
|
buildSecurityHeaders
|
|
5
|
-
} from "./chunk-
|
|
5
|
+
} from "./chunk-VV2VU3LJ.js";
|
|
6
6
|
|
|
7
7
|
// src/adapters/deployed-cors.ts
|
|
8
8
|
var UnserializableCorsOriginError = class extends Error {
|
|
@@ -185,4 +185,4 @@ export {
|
|
|
185
185
|
renderSecurityHeadersConfigLiteral,
|
|
186
186
|
describeDeployedSecurityHeaders
|
|
187
187
|
};
|
|
188
|
-
//# sourceMappingURL=chunk-
|
|
188
|
+
//# sourceMappingURL=chunk-VPX3MS5D.js.map
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
import "tsx/esm";
|
|
3
3
|
|
|
4
4
|
// src/core/contracts/security-headers.ts
|
|
5
|
-
var DEFAULT_CSP = "default-src 'self'; script-src 'self'; style-src 'self' 'unsafe-inline'; img-src 'self' data: blob:; font-src 'self' data:; connect-src 'self' ws: wss:; frame-ancestors 'none'; report-uri /__theo/csp-report";
|
|
5
|
+
var DEFAULT_CSP = "default-src 'self'; script-src 'self'; style-src 'self' 'unsafe-inline'; img-src 'self' data: blob:; media-src 'self' data: blob:; font-src 'self' data:; connect-src 'self' ws: wss:; frame-ancestors 'none'; report-uri /__theo/csp-report";
|
|
6
6
|
var DEFAULT_PERMISSIONS_POLICY = "geolocation=(), camera=(), microphone=(), payment=(), usb=(), accelerometer=(), gyroscope=()";
|
|
7
7
|
var DEFAULT_HSTS = "max-age=31536000; includeSubDomains";
|
|
8
8
|
function applyNonceToCsp(policy, nonce) {
|
|
@@ -81,4 +81,4 @@ export {
|
|
|
81
81
|
buildSecurityHeaders,
|
|
82
82
|
generateNonce
|
|
83
83
|
};
|
|
84
|
-
//# sourceMappingURL=chunk-
|
|
84
|
+
//# sourceMappingURL=chunk-VV2VU3LJ.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/core/contracts/security-headers.ts","../src/core/contracts/nonce.ts"],"sourcesContent":["/**\n * The security-header baseline, as a pure function of configuration.\n *\n * It lives in `core/contracts/` because **every** target needs it and none of it\n * is transport-specific: `buildSecurityHeaders` takes a config object and\n * returns `Record<string, string>`. `theokit start` writes that map onto a Node\n * `ServerResponse` (`server/security/security-headers.ts`); the six Web deploy\n * adapters write it onto a `Response` (`adapters/security-headers.ts`). Putting\n * it under `server/` made the second group import across a boundary the\n * dependency graph forbids — `adapters → server` is not a declared edge in\n * ADR-0001 v3 — and the fix is not to widen the rule but to notice that this\n * code was never server code.\n *\n * `core/contracts/<file>.ts` is the declared exception to the deep-import rule,\n * so both callers reach it directly and there is still exactly ONE definition of\n * what a configured header set means.\n *\n * Phase 6 — Default Security Headers (D4 / EC-2).\n *\n * Per-response security baseline. The framework applies these BEFORE the\n * route handler runs so a handler can still override via `res.setHeader`.\n *\n * EC-2 backward-compatibility: CSP ships in `report-only` mode by default\n * for 0.2.0. Existing apps with inline scripts or third-party CDN scripts\n * keep working but consumers see violation reports via their CSP report\n * collector (or browser DevTools). 0.3.0 will flip the default to\n * `enforce` after a release of visibility.\n */\n\n/**\n * Default Content-Security-Policy. Conservative-but-not-paralyzing:\n *\n * - default-src 'self' — every fetch falls back to same-origin\n * - script-src 'self' — T6.1 (0.3.0): `'unsafe-inline'`\n * dropped. The SSR pipeline issues a\n * per-request nonce that REPLACES\n * this directive at runtime\n * (`'nonce-<token>'`). For static /\n * non-SSR contexts where no nonce is\n * available, the policy is strict-\n * no-inline — user inline scripts\n * must be migrated to external\n * `<script src=\"...\">` or threaded\n * through `ctx.nonce`.\n * - style-src 'self' 'unsafe-inline' — Tailwind + TheoUI use style attrs\n * in animation directives\n * - img-src 'self' data: blob: — supports inline data URIs, blobs\n * from canvas exports\n * - media-src 'self' data: blob: — same reasoning for audio/video the app\n * generated itself. Absent until #553:\n * `<audio>` fell back to default-src\n * and a blob: from plugin-voice's TTS\n * was blocked in the browser\n * - font-src 'self' data: — Geist fonts inline-base64\n * - connect-src 'self' ws: wss: — WebSocket dev HMR + agent streams\n * - frame-ancestors 'none' — clickjacking defense\n */\n/**\n * T5.1 — default CSP includes the built-in report endpoint so violations\n * are visible without extra config. Apps that ship a custom `csp` string\n * override the report-uri.\n */\nexport const DEFAULT_CSP =\n \"default-src 'self'; \" +\n \"script-src 'self'; \" +\n \"style-src 'self' 'unsafe-inline'; \" +\n \"img-src 'self' data: blob:; \" +\n \"media-src 'self' data: blob:; \" +\n \"font-src 'self' data:; \" +\n \"connect-src 'self' ws: wss:; \" +\n \"frame-ancestors 'none'; \" +\n 'report-uri /__theo/csp-report'\n\n/**\n * T1.1 — Default Permissions-Policy header (default-deny stance).\n *\n * Disables sensitive Web APIs that the vast majority of apps don't use.\n * Apps that DO need any of these opt in by overriding `permissionsPolicy`\n * in `config.security.headers`.\n *\n * The seven features listed are the most-abused for: tracking\n * (geolocation, accelerometer, gyroscope), spyware (camera, microphone),\n * fraud (payment), and hardware exfiltration (usb).\n *\n * Aligns with Mozilla baseline + OWASP Secure Headers + Lighthouse PWA.\n */\nexport const DEFAULT_PERMISSIONS_POLICY =\n 'geolocation=(), camera=(), microphone=(), payment=(), usb=(), accelerometer=(), gyroscope=()'\n\nexport type CspMode = 'enforce' | 'report-only' | 'off'\n\nexport interface SecurityHeadersConfig {\n /**\n * Custom CSP policy string. When set, replaces the default verbatim.\n * Pass `false` to disable CSP entirely (alias for `cspMode: 'off'`).\n */\n csp?: string | false\n /**\n * Enforcement mode for CSP. Default `report-only` for 0.2.0 (EC-2).\n * 0.3.0 will default to `enforce`.\n */\n cspMode?: CspMode\n /**\n * Strict-Transport-Security value. Defaults to\n * `max-age=31536000; includeSubDomains` in production. Pass `false` to\n * suppress (e.g. internal LANs without TLS).\n */\n hsts?: string | false\n /** X-Frame-Options. Default DENY. */\n frameOptions?: 'DENY' | 'SAMEORIGIN'\n /** X-Content-Type-Options. Default `nosniff`. */\n contentTypeOptions?: 'nosniff'\n /** Referrer-Policy. Default `strict-origin-when-cross-origin`. */\n referrerPolicy?: string\n /**\n * T1.1 — Permissions-Policy directive string. When set, replaces the\n * default verbatim (no merge — see ADR-EC-12). Pass `false` to disable\n * the header entirely. Schema-level refinement rejects any string\n * containing CR/LF (EC-3 — CWE-113 HTTP Response Splitting mitigation).\n */\n permissionsPolicy?: string | false\n}\n\nexport interface SecurityEnv {\n production: boolean\n}\n\n/**\n * T4.1 — Per-request options passed by the SSR pipeline.\n *\n * - `nonce`: when set, the framework substitutes the `'unsafe-inline'`\n * token in `script-src` with `'nonce-<nonce>'`. EC-3 forces\n * `Cache-Control: private, no-store` so a CDN cannot cache the HTML\n * (carrying one nonce) and re-serve it with a freshly-generated CSP\n * header (carrying a different nonce).\n * - `prerender`: when true, the nonce is IGNORED. Prerendered HTML is\n * generated at build time with no nonce in the script tags; mixing a\n * runtime nonce in the header would block every script. EC-4.\n */\nexport interface SecurityHeadersOptions {\n nonce?: string\n prerender?: boolean\n}\n\nconst DEFAULT_HSTS = 'max-age=31536000; includeSubDomains'\n\n/**\n * Apply a nonce to the script-src directive of an existing CSP policy\n * string. Replaces `'unsafe-inline'` (if present) with `'nonce-<value>'`;\n * otherwise appends the nonce directive to the script-src line.\n */\nfunction applyNonceToCsp(policy: string, nonce: string): string {\n return policy\n .split(';')\n .map((directive) => {\n const trimmed = directive.trim()\n if (!trimmed.startsWith('script-src')) return directive\n if (trimmed.includes(\"'unsafe-inline'\")) {\n return directive.replace(\"'unsafe-inline'\", `'nonce-${nonce}'`)\n }\n return `${directive} 'nonce-${nonce}'`\n })\n .join(';')\n}\n\n/**\n * Apply Content-Security-Policy header(s) to `out`. Extracted from\n * `buildSecurityHeaders` to keep that function's complexity within ceiling.\n * Handles the four shapes:\n * csp: false → opt out\n * cspMode: 'off' → opt out\n * cspMode: 'enforce' → Content-Security-Policy (T6.1 default for 0.3.0)\n * cspMode: 'report-only' → Content-Security-Policy-Report-Only (legacy 0.2.x)\n */\nfunction applyCsp(\n out: Record<string, string>,\n config: SecurityHeadersConfig,\n effectiveNonce: string | undefined,\n): void {\n if (config.csp === false || config.cspMode === 'off') return\n let policy = typeof config.csp === 'string' ? config.csp : DEFAULT_CSP\n if (effectiveNonce) {\n policy = applyNonceToCsp(policy, effectiveNonce)\n }\n // T6.1 — default flipped from 'report-only' to 'enforce' for 0.3.0.\n const mode: CspMode = config.cspMode ?? 'enforce'\n if (mode === 'enforce') {\n out['Content-Security-Policy'] = policy\n } else {\n out['Content-Security-Policy-Report-Only'] = policy\n }\n}\n\n/**\n * Build the security headers map for a given config + env. Pure function —\n * returned object can be inspected, logged, or applied to a response.\n */\nexport function buildSecurityHeaders(\n config: SecurityHeadersConfig,\n env: SecurityEnv,\n options: SecurityHeadersOptions = {},\n): Record<string, string> {\n const out: Record<string, string> = {}\n\n // EC-4: prerendered routes must NOT receive a nonce — the build-time\n // HTML carries no nonce, so a runtime nonce would mismatch.\n const effectiveNonce = options.prerender ? undefined : options.nonce\n\n applyCsp(out, config, effectiveNonce)\n\n // X-Frame-Options\n out['X-Frame-Options'] = config.frameOptions ?? 'DENY'\n\n // X-Content-Type-Options\n out['X-Content-Type-Options'] = config.contentTypeOptions ?? 'nosniff'\n\n // Referrer-Policy\n out['Referrer-Policy'] = config.referrerPolicy ?? 'strict-origin-when-cross-origin'\n\n // T1.1 — Permissions-Policy. Default-deny on geo/camera/mic/payment/usb;\n // configurable via `permissionsPolicy`; suppressed via `permissionsPolicy: false`.\n if (config.permissionsPolicy !== false) {\n out['Permissions-Policy'] =\n typeof config.permissionsPolicy === 'string'\n ? config.permissionsPolicy\n : DEFAULT_PERMISSIONS_POLICY\n }\n\n // HSTS — production only, suppressible via hsts: false\n if (env.production && config.hsts !== false) {\n out['Strict-Transport-Security'] = typeof config.hsts === 'string' ? config.hsts : DEFAULT_HSTS\n }\n\n // EC-3: when a nonce is in play, the response carries a one-shot CSP\n // header AND inline scripts in the HTML body. A CDN that caches the\n // HTML and proxies a fresh CSP per request would block every script\n // (nonces wouldn't match). Force no-store to prevent that class of\n // silent prod-only failure. Prerendered routes (which carry no nonce\n // by design — EC-4) are exempt; their HTML is meant to be cacheable.\n if (effectiveNonce) {\n out['Cache-Control'] = 'private, no-store'\n }\n\n return out\n}\n","/**\n * The per-request CSP nonce, minted the same way on every target.\n *\n * It lives in `core/contracts/` for the same reason\n * `core/contracts/security-headers.ts` does: `theokit start` needs it\n * (`cli/commands/start/request-handler.ts`) and so does the streamed Cloudflare\n * worker, which is the one deploy path that renders HTML at request time and can\n * put the same value on the script tags it emits. `adapters → server` is not an\n * edge in the module DAG (ADR-0001 v3), and a Web-Crypto call that returns a\n * base64 string was never server code.\n *\n * T4.1 — Per-request CSP nonce generation.\n *\n * Returns a 22–24 character base64-encoded string carrying 16 bytes of\n * cryptographic entropy. Used by the SSR pipeline to nonce the inline\n * hydration data script so the default CSP can drop `'unsafe-inline'`\n * from `script-src` in 0.3.0.\n *\n * Runtime portability: prefers Web Crypto (`globalThis.crypto`) because\n * it is available on every target runtime (Node 19+, Bun, Deno, Vercel\n * Edge, Cloudflare Workers). Falls back to `node:crypto` for older Node\n * builds where `globalThis.crypto` is absent.\n *\n * NOT a security primitive in the cryptographic sense — the nonce is a\n * one-shot, single-request value that defeats trivial XSS injection by\n * making the attacker guess a 128-bit string per request. It is NOT\n * suitable for signing or session tokens.\n */\n\nfunction bytesToBase64(bytes: Uint8Array): string {\n // Prefer Buffer when available (Node, Bun) — its base64 encoder is fast\n // and well-tested. In Edge runtimes that lack Buffer, fall back to the\n // standard btoa(String.fromCharCode(...)) trick.\n if (typeof Buffer !== 'undefined') {\n return Buffer.from(bytes).toString('base64')\n }\n let binary = ''\n for (const b of bytes) {\n binary += String.fromCharCode(b)\n }\n // `btoa` exists in browsers + edge runtimes; if it doesn't, the caller\n // is on a JS runtime we don't support — let the ReferenceError bubble.\n return btoa(binary)\n}\n\n// CR-027 fix: the previous fallback path used `require('node:crypto')`,\n// which throws ReferenceError in strict ESM contexts (Bun, Deno, Vercel\n// Edge) when reached. Web Crypto has been a hard requirement since Node\n// 19; for older Node we now throw a clear error at module load time\n// instead of failing on first SSR request.\nlet cachedWebCrypto: Crypto | null | undefined\n\nfunction getWebCrypto(): Crypto {\n if (cachedWebCrypto === undefined) {\n const candidate = (globalThis as { crypto?: Crypto }).crypto\n cachedWebCrypto =\n candidate && typeof candidate.getRandomValues === 'function' ? candidate : null\n }\n if (!cachedWebCrypto) {\n throw new Error(\n 'generateNonce: Web Crypto unavailable. TheoKit requires Node.js 19+, Bun, Deno, ' +\n 'or any modern Edge runtime where `globalThis.crypto.getRandomValues` is present.',\n )\n }\n return cachedWebCrypto\n}\n\nexport function generateNonce(): string {\n const buf = new Uint8Array(16)\n getWebCrypto().getRandomValues(buf)\n return bytesToBase64(buf)\n}\n"],"mappings":";;;;AA8DO,IAAM,cACX;AAuBK,IAAM,6BACX;AAyDF,IAAM,eAAe;AAOrB,SAAS,gBAAgB,QAAgB,OAAuB;AAC9D,SAAO,OACJ,MAAM,GAAG,EACT,IAAI,CAAC,cAAc;AAClB,UAAM,UAAU,UAAU,KAAK;AAC/B,QAAI,CAAC,QAAQ,WAAW,YAAY,EAAG,QAAO;AAC9C,QAAI,QAAQ,SAAS,iBAAiB,GAAG;AACvC,aAAO,UAAU,QAAQ,mBAAmB,UAAU,KAAK,GAAG;AAAA,IAChE;AACA,WAAO,GAAG,SAAS,WAAW,KAAK;AAAA,EACrC,CAAC,EACA,KAAK,GAAG;AACb;AAWA,SAAS,SACP,KACA,QACA,gBACM;AACN,MAAI,OAAO,QAAQ,SAAS,OAAO,YAAY,MAAO;AACtD,MAAI,SAAS,OAAO,OAAO,QAAQ,WAAW,OAAO,MAAM;AAC3D,MAAI,gBAAgB;AAClB,aAAS,gBAAgB,QAAQ,cAAc;AAAA,EACjD;AAEA,QAAM,OAAgB,OAAO,WAAW;AACxC,MAAI,SAAS,WAAW;AACtB,QAAI,yBAAyB,IAAI;AAAA,EACnC,OAAO;AACL,QAAI,qCAAqC,IAAI;AAAA,EAC/C;AACF;AAMO,SAAS,qBACd,QACA,KACA,UAAkC,CAAC,GACX;AACxB,QAAM,MAA8B,CAAC;AAIrC,QAAM,iBAAiB,QAAQ,YAAY,SAAY,QAAQ;AAE/D,WAAS,KAAK,QAAQ,cAAc;AAGpC,MAAI,iBAAiB,IAAI,OAAO,gBAAgB;AAGhD,MAAI,wBAAwB,IAAI,OAAO,sBAAsB;AAG7D,MAAI,iBAAiB,IAAI,OAAO,kBAAkB;AAIlD,MAAI,OAAO,sBAAsB,OAAO;AACtC,QAAI,oBAAoB,IACtB,OAAO,OAAO,sBAAsB,WAChC,OAAO,oBACP;AAAA,EACR;AAGA,MAAI,IAAI,cAAc,OAAO,SAAS,OAAO;AAC3C,QAAI,2BAA2B,IAAI,OAAO,OAAO,SAAS,WAAW,OAAO,OAAO;AAAA,EACrF;AAQA,MAAI,gBAAgB;AAClB,QAAI,eAAe,IAAI;AAAA,EACzB;AAEA,SAAO;AACT;;;ACvNA,SAAS,cAAc,OAA2B;AAIhD,MAAI,OAAO,WAAW,aAAa;AACjC,WAAO,OAAO,KAAK,KAAK,EAAE,SAAS,QAAQ;AAAA,EAC7C;AACA,MAAI,SAAS;AACb,aAAW,KAAK,OAAO;AACrB,cAAU,OAAO,aAAa,CAAC;AAAA,EACjC;AAGA,SAAO,KAAK,MAAM;AACpB;AAOA,IAAI;AAEJ,SAAS,eAAuB;AAC9B,MAAI,oBAAoB,QAAW;AACjC,UAAM,YAAa,WAAmC;AACtD,sBACE,aAAa,OAAO,UAAU,oBAAoB,aAAa,YAAY;AAAA,EAC/E;AACA,MAAI,CAAC,iBAAiB;AACpB,UAAM,IAAI;AAAA,MACR;AAAA,IAEF;AAAA,EACF;AACA,SAAO;AACT;AAEO,SAAS,gBAAwB;AACtC,QAAM,MAAM,IAAI,WAAW,EAAE;AAC7B,eAAa,EAAE,gBAAgB,GAAG;AAClC,SAAO,cAAc,GAAG;AAC1B;","names":[]}
|
|
@@ -19,6 +19,7 @@ var DEFAULT_REGISTRY = [
|
|
|
19
19
|
name: "openrouter",
|
|
20
20
|
envKey: "OPENROUTER_API_KEY",
|
|
21
21
|
baseUrl: "https://openrouter.ai/api/v1",
|
|
22
|
+
gateway: true,
|
|
22
23
|
priority: 1
|
|
23
24
|
},
|
|
24
25
|
{
|
|
@@ -73,6 +74,13 @@ function declaredPrefixOf(modelId) {
|
|
|
73
74
|
if (slash <= 0) return void 0;
|
|
74
75
|
return modelId.slice(0, slash);
|
|
75
76
|
}
|
|
77
|
+
function gatewayHint(declared, modelId, registered) {
|
|
78
|
+
const gateway = registered.find(
|
|
79
|
+
(p) => p.gateway === true && p.name !== declared.name && p.envKey !== void 0 && (process.env[p.envKey] ?? "").length > 0
|
|
80
|
+
);
|
|
81
|
+
if (gateway?.envKey === void 0) return `, or change the model's provider prefix`;
|
|
82
|
+
return `, or use "${gateway.name}/${modelId}" to route it through ${gateway.name} (${gateway.envKey} is set, and ${gateway.name} serves this model id)`;
|
|
83
|
+
}
|
|
76
84
|
function takesCredential(desc) {
|
|
77
85
|
return desc.envKey !== void 0;
|
|
78
86
|
}
|
|
@@ -91,7 +99,7 @@ function resolveProvider(modelId, options) {
|
|
|
91
99
|
return { name: declared.name, apiKey, baseUrl: baseUrlOf(declared) };
|
|
92
100
|
}
|
|
93
101
|
throw new Error(
|
|
94
|
-
`Model "${modelId}" declares provider "${declared.name}", but ${declared.envKey} is not set. Set ${declared.envKey},
|
|
102
|
+
`Model "${modelId}" declares provider "${declared.name}", but ${declared.envKey} is not set. Set ${declared.envKey}${gatewayHint(declared, modelId, sorted)}.`
|
|
95
103
|
);
|
|
96
104
|
}
|
|
97
105
|
const unregisteredPrefix = declared === void 0 ? declaredPrefixOf(modelId) : void 0;
|
|
@@ -179,4 +187,4 @@ export {
|
|
|
179
187
|
getApprovalRegistry,
|
|
180
188
|
resolveProvider
|
|
181
189
|
};
|
|
182
|
-
//# sourceMappingURL=chunk-
|
|
190
|
+
//# sourceMappingURL=chunk-WFIAYPBH.js.map
|