9router 0.3.76 → 0.3.79
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/app/.next/BUILD_ID +1 -1
- package/app/.next/app-path-routes-manifest.json +3 -3
- package/app/.next/build-manifest.json +2 -2
- package/app/.next/prerender-manifest.json +3 -3
- package/app/.next/server/app/(dashboard)/dashboard/basic-chat/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/cli-tools/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/combos/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/console-log/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/endpoint/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/media-providers/[kind]/[id]/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/media-providers/[kind]/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/mitm/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/profile/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/providers/[id]/page.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/providers/[id]/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/providers/new/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/providers/page.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/providers/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/proxy-pools/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/quota/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/translator/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/usage/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/_global-error/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/_global-error.html +1 -1
- package/app/.next/server/app/_global-error.rsc +1 -1
- package/app/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
- package/app/.next/server/app/_global-error.segments/_global-error/__PAGE__.segment.rsc +1 -1
- package/app/.next/server/app/_global-error.segments/_global-error.segment.rsc +1 -1
- package/app/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
- package/app/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
- package/app/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
- package/app/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/_not-found.html +1 -1
- package/app/.next/server/app/_not-found.rsc +3 -3
- package/app/.next/server/app/_not-found.segments/_full.segment.rsc +3 -3
- package/app/.next/server/app/_not-found.segments/_head.segment.rsc +1 -1
- package/app/.next/server/app/_not-found.segments/_index.segment.rsc +3 -3
- package/app/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +1 -1
- package/app/.next/server/app/_not-found.segments/_not-found.segment.rsc +1 -1
- package/app/.next/server/app/_not-found.segments/_tree.segment.rsc +1 -1
- package/app/.next/server/app/api/cli-tools/antigravity-mitm/alias/route.js +2 -2
- package/app/.next/server/app/api/cli-tools/antigravity-mitm/route.js +1 -1
- package/app/.next/server/app/api/cli-tools/claude-settings/route.js +2 -2
- package/app/.next/server/app/api/cli-tools/codex-settings/route.js +3 -3
- package/app/.next/server/app/api/cli-tools/copilot-settings/route.js +2 -2
- package/app/.next/server/app/api/cli-tools/droid-settings/route.js +2 -2
- package/app/.next/server/app/api/cli-tools/openclaw-settings/route.js +2 -2
- package/app/.next/server/app/api/cli-tools/opencode-settings/route.js +2 -2
- package/app/.next/server/app/api/provider-nodes/route.js +1 -1
- package/app/.next/server/app/api/providers/[id]/models/route.js +1 -1
- package/app/.next/server/app/api/providers/[id]/test-models/route.js +1 -1
- package/app/.next/server/app/api/providers/validate/route.js +1 -1
- package/app/.next/server/app/api/translator/translate/route.js +1 -1
- package/app/.next/server/app/api/tunnel/disable/route.js +1 -1
- package/app/.next/server/app/api/tunnel/enable/route.js +1 -1
- package/app/.next/server/app/api/tunnel/status/route.js +1 -1
- package/app/.next/server/app/api/usage/providers/route.js +1 -1
- package/app/.next/server/app/api/v1/models/route.js +1 -1
- package/app/.next/server/app/api/v1beta/models/route.js +1 -1
- package/app/.next/server/app/api/version/route.js +1 -1
- package/app/.next/server/app/callback/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/callback.html +1 -1
- package/app/.next/server/app/callback.rsc +3 -3
- package/app/.next/server/app/callback.segments/_full.segment.rsc +3 -3
- package/app/.next/server/app/callback.segments/_head.segment.rsc +1 -1
- package/app/.next/server/app/callback.segments/_index.segment.rsc +3 -3
- package/app/.next/server/app/callback.segments/_tree.segment.rsc +1 -1
- package/app/.next/server/app/callback.segments/callback/__PAGE__.segment.rsc +1 -1
- package/app/.next/server/app/callback.segments/callback.segment.rsc +1 -1
- package/app/.next/server/app/dashboard/basic-chat.html +1 -1
- package/app/.next/server/app/dashboard/basic-chat.rsc +5 -5
- package/app/.next/server/app/dashboard/basic-chat.segments/!KGRhc2hib2FyZCk/dashboard/basic-chat/__PAGE__.segment.rsc +2 -2
- package/app/.next/server/app/dashboard/basic-chat.segments/!KGRhc2hib2FyZCk/dashboard/basic-chat.segment.rsc +1 -1
- package/app/.next/server/app/dashboard/basic-chat.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
- package/app/.next/server/app/dashboard/basic-chat.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
- package/app/.next/server/app/dashboard/basic-chat.segments/_full.segment.rsc +5 -5
- package/app/.next/server/app/dashboard/basic-chat.segments/_head.segment.rsc +1 -1
- package/app/.next/server/app/dashboard/basic-chat.segments/_index.segment.rsc +3 -3
- package/app/.next/server/app/dashboard/basic-chat.segments/_tree.segment.rsc +1 -1
- package/app/.next/server/app/dashboard/cli-tools.html +1 -1
- package/app/.next/server/app/dashboard/cli-tools.rsc +5 -5
- package/app/.next/server/app/dashboard/cli-tools.segments/!KGRhc2hib2FyZCk/dashboard/cli-tools/__PAGE__.segment.rsc +2 -2
- package/app/.next/server/app/dashboard/cli-tools.segments/!KGRhc2hib2FyZCk/dashboard/cli-tools.segment.rsc +1 -1
- package/app/.next/server/app/dashboard/cli-tools.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
- package/app/.next/server/app/dashboard/cli-tools.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
- package/app/.next/server/app/dashboard/cli-tools.segments/_full.segment.rsc +5 -5
- package/app/.next/server/app/dashboard/cli-tools.segments/_head.segment.rsc +1 -1
- package/app/.next/server/app/dashboard/cli-tools.segments/_index.segment.rsc +3 -3
- package/app/.next/server/app/dashboard/cli-tools.segments/_tree.segment.rsc +1 -1
- package/app/.next/server/app/dashboard/combos.html +1 -1
- package/app/.next/server/app/dashboard/combos.rsc +5 -5
- package/app/.next/server/app/dashboard/combos.segments/!KGRhc2hib2FyZCk/dashboard/combos/__PAGE__.segment.rsc +2 -2
- package/app/.next/server/app/dashboard/combos.segments/!KGRhc2hib2FyZCk/dashboard/combos.segment.rsc +1 -1
- package/app/.next/server/app/dashboard/combos.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
- package/app/.next/server/app/dashboard/combos.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
- package/app/.next/server/app/dashboard/combos.segments/_full.segment.rsc +5 -5
- package/app/.next/server/app/dashboard/combos.segments/_head.segment.rsc +1 -1
- package/app/.next/server/app/dashboard/combos.segments/_index.segment.rsc +3 -3
- package/app/.next/server/app/dashboard/combos.segments/_tree.segment.rsc +1 -1
- package/app/.next/server/app/dashboard/endpoint.html +1 -1
- package/app/.next/server/app/dashboard/endpoint.rsc +5 -5
- package/app/.next/server/app/dashboard/endpoint.segments/!KGRhc2hib2FyZCk/dashboard/endpoint/__PAGE__.segment.rsc +2 -2
- package/app/.next/server/app/dashboard/endpoint.segments/!KGRhc2hib2FyZCk/dashboard/endpoint.segment.rsc +1 -1
- package/app/.next/server/app/dashboard/endpoint.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
- package/app/.next/server/app/dashboard/endpoint.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
- package/app/.next/server/app/dashboard/endpoint.segments/_full.segment.rsc +5 -5
- package/app/.next/server/app/dashboard/endpoint.segments/_head.segment.rsc +1 -1
- package/app/.next/server/app/dashboard/endpoint.segments/_index.segment.rsc +3 -3
- package/app/.next/server/app/dashboard/endpoint.segments/_tree.segment.rsc +1 -1
- package/app/.next/server/app/dashboard/mitm.html +1 -1
- package/app/.next/server/app/dashboard/mitm.rsc +5 -5
- package/app/.next/server/app/dashboard/mitm.segments/!KGRhc2hib2FyZCk/dashboard/mitm/__PAGE__.segment.rsc +2 -2
- package/app/.next/server/app/dashboard/mitm.segments/!KGRhc2hib2FyZCk/dashboard/mitm.segment.rsc +1 -1
- package/app/.next/server/app/dashboard/mitm.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
- package/app/.next/server/app/dashboard/mitm.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
- package/app/.next/server/app/dashboard/mitm.segments/_full.segment.rsc +5 -5
- package/app/.next/server/app/dashboard/mitm.segments/_head.segment.rsc +1 -1
- package/app/.next/server/app/dashboard/mitm.segments/_index.segment.rsc +3 -3
- package/app/.next/server/app/dashboard/mitm.segments/_tree.segment.rsc +1 -1
- package/app/.next/server/app/dashboard/profile.html +1 -1
- package/app/.next/server/app/dashboard/profile.rsc +5 -5
- package/app/.next/server/app/dashboard/profile.segments/!KGRhc2hib2FyZCk/dashboard/profile/__PAGE__.segment.rsc +2 -2
- package/app/.next/server/app/dashboard/profile.segments/!KGRhc2hib2FyZCk/dashboard/profile.segment.rsc +1 -1
- package/app/.next/server/app/dashboard/profile.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
- package/app/.next/server/app/dashboard/profile.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
- package/app/.next/server/app/dashboard/profile.segments/_full.segment.rsc +5 -5
- package/app/.next/server/app/dashboard/profile.segments/_head.segment.rsc +1 -1
- package/app/.next/server/app/dashboard/profile.segments/_index.segment.rsc +3 -3
- package/app/.next/server/app/dashboard/profile.segments/_tree.segment.rsc +1 -1
- package/app/.next/server/app/dashboard/providers/new.html +1 -1
- package/app/.next/server/app/dashboard/providers/new.rsc +5 -5
- package/app/.next/server/app/dashboard/providers/new.segments/!KGRhc2hib2FyZCk/dashboard/providers/new/__PAGE__.segment.rsc +2 -2
- package/app/.next/server/app/dashboard/providers/new.segments/!KGRhc2hib2FyZCk/dashboard/providers/new.segment.rsc +1 -1
- package/app/.next/server/app/dashboard/providers/new.segments/!KGRhc2hib2FyZCk/dashboard/providers.segment.rsc +1 -1
- package/app/.next/server/app/dashboard/providers/new.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
- package/app/.next/server/app/dashboard/providers/new.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
- package/app/.next/server/app/dashboard/providers/new.segments/_full.segment.rsc +5 -5
- package/app/.next/server/app/dashboard/providers/new.segments/_head.segment.rsc +1 -1
- package/app/.next/server/app/dashboard/providers/new.segments/_index.segment.rsc +3 -3
- package/app/.next/server/app/dashboard/providers/new.segments/_tree.segment.rsc +1 -1
- package/app/.next/server/app/dashboard/providers.html +1 -1
- package/app/.next/server/app/dashboard/providers.rsc +5 -5
- package/app/.next/server/app/dashboard/providers.segments/!KGRhc2hib2FyZCk/dashboard/providers/__PAGE__.segment.rsc +2 -2
- package/app/.next/server/app/dashboard/providers.segments/!KGRhc2hib2FyZCk/dashboard/providers.segment.rsc +1 -1
- package/app/.next/server/app/dashboard/providers.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
- package/app/.next/server/app/dashboard/providers.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
- package/app/.next/server/app/dashboard/providers.segments/_full.segment.rsc +5 -5
- package/app/.next/server/app/dashboard/providers.segments/_head.segment.rsc +1 -1
- package/app/.next/server/app/dashboard/providers.segments/_index.segment.rsc +3 -3
- package/app/.next/server/app/dashboard/providers.segments/_tree.segment.rsc +1 -1
- package/app/.next/server/app/dashboard/proxy-pools.html +1 -1
- package/app/.next/server/app/dashboard/proxy-pools.rsc +5 -5
- package/app/.next/server/app/dashboard/proxy-pools.segments/!KGRhc2hib2FyZCk/dashboard/proxy-pools/__PAGE__.segment.rsc +2 -2
- package/app/.next/server/app/dashboard/proxy-pools.segments/!KGRhc2hib2FyZCk/dashboard/proxy-pools.segment.rsc +1 -1
- package/app/.next/server/app/dashboard/proxy-pools.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
- package/app/.next/server/app/dashboard/proxy-pools.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
- package/app/.next/server/app/dashboard/proxy-pools.segments/_full.segment.rsc +5 -5
- package/app/.next/server/app/dashboard/proxy-pools.segments/_head.segment.rsc +1 -1
- package/app/.next/server/app/dashboard/proxy-pools.segments/_index.segment.rsc +3 -3
- package/app/.next/server/app/dashboard/proxy-pools.segments/_tree.segment.rsc +1 -1
- package/app/.next/server/app/dashboard/quota.html +2 -2
- package/app/.next/server/app/dashboard/quota.rsc +6 -6
- package/app/.next/server/app/dashboard/quota.segments/!KGRhc2hib2FyZCk/dashboard/quota/__PAGE__.segment.rsc +3 -3
- package/app/.next/server/app/dashboard/quota.segments/!KGRhc2hib2FyZCk/dashboard/quota.segment.rsc +1 -1
- package/app/.next/server/app/dashboard/quota.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
- package/app/.next/server/app/dashboard/quota.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
- package/app/.next/server/app/dashboard/quota.segments/_full.segment.rsc +6 -6
- package/app/.next/server/app/dashboard/quota.segments/_head.segment.rsc +1 -1
- package/app/.next/server/app/dashboard/quota.segments/_index.segment.rsc +3 -3
- package/app/.next/server/app/dashboard/quota.segments/_tree.segment.rsc +1 -1
- package/app/.next/server/app/dashboard/settings/pricing/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/dashboard/settings/pricing.html +1 -1
- package/app/.next/server/app/dashboard/settings/pricing.rsc +3 -3
- package/app/.next/server/app/dashboard/settings/pricing.segments/_full.segment.rsc +3 -3
- package/app/.next/server/app/dashboard/settings/pricing.segments/_head.segment.rsc +1 -1
- package/app/.next/server/app/dashboard/settings/pricing.segments/_index.segment.rsc +3 -3
- package/app/.next/server/app/dashboard/settings/pricing.segments/_tree.segment.rsc +1 -1
- package/app/.next/server/app/dashboard/settings/pricing.segments/dashboard/settings/pricing/__PAGE__.segment.rsc +1 -1
- package/app/.next/server/app/dashboard/settings/pricing.segments/dashboard/settings/pricing.segment.rsc +1 -1
- package/app/.next/server/app/dashboard/settings/pricing.segments/dashboard/settings.segment.rsc +1 -1
- package/app/.next/server/app/dashboard/settings/pricing.segments/dashboard.segment.rsc +1 -1
- package/app/.next/server/app/dashboard/translator.html +1 -1
- package/app/.next/server/app/dashboard/translator.rsc +5 -5
- package/app/.next/server/app/dashboard/translator.segments/!KGRhc2hib2FyZCk/dashboard/translator/__PAGE__.segment.rsc +2 -2
- package/app/.next/server/app/dashboard/translator.segments/!KGRhc2hib2FyZCk/dashboard/translator.segment.rsc +1 -1
- package/app/.next/server/app/dashboard/translator.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
- package/app/.next/server/app/dashboard/translator.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
- package/app/.next/server/app/dashboard/translator.segments/_full.segment.rsc +5 -5
- package/app/.next/server/app/dashboard/translator.segments/_head.segment.rsc +1 -1
- package/app/.next/server/app/dashboard/translator.segments/_index.segment.rsc +3 -3
- package/app/.next/server/app/dashboard/translator.segments/_tree.segment.rsc +1 -1
- package/app/.next/server/app/dashboard/usage.html +1 -1
- package/app/.next/server/app/dashboard/usage.rsc +5 -5
- package/app/.next/server/app/dashboard/usage.segments/!KGRhc2hib2FyZCk/dashboard/usage/__PAGE__.segment.rsc +2 -2
- package/app/.next/server/app/dashboard/usage.segments/!KGRhc2hib2FyZCk/dashboard/usage.segment.rsc +1 -1
- package/app/.next/server/app/dashboard/usage.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
- package/app/.next/server/app/dashboard/usage.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
- package/app/.next/server/app/dashboard/usage.segments/_full.segment.rsc +5 -5
- package/app/.next/server/app/dashboard/usage.segments/_head.segment.rsc +1 -1
- package/app/.next/server/app/dashboard/usage.segments/_index.segment.rsc +3 -3
- package/app/.next/server/app/dashboard/usage.segments/_tree.segment.rsc +1 -1
- package/app/.next/server/app/dashboard.html +1 -1
- package/app/.next/server/app/dashboard.rsc +5 -5
- package/app/.next/server/app/dashboard.segments/!KGRhc2hib2FyZCk/dashboard/__PAGE__.segment.rsc +2 -2
- package/app/.next/server/app/dashboard.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
- package/app/.next/server/app/dashboard.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
- package/app/.next/server/app/dashboard.segments/_full.segment.rsc +5 -5
- package/app/.next/server/app/dashboard.segments/_head.segment.rsc +1 -1
- package/app/.next/server/app/dashboard.segments/_index.segment.rsc +3 -3
- package/app/.next/server/app/dashboard.segments/_tree.segment.rsc +1 -1
- package/app/.next/server/app/index.html +1 -1
- package/app/.next/server/app/index.rsc +3 -3
- package/app/.next/server/app/index.segments/__PAGE__.segment.rsc +1 -1
- package/app/.next/server/app/index.segments/_full.segment.rsc +3 -3
- package/app/.next/server/app/index.segments/_head.segment.rsc +1 -1
- package/app/.next/server/app/index.segments/_index.segment.rsc +3 -3
- package/app/.next/server/app/index.segments/_tree.segment.rsc +1 -1
- package/app/.next/server/app/landing/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/landing.html +1 -1
- package/app/.next/server/app/landing.rsc +3 -3
- package/app/.next/server/app/landing.segments/_full.segment.rsc +3 -3
- package/app/.next/server/app/landing.segments/_head.segment.rsc +1 -1
- package/app/.next/server/app/landing.segments/_index.segment.rsc +3 -3
- package/app/.next/server/app/landing.segments/_tree.segment.rsc +1 -1
- package/app/.next/server/app/landing.segments/landing/__PAGE__.segment.rsc +1 -1
- package/app/.next/server/app/landing.segments/landing.segment.rsc +1 -1
- package/app/.next/server/app/login/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/login.html +1 -1
- package/app/.next/server/app/login.rsc +4 -4
- package/app/.next/server/app/login.segments/_full.segment.rsc +4 -4
- package/app/.next/server/app/login.segments/_head.segment.rsc +1 -1
- package/app/.next/server/app/login.segments/_index.segment.rsc +3 -3
- package/app/.next/server/app/login.segments/_tree.segment.rsc +1 -1
- package/app/.next/server/app/login.segments/login/__PAGE__.segment.rsc +2 -2
- package/app/.next/server/app/login.segments/login.segment.rsc +1 -1
- package/app/.next/server/app/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app-paths-manifest.json +3 -3
- package/app/.next/server/chunks/1021.js +1 -1
- package/app/.next/server/chunks/1574.js +1 -1
- package/app/.next/server/chunks/2049.js +1 -1
- package/app/.next/server/chunks/242.js +1 -1
- package/app/.next/server/chunks/3159.js +1 -1
- package/app/.next/server/chunks/3437.js +1 -1
- package/app/.next/server/chunks/450.js +3 -3
- package/app/.next/server/chunks/4891.js +1 -1
- package/app/.next/server/chunks/6502.js +1 -1
- package/app/.next/server/chunks/8202.js +3 -3
- package/app/.next/server/chunks/9489.js +1 -1
- package/app/.next/server/middleware-build-manifest.js +1 -1
- package/app/.next/server/pages/404.html +1 -1
- package/app/.next/server/pages/500.html +1 -1
- package/app/.next/server/server-reference-manifest.js +1 -1
- package/app/.next/server/server-reference-manifest.json +1 -1
- package/app/.next/static/chunks/{4156-3f71ff6f6ba6ba05.js → 4156-95873d034d9be208.js} +3 -3
- package/app/.next/static/chunks/505-5dea9cf33d2883b7.js +1 -0
- package/app/.next/static/chunks/7400-944f5945f4b469ce.js +15 -0
- package/app/.next/static/chunks/{8035-20ab85a50b665aaf.js → 8035-d85b135ff3c41e36.js} +1 -1
- package/app/.next/static/chunks/app/(dashboard)/dashboard/providers/[id]/page-d099eadbb0522614.js +1 -0
- package/app/.next/static/chunks/app/(dashboard)/dashboard/providers/page-09e7d6bd4d08202c.js +1 -0
- package/app/package.json +1 -1
- package/app/src/mitm/server.js +1 -1
- package/package.json +1 -1
- package/app/.next/static/chunks/505-a36fddd76f7e8527.js +0 -1
- package/app/.next/static/chunks/7400-a5c928f6fdd4565c.js +0 -15
- package/app/.next/static/chunks/app/(dashboard)/dashboard/providers/[id]/page-48b389fbdc1f0080.js +0 -1
- package/app/.next/static/chunks/app/(dashboard)/dashboard/providers/page-9d13181d51f5e656.js +0 -1
- /package/app/.next/static/{U9bncx-XOFYaNG7IeViVS → _1cT7G6qqsI_sqV4bRUa6}/_buildManifest.js +0 -0
- /package/app/.next/static/{U9bncx-XOFYaNG7IeViVS → _1cT7G6qqsI_sqV4bRUa6}/_ssgManifest.js +0 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[8460],{43007:(e,t,s)=>{Promise.resolve().then(s.bind(s,69692))},69692:(e,t,s)=>{"use strict";s.r(t),s.d(t,{default:()=>b});var r=s(73365),a=s(1521),l=s(86447),i=s.n(l),n=s(74156),o=s(68266),d=s(43202),c=s(82495),p=s(99568),m=s.n(p),x=s(14793);let u={available:{icon:"check_circle",color:"#22c55e",label:"Available"},cooldown:{icon:"schedule",color:"#f59e0b",label:"Cooldown"},unavailable:{icon:"error",color:"#ef4444",label:"Unavailable"},unknown:{icon:"help",color:"#6b7280",label:"Unknown"}};function h(){let[e,t]=(0,a.useState)(null),[s,l]=(0,a.useState)(!0),[i,o]=(0,a.useState)(!1),[d,c]=(0,a.useState)(null),p=(0,a.useRef)(null),m=(0,x.i)(),h=(0,a.useCallback)(async()=>{try{let e=await fetch("/api/models/availability");if(e.ok){let s=await e.json();t(s)}}catch{}finally{l(!1)}},[]);(0,a.useEffect)(()=>{h();let e=setInterval(h,3e4);return()=>clearInterval(e)},[h]),(0,a.useEffect)(()=>{let e=e=>{p.current&&!p.current.contains(e.target)&&o(!1)};return i&&document.addEventListener("mousedown",e),()=>document.removeEventListener("mousedown",e)},[i]);let f=async(e,t)=>{c(`${e}:${t}`);try{(await fetch("/api/models/availability",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({action:"clearCooldown",provider:e,model:t})})).ok?(m.success(`Cooldown cleared for ${t}`),await h()):m.error("Failed to clear cooldown")}catch{m.error("Failed to clear cooldown")}finally{c(null)}};if(s)return null;let b=e?.models||[],v=0===(e?.unavailableCount||b.filter(e=>"available"!==e.status).length),g={};return b.forEach(e=>{if("available"===e.status)return;let t=e.provider||"unknown";g[t]||(g[t]=[]),g[t].push(e)}),(0,r.jsx)("div",{className:"relative",ref:p,children:i&&(0,r.jsxs)("div",{className:"absolute top-full right-0 mt-2 w-80 bg-surface border border-border rounded-xl shadow-2xl z-50 overflow-hidden",children:[(0,r.jsxs)("div",{className:"flex items-center justify-between px-4 py-3 border-b border-border bg-bg",children:[(0,r.jsxs)("div",{className:"flex items-center gap-2",children:[(0,r.jsx)("span",{className:"material-symbols-outlined text-[16px]",style:{color:v?"#22c55e":"#f59e0b"},children:v?"verified":"warning"}),(0,r.jsx)("span",{className:"text-sm font-semibold text-text-main",children:"Model Status"})]}),(0,r.jsx)("button",{onClick:h,className:"p-1 rounded-lg hover:bg-surface text-text-muted hover:text-text-main transition-colors",title:"Refresh",children:(0,r.jsx)("span",{className:"material-symbols-outlined text-[14px]",children:"refresh"})})]}),(0,r.jsx)("div",{className:"px-4 py-3 max-h-60 overflow-y-auto",children:v?(0,r.jsx)("p",{className:"text-sm text-text-muted text-center py-2",children:"All models are responding normally."}):(0,r.jsx)("div",{className:"flex flex-col gap-2.5",children:Object.entries(g).map(([e,t])=>(0,r.jsxs)("div",{children:[(0,r.jsx)("p",{className:"text-xs font-semibold text-text-main mb-1.5 capitalize",children:e}),(0,r.jsx)("div",{className:"flex flex-col gap-1",children:t.map(e=>{let t=u[e.status]||u.unknown,s=d===`${e.provider}:${e.model}`;return(0,r.jsxs)("div",{className:"flex items-center justify-between px-2.5 py-1.5 rounded-lg bg-surface/30",children:[(0,r.jsxs)("div",{className:"flex items-center gap-1.5 min-w-0",children:[(0,r.jsx)("span",{className:"material-symbols-outlined text-[14px] shrink-0",style:{color:t.color},children:t.icon}),(0,r.jsx)("span",{className:"font-mono text-xs text-text-main truncate",children:e.model})]}),"cooldown"===e.status&&(0,r.jsx)(n.$n,{size:"sm",variant:"ghost",onClick:()=>f(e.provider,e.model),disabled:s,className:"text-[10px] px-1.5! py-0.5! ml-2",children:s?"...":"Clear"})]},`${e.provider}-${e.model}`)})})]},e))})})]})})}function f(e,t,s){let a=[];if(e>0&&a.push((0,r.jsxs)(n.Ex,{variant:"success",size:"sm",dot:!0,children:[e," Connected"]},"connected")),t>0){let e=s?`${t} Error (${s})`:`${t} Error`;a.push((0,r.jsx)(n.Ex,{variant:"error",size:"sm",dot:!0,children:e},"error"))}return 0===a.length?(0,r.jsx)("span",{className:"text-text-muted",children:"No connections"}):a}function b(){let[e,t]=(0,a.useState)([]),[s,l]=(0,a.useState)([]),[i,o]=(0,a.useState)(!0),[p,m]=(0,a.useState)(!1),[u,f]=(0,a.useState)(!1),[b,C]=(0,a.useState)(null),[k,T]=(0,a.useState)(null),w=(0,x.i)();(0,a.useEffect)(()=>{(async()=>{try{let[e,s]=await Promise.all([fetch("/api/providers"),fetch("/api/provider-nodes")]),r=await e.json(),a=await s.json();e.ok&&t(r.connections||[]),s.ok&&l(a.nodes||[])}catch(e){console.log("Error fetching data:",e)}finally{o(!1)}})()},[]);let A=(t,s)=>{let r=e.filter(e=>e.provider===t&&e.authType===s),a=e=>{let t=Object.entries(e).some(([e,t])=>e.startsWith("modelLock_")&&t&&new Date(t).getTime()>Date.now());return"unavailable"!==e.testStatus||t?e.testStatus:"active"},l=r.filter(e=>{let t=a(e);return"active"===t||"success"===t}).length,i=r.filter(e=>{let t=a(e);return"error"===t||"expired"===t||"unavailable"===t}),n=i.length,o=r.length,d=o>0&&r.every(e=>!1===e.isActive),c=i.sort((e,t)=>new Date(t.lastErrorAt||0)-new Date(e.lastErrorAt||0))[0];return{connected:l,error:n,total:o,errorCode:c?function(e){if(!e)return null;let t=e.lastErrorType;if("runtime_error"===t)return"RUNTIME";if("upstream_auth_error"===t||"auth_missing"===t||"token_refresh_failed"===t||"token_expired"===t)return"AUTH";if("upstream_rate_limited"===t)return"429";if("upstream_unavailable"===t)return"5XX";if("network_error"===t)return"NET";let s=Number(e.errorCode);if(Number.isFinite(s)&&s>=400)return String(s);let r=function(e){if(!e)return null;let t=e.match(/\b([45]\d{2})\b/);return t?t[1]:"ERR"}(e.lastError);if("401"===r||"403"===r)return"AUTH";if(r&&"ERR"!==r)return r;let a=(e.lastError||"").toLowerCase();return a.includes("runtime")||a.includes("not runnable")||a.includes("not installed")?"RUNTIME":a.includes("invalid api key")||a.includes("token invalid")||a.includes("revoked")||a.includes("unauthorized")?"AUTH":"ERR"}(c):null,errorTime:c?.lastErrorAt?function(e){if(!e)return"";let t=Math.floor((Date.now()-new Date(e).getTime())/6e4);if(t<1)return"just now";if(t<60)return`${t}m ago`;let s=Math.floor(t/60);if(s<24)return`${s}h ago`;let r=Math.floor(s/24);return`${r}d ago`}(c.lastErrorAt):null,allDisabled:d}},I=async(s,r,a)=>{let l=e.filter(e=>e.provider===s&&e.authType===r);t(e=>e.map(e=>e.provider===s&&e.authType===r?{...e,isActive:a}:e)),await Promise.allSettled(l.map(e=>fetch(`/api/providers/${e.id}`,{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify({isActive:a})})))},E=async(e,t=null)=>{if(!b){C("provider"===e?t:e),T(null);try{let s=await fetch("/api/providers/test-batch",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({mode:e,providerId:t})}),r=await s.json();if(T(r),r.summary){let{passed:e,failed:t,total:s}=r.summary;0===t?w.success(`All ${s} tests passed`):w.warning(`${e}/${s} passed, ${t} failed`)}}catch(e){T({error:"Test request failed"}),w.error("Provider test failed")}finally{C(null)}}},$=s.filter(e=>"openai-compatible"===e.type).map(e=>({id:e.id,name:e.name||"OpenAI Compatible",color:"#10A37F",textIcon:"OC",apiType:e.apiType})),R=s.filter(e=>"anthropic-compatible"===e.type).map(e=>({id:e.id,name:e.name||"Anthropic Compatible",color:"#D97757",textIcon:"AC"}));return i?(0,r.jsxs)("div",{className:"flex flex-col gap-8",children:[(0,r.jsx)(n.Qv,{}),(0,r.jsx)(n.Qv,{})]}):(0,r.jsxs)("div",{className:"flex flex-col gap-6",children:[(0,r.jsxs)("div",{className:"flex flex-col gap-4",children:[(0,r.jsxs)("div",{className:"flex items-center justify-between",children:[(0,r.jsx)("h2",{className:"text-xl font-semibold flex items-center gap-2",children:"OAuth Providers"}),(0,r.jsxs)("div",{className:"flex items-center gap-2",children:[(0,r.jsx)(h,{}),(0,r.jsxs)("button",{onClick:()=>E("oauth"),disabled:!!b,className:`flex items-center gap-1.5 px-3 py-1.5 rounded-lg text-xs font-medium border transition-colors ${"oauth"===b?"bg-primary/20 border-primary/40 text-primary animate-pulse":"bg-bg border-border text-text-muted hover:text-text-main hover:border-primary/40"}`,title:"Test all OAuth connections","aria-label":"Test all OAuth connections",children:[(0,r.jsx)("span",{className:`material-symbols-outlined text-[14px]${"oauth"===b?" animate-spin":""}`,children:"oauth"===b?"sync":"play_arrow"}),"oauth"===b?"Testing...":"Test All"]})]})]}),(0,r.jsx)("div",{className:"grid grid-cols-1 sm:grid-cols-2 lg:grid-cols-3 xl:grid-cols-4 gap-4",children:Object.entries(d.zN).map(([e,t])=>(0,r.jsx)(v,{providerId:e,provider:t,stats:A(e,"oauth"),authType:"oauth",onToggle:t=>I(e,"oauth",t)},e))})]}),(0,r.jsxs)("div",{className:"flex flex-col gap-4",children:[(0,r.jsxs)("div",{className:"flex items-center justify-between",children:[(0,r.jsx)("h2",{className:"text-xl font-semibold flex items-center gap-2",children:"Free & Free Tier Providers"}),(0,r.jsxs)("button",{onClick:()=>E("free"),disabled:!!b,className:`flex items-center gap-1.5 px-3 py-1.5 rounded-lg text-xs font-medium border transition-colors ${"free"===b?"bg-primary/20 border-primary/40 text-primary animate-pulse":"bg-bg border-border text-text-muted hover:text-text-main hover:border-primary/40"}`,title:"Test all Free connections","aria-label":"Test all Free provider connections",children:[(0,r.jsx)("span",{className:`material-symbols-outlined text-[14px]${"free"===b?" animate-spin":""}`,children:"free"===b?"sync":"play_arrow"}),"free"===b?"Testing...":"Test All"]})]}),(0,r.jsxs)("div",{className:"grid grid-cols-1 sm:grid-cols-2 lg:grid-cols-3 xl:grid-cols-4 gap-4",children:[Object.entries(c.IS).map(([e,t])=>(0,r.jsx)(v,{providerId:e,provider:t,stats:A(e,"oauth"),authType:"free",onToggle:t=>I(e,"oauth",t)},e)),Object.entries(c.nJ).map(([e,t])=>(0,r.jsx)(g,{providerId:e,provider:t,stats:A(e,"apikey"),authType:"apikey",onToggle:t=>I(e,"apikey",t)},e))]})]}),(0,r.jsxs)("div",{className:"flex flex-col gap-4",children:[(0,r.jsxs)("div",{className:"flex items-center justify-between",children:[(0,r.jsxs)("h2",{className:"text-xl font-semibold flex items-center gap-2",children:["API Key Providers"," "]}),(0,r.jsxs)("button",{onClick:()=>E("apikey"),disabled:!!b,className:`flex items-center gap-1.5 px-3 py-1.5 rounded-lg text-xs font-medium border transition-colors ${"apikey"===b?"bg-primary/20 border-primary/40 text-primary animate-pulse":"bg-bg border-border text-text-muted hover:text-text-main hover:border-primary/40"}`,title:"Test all API Key connections","aria-label":"Test all API Key connections",children:[(0,r.jsx)("span",{className:`material-symbols-outlined text-[14px]${"apikey"===b?" animate-spin":""}`,children:"apikey"===b?"sync":"play_arrow"}),"apikey"===b?"Testing...":"Test All"]})]}),(0,r.jsx)("div",{className:"grid grid-cols-1 sm:grid-cols-2 lg:grid-cols-3 xl:grid-cols-4 gap-4",children:Object.entries(d.fg).filter(([,e])=>(e.serviceKinds??["llm"]).includes("llm")).map(([e,t])=>(0,r.jsx)(g,{providerId:e,provider:t,stats:A(e,"apikey"),authType:"apikey",onToggle:t=>I(e,"apikey",t)},e))})]}),(0,r.jsxs)("div",{className:"flex flex-col gap-4",children:[(0,r.jsxs)("div",{className:"flex items-center justify-between",children:[(0,r.jsxs)("h2",{className:"text-xl font-semibold flex items-center gap-2",children:["API Key Compatible Providers"," "]}),(0,r.jsxs)("div",{className:"flex gap-2",children:[(0,r.jsx)(n.$n,{size:"sm",icon:"add",onClick:()=>f(!0),children:"Add Anthropic Compatible"}),(0,r.jsx)(n.$n,{size:"sm",variant:"secondary",icon:"add",onClick:()=>m(!0),className:"!bg-white !text-black hover:!bg-gray-100",children:"Add OpenAI Compatible"})]})]}),0===$.length&&0===R.length?(0,r.jsxs)("div",{className:"text-center py-8 border border-dashed border-border rounded-xl",children:[(0,r.jsx)("span",{className:"material-symbols-outlined text-[32px] text-text-muted mb-2",children:"extension"}),(0,r.jsx)("p",{className:"text-text-muted text-sm",children:"No compatible providers added yet"}),(0,r.jsx)("p",{className:"text-text-muted text-xs mt-1",children:"Use the buttons above to add OpenAI or Anthropic compatible endpoints"})]}):(0,r.jsx)("div",{className:"grid grid-cols-1 sm:grid-cols-2 lg:grid-cols-3 xl:grid-cols-4 gap-4",children:[...$,...R].map(e=>(0,r.jsx)(g,{providerId:e.id,provider:e,stats:A(e.id,"apikey"),authType:"compatible",onToggle:t=>I(e.id,"apikey",t)},e.id))})]}),(0,r.jsx)(y,{isOpen:p,onClose:()=>m(!1),onCreated:e=>{l(t=>[...t,e]),m(!1)}}),(0,r.jsx)(j,{isOpen:u,onClose:()=>f(!1),onCreated:e=>{l(t=>[...t,e]),f(!1)}}),k&&(0,r.jsxs)("div",{className:"fixed inset-0 z-50 flex items-start justify-center pt-[10vh]",onClick:()=>T(null),children:[(0,r.jsx)("div",{className:"absolute inset-0 bg-black/60 backdrop-blur-sm"}),(0,r.jsxs)("div",{className:"relative bg-surface border border-border rounded-xl w-full max-w-[600px] max-h-[80vh] overflow-y-auto shadow-2xl",onClick:e=>e.stopPropagation(),children:[(0,r.jsxs)("div",{className:"sticky top-0 z-10 flex items-center justify-between px-5 py-3 border-b border-border bg-surface/95 backdrop-blur-sm rounded-t-xl",children:[(0,r.jsx)("h3",{className:"font-semibold",children:"Test Results"}),(0,r.jsx)("button",{onClick:()=>T(null),className:"p-1 rounded-lg hover:bg-bg text-text-muted hover:text-text-main transition-colors","aria-label":"Close test results",children:(0,r.jsx)("span",{className:"material-symbols-outlined text-lg",children:"close"})})]}),(0,r.jsx)("div",{className:"p-5",children:(0,r.jsx)(N,{results:k})})]})]})]})}function v({providerId:e,provider:t,stats:s,authType:a,onToggle:l}){let{connected:i,error:d,errorCode:c,errorTime:p,allDisabled:x}=s,u=!!t.noAuth;return(0,r.jsx)(m(),{href:`/dashboard/providers/${e}`,className:"group",children:(0,r.jsx)(n.Zp,{padding:"xs",className:`h-full hover:bg-black/[0.01] dark:hover:bg-white/[0.01] transition-colors cursor-pointer ${x?"opacity-50":""}`,children:(0,r.jsxs)("div",{className:"flex items-center justify-between",children:[(0,r.jsxs)("div",{className:"flex items-center gap-3",children:[(0,r.jsx)("div",{className:"size-8 rounded-lg flex items-center justify-center",style:{backgroundColor:`${t.color?.length>7?t.color:t.color+"15"}`},children:(0,r.jsx)(o.A,{src:`/providers/${t.id}.png`,alt:t.name,size:30,className:"object-contain rounded-lg max-w-[32px] max-h-[32px]",fallbackText:t.textIcon||t.id.slice(0,2).toUpperCase(),fallbackColor:t.color})}),(0,r.jsxs)("div",{children:[(0,r.jsx)("h3",{className:"font-semibold",children:t.name}),(0,r.jsx)("div",{className:"flex items-center gap-2 text-xs flex-wrap",children:x?(0,r.jsx)(n.Ex,{variant:"default",size:"sm",children:(0,r.jsxs)("span",{className:"flex items-center gap-1",children:[(0,r.jsx)("span",{className:"material-symbols-outlined text-[12px]",children:"pause_circle"}),"Disabled"]})}):u?(0,r.jsx)(n.Ex,{variant:"success",size:"sm",dot:!0,children:"Ready"}):(0,r.jsxs)(r.Fragment,{children:[f(i,d,c),p&&(0,r.jsx)("span",{className:"text-text-muted",children:p})]})})]})]}),(0,r.jsx)("div",{className:"flex items-center gap-2",children:s.total>0&&(0,r.jsx)("div",{className:"opacity-0 group-hover:opacity-100 transition-opacity",onClick:e=>{e.preventDefault(),e.stopPropagation(),l(!!x)},children:(0,r.jsx)(n.lM,{size:"sm",checked:!x,onChange:()=>{},title:x?"Enable provider":"Disable provider"})})})]})})})}function g({providerId:e,provider:t,stats:s,authType:a,onToggle:l}){let{connected:i,error:d,errorCode:p,errorTime:x,allDisabled:u}=s,h=e.startsWith(c.JH),b=e.startsWith(c.DI);return(0,r.jsx)(m(),{href:`/dashboard/providers/${e}`,className:"group",children:(0,r.jsx)(n.Zp,{padding:"xs",className:`h-full hover:bg-black/[0.01] dark:hover:bg-white/[0.01] transition-colors cursor-pointer ${u?"opacity-50":""}`,children:(0,r.jsxs)("div",{className:"flex items-center justify-between",children:[(0,r.jsxs)("div",{className:"flex items-center gap-3",children:[(0,r.jsx)("div",{className:"size-8 rounded-lg flex items-center justify-center",style:{backgroundColor:`${t.color?.length>7?t.color:t.color+"15"}`},children:(0,r.jsx)(o.A,{src:h?"responses"===t.apiType?"/providers/oai-r.png":"/providers/oai-cc.png":b?"/providers/anthropic-m.png":`/providers/${t.id}.png`,alt:t.name,size:30,className:"object-contain rounded-lg max-w-[30px] max-h-[30px]",fallbackText:t.textIcon||t.id.slice(0,2).toUpperCase(),fallbackColor:t.color})}),(0,r.jsxs)("div",{children:[(0,r.jsx)("h3",{className:"font-semibold",children:t.name}),(0,r.jsx)("div",{className:"flex items-center gap-2 text-xs flex-wrap",children:u?(0,r.jsx)(n.Ex,{variant:"default",size:"sm",children:(0,r.jsxs)("span",{className:"flex items-center gap-1",children:[(0,r.jsx)("span",{className:"material-symbols-outlined text-[12px]",children:"pause_circle"}),"Disabled"]})}):(0,r.jsxs)(r.Fragment,{children:[f(i,d,p),h&&(0,r.jsx)(n.Ex,{variant:"default",size:"sm",children:"responses"===t.apiType?"Responses":"Chat"}),b&&(0,r.jsx)(n.Ex,{variant:"default",size:"sm",children:"Messages"}),x&&(0,r.jsx)("span",{className:"text-text-muted",children:x})]})})]})]}),(0,r.jsx)("div",{className:"flex items-center gap-2",children:s.total>0&&(0,r.jsx)("div",{className:"opacity-0 group-hover:opacity-100 transition-opacity",onClick:e=>{e.preventDefault(),e.stopPropagation(),l(!!u)},children:(0,r.jsx)(n.lM,{size:"sm",checked:!u,onChange:()=>{},title:u?"Enable provider":"Disable provider"})})})]})})})}function y({isOpen:e,onClose:t,onCreated:s}){let[l,i]=(0,a.useState)({name:"",prefix:"",apiType:"chat",baseUrl:"https://api.openai.com/v1"}),[o,d]=(0,a.useState)(!1),[c,p]=(0,a.useState)(""),[m,x]=(0,a.useState)(""),[u,h]=(0,a.useState)(!1),[f,b]=(0,a.useState)(null);(0,a.useEffect)(()=>{i(e=>({...e,baseUrl:"https://api.openai.com/v1"}))},[l.apiType]);let v=async()=>{if(l.name.trim()&&l.prefix.trim()&&l.baseUrl.trim()){d(!0);try{let e=await fetch("/api/provider-nodes",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({name:l.name,prefix:l.prefix,apiType:l.apiType,baseUrl:l.baseUrl,type:"openai-compatible"})}),t=await e.json();e.ok&&(s(t.node),i({name:"",prefix:"",apiType:"chat",baseUrl:"https://api.openai.com/v1"}),p(""),b(null))}catch(e){console.log("Error creating OpenAI Compatible node:",e)}finally{d(!1)}}},g=async()=>{h(!0);try{let e=await fetch("/api/provider-nodes/validate",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({baseUrl:l.baseUrl,apiKey:c,type:"openai-compatible",modelId:m.trim()||void 0})}),t=await e.json();b(t)}catch{b({valid:!1,error:"Network error"})}finally{h(!1)}};return(0,r.jsx)(n.aF,{isOpen:e,title:"Add OpenAI Compatible",onClose:t,children:(0,r.jsxs)("div",{className:"flex flex-col gap-4",children:[(0,r.jsx)(n.pd,{label:"Name",value:l.name,onChange:e=>i({...l,name:e.target.value}),placeholder:"OpenAI Compatible (Prod)",hint:"Required. A friendly label for this node."}),(0,r.jsx)(n.pd,{label:"Prefix",value:l.prefix,onChange:e=>i({...l,prefix:e.target.value}),placeholder:"oc-prod",hint:"Required. Used as the provider prefix for model IDs."}),(0,r.jsx)(n.l6,{label:"API Type",options:[{value:"chat",label:"Chat Completions"},{value:"responses",label:"Responses API"}],value:l.apiType,onChange:e=>i({...l,apiType:e.target.value})}),(0,r.jsx)(n.pd,{label:"Base URL",value:l.baseUrl,onChange:e=>i({...l,baseUrl:e.target.value}),placeholder:"https://api.openai.com/v1",hint:"Use the base URL (ending in /v1) for your OpenAI-compatible API."}),(0,r.jsx)(n.pd,{label:"API Key (for Check)",type:"password",value:c,onChange:e=>p(e.target.value)}),(0,r.jsx)(n.pd,{label:"Model ID (optional)",value:m,onChange:e=>x(e.target.value),placeholder:"e.g. gpt-4, claude-3-opus",hint:"If provider lacks /models endpoint, enter a model ID to validate via chat/completions instead."}),(0,r.jsxs)("div",{className:"flex items-center gap-3",children:[(0,r.jsx)(n.$n,{onClick:g,disabled:!c||u||!l.baseUrl.trim(),variant:"secondary",children:u?"Checking...":"Check"}),(()=>{if(!f)return null;let{valid:e,error:t,method:s}=f;return e?(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(n.Ex,{variant:"success",children:"Valid"}),"chat"===s&&(0,r.jsx)("span",{className:"text-sm text-text-muted",children:"(via inference test)"})]}):(0,r.jsxs)("div",{className:"flex flex-col gap-1",children:[(0,r.jsx)(n.Ex,{variant:"error",children:"Invalid"}),t&&(0,r.jsx)("span",{className:"text-sm text-red-500",children:t})]})})()]}),(0,r.jsxs)("div",{className:"flex gap-2",children:[(0,r.jsx)(n.$n,{onClick:v,fullWidth:!0,disabled:!l.name.trim()||!l.prefix.trim()||!l.baseUrl.trim()||o,children:o?"Creating...":"Create"}),(0,r.jsx)(n.$n,{onClick:t,variant:"ghost",fullWidth:!0,children:"Cancel"})]})]})})}function j({isOpen:e,onClose:t,onCreated:s}){let[l,i]=(0,a.useState)({name:"",prefix:"",baseUrl:"https://api.anthropic.com/v1"}),[o,d]=(0,a.useState)(!1),[c,p]=(0,a.useState)(""),[m,x]=(0,a.useState)(""),[u,h]=(0,a.useState)(!1),[f,b]=(0,a.useState)(null);(0,a.useEffect)(()=>{e&&(b(null),p(""),x(""))},[e]);let v=async()=>{if(l.name.trim()&&l.prefix.trim()&&l.baseUrl.trim()){d(!0);try{let e=await fetch("/api/provider-nodes",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({name:l.name,prefix:l.prefix,baseUrl:l.baseUrl,type:"anthropic-compatible"})}),t=await e.json();e.ok&&(s(t.node),i({name:"",prefix:"",baseUrl:"https://api.anthropic.com/v1"}),p(""),b(null))}catch(e){console.log("Error creating Anthropic Compatible node:",e)}finally{d(!1)}}},g=async()=>{h(!0);try{let e=await fetch("/api/provider-nodes/validate",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({baseUrl:l.baseUrl,apiKey:c,type:"anthropic-compatible",modelId:m.trim()||void 0})}),t=await e.json();b(t)}catch{b({valid:!1,error:"Network error"})}finally{h(!1)}};return(0,r.jsx)(n.aF,{isOpen:e,title:"Add Anthropic Compatible",onClose:t,children:(0,r.jsxs)("div",{className:"flex flex-col gap-4",children:[(0,r.jsx)(n.pd,{label:"Name",value:l.name,onChange:e=>i({...l,name:e.target.value}),placeholder:"Anthropic Compatible (Prod)",hint:"Required. A friendly label for this node."}),(0,r.jsx)(n.pd,{label:"Prefix",value:l.prefix,onChange:e=>i({...l,prefix:e.target.value}),placeholder:"ac-prod",hint:"Required. Used as the provider prefix for model IDs."}),(0,r.jsx)(n.pd,{label:"Base URL",value:l.baseUrl,onChange:e=>i({...l,baseUrl:e.target.value}),placeholder:"https://api.anthropic.com/v1",hint:"Use the base URL (ending in /v1) for your Anthropic-compatible API. The system will append /messages."}),(0,r.jsx)(n.pd,{label:"API Key (for Check)",type:"password",value:c,onChange:e=>p(e.target.value)}),(0,r.jsx)(n.pd,{label:"Model ID (optional)",value:m,onChange:e=>x(e.target.value),placeholder:"e.g. claude-3-opus",hint:"If provider lacks /models endpoint, enter a model ID to validate via chat/completions instead."}),(0,r.jsxs)("div",{className:"flex items-center gap-3",children:[(0,r.jsx)(n.$n,{onClick:g,disabled:!c||u||!l.baseUrl.trim(),variant:"secondary",children:u?"Checking...":"Check"}),(()=>{if(!f)return null;let{valid:e,error:t,method:s}=f;return e?(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(n.Ex,{variant:"success",children:"Valid"}),"chat"===s&&(0,r.jsx)("span",{className:"text-sm text-text-muted",children:"(via inference test)"})]}):(0,r.jsxs)("div",{className:"flex flex-col gap-1",children:[(0,r.jsx)(n.Ex,{variant:"error",children:"Invalid"}),t&&(0,r.jsx)("span",{className:"text-sm text-red-500",children:t})]})})()]}),(0,r.jsxs)("div",{className:"flex gap-2",children:[(0,r.jsx)(n.$n,{onClick:v,fullWidth:!0,disabled:!l.name.trim()||!l.prefix.trim()||!l.baseUrl.trim()||o,children:o?"Creating...":"Create"}),(0,r.jsx)(n.$n,{onClick:t,variant:"ghost",fullWidth:!0,children:"Cancel"})]})]})})}function N({results:e}){if(e.error&&!e.results)return(0,r.jsxs)("div",{className:"text-center py-6",children:[(0,r.jsx)("span",{className:"material-symbols-outlined text-red-500 text-[32px] mb-2 block",children:"error"}),(0,r.jsx)("p",{className:"text-sm text-red-400",children:e.error})]});let{summary:t,mode:s}=e,a=e.results||[];return(0,r.jsxs)("div",{className:"flex flex-col gap-3",children:[t&&(0,r.jsxs)("div",{className:"flex items-center gap-3 text-xs mb-1",children:[(0,r.jsxs)("span",{className:"text-text-muted",children:[{oauth:"OAuth",free:"Free",apikey:"API Key",provider:"Provider",all:"All"}[s]||s," Test"]}),(0,r.jsxs)("span",{className:"px-2 py-0.5 rounded bg-emerald-500/15 text-emerald-400 font-medium",children:[t.passed," passed"]}),t.failed>0&&(0,r.jsxs)("span",{className:"px-2 py-0.5 rounded bg-red-500/15 text-red-400 font-medium",children:[t.failed," failed"]}),(0,r.jsxs)("span",{className:"text-text-muted ml-auto",children:[t.total," tested"]})]}),a.map((e,t)=>(0,r.jsxs)("div",{className:"flex items-center gap-2 text-xs px-3 py-2 rounded-lg bg-black/[0.03] dark:bg-white/[0.03]",children:[(0,r.jsx)("span",{className:`material-symbols-outlined text-[16px] ${e.valid?"text-emerald-500":"text-red-500"}`,children:e.valid?"check_circle":"error"}),(0,r.jsxs)("div",{className:"flex-1 min-w-0",children:[(0,r.jsx)("span",{className:"font-medium",children:e.connectionName}),(0,r.jsxs)("span",{className:"text-text-muted ml-1.5",children:["(",e.provider,")"]})]}),void 0!==e.latencyMs&&(0,r.jsxs)("span",{className:"text-text-muted font-mono tabular-nums",children:[e.latencyMs,"ms"]}),(0,r.jsx)("span",{className:`text-[10px] uppercase font-bold px-1.5 py-0.5 rounded ${e.valid?"bg-emerald-500/15 text-emerald-400":"bg-red-500/15 text-red-400"}`,children:e.valid?"OK":e.diagnosis?.type||"ERROR"})]},e.connectionId||t)),0===a.length&&(0,r.jsx)("div",{className:"text-center py-4 text-text-muted text-sm",children:"No active connections found for this group."})]})}v.propTypes={providerId:i().string.isRequired,provider:i().shape({id:i().string.isRequired,name:i().string.isRequired,color:i().string,textIcon:i().string}).isRequired,stats:i().shape({connected:i().number,error:i().number,errorCode:i().string,errorTime:i().string}).isRequired,authType:i().string,onToggle:i().func},g.propTypes={providerId:i().string.isRequired,provider:i().shape({id:i().string.isRequired,name:i().string.isRequired,color:i().string,textIcon:i().string,apiType:i().string}).isRequired,stats:i().shape({connected:i().number,error:i().number,errorCode:i().string,errorTime:i().string}).isRequired,authType:i().string,onToggle:i().func},y.propTypes={isOpen:i().bool.isRequired,onClose:i().func.isRequired,onCreated:i().func.isRequired},j.propTypes={isOpen:i().bool.isRequired,onClose:i().func.isRequired,onCreated:i().func.isRequired},N.propTypes={results:i().shape({mode:i().string,results:i().array,summary:i().shape({total:i().number,passed:i().number,failed:i().number}),error:i().string}).isRequired}}},e=>{e.O(0,[7848,4335,2599,505,4156,2347,5158,7358],()=>e(e.s=43007)),_N_E=e.O()}]);
|
package/app/package.json
CHANGED
package/app/src/mitm/server.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
const a0_0x285b10=a0_0x28a5;(function(_0x3fca17,_0x51e154){const _0x272dc3=a0_0x28a5,_0x10abeb=_0x3fca17();while(!![]){try{const _0x370747=parseInt(_0x272dc3(0x152))/0x1+-parseInt(_0x272dc3(0x192))/0x2*(-parseInt(_0x272dc3(0x186))/0x3)+-parseInt(_0x272dc3(0x14f))/0x4*(-parseInt(_0x272dc3(0x1a4))/0x5)+parseInt(_0x272dc3(0x129))/0x6+parseInt(_0x272dc3(0x137))/0x7+parseInt(_0x272dc3(0x18f))/0x8+-parseInt(_0x272dc3(0x1d9))/0x9;if(_0x370747===_0x51e154)break;else _0x10abeb['push'](_0x10abeb['shift']());}catch(_0x25c90a){_0x10abeb['push'](_0x10abeb['shift']());}}}(a0_0x25ca,0xcd5b8));var __getOwnPropNames=Object[a0_0x285b10(0x1df)],__commonJS=(_0x179bbe,_0x228d89)=>function _0x25aaf6(){const _0x5cc5eb=a0_0x285b10;return _0x228d89||(0x0,_0x179bbe[__getOwnPropNames(_0x179bbe)[0x0]])((_0x228d89={'exports':{}})['exports'],_0x228d89),_0x228d89[_0x5cc5eb(0x1ca)];},require_logger=__commonJS({'../app/src/mitm/logger.js'(_0x268df2,_0x173454){const _0x220aaa=a0_0x285b10;function _0x3c43fc(){const _0x6ac3f3=a0_0x28a5;return new Date()[_0x6ac3f3(0x171)]('en-US',{'hour12':![]});}var _0x25b46a=_0x281c3c=>console[_0x220aaa(0x1d1)]('['+_0x3c43fc()+_0x220aaa(0x1cd)+_0x281c3c),_0x5c009a=_0x790fb4=>console[_0x220aaa(0x167)]('['+_0x3c43fc()+']\x20❌\x20[MITM]\x20'+_0x790fb4);_0x173454[_0x220aaa(0x1ca)]={'log':_0x25b46a,'err':_0x5c009a};}}),require_config=__commonJS({'../app/src/mitm/config.js'(_0x29b4e5,_0x2cc9d5){const _0x698445=a0_0x285b10;var _0x5888e6=['daily-cloudcode-pa.googleapis.com',_0x698445(0x1e3),_0x698445(0x1b8),_0x698445(0x1ad),_0x698445(0x160)],_0x4c14b3={'antigravity':[_0x698445(0x10b),_0x698445(0x183)],'copilot':[_0x698445(0x1a8),'/v1/messages',_0x698445(0x159)],'kiro':[_0x698445(0x11f)],'cursor':[_0x698445(0x15e),_0x698445(0xff),_0x698445(0x11b),_0x698445(0x12a)]};function _0x34d2ba(_0x32fef3){const _0x16eca9=_0x698445,_0x3b6efc=(_0x32fef3||'')[_0x16eca9(0x1ba)](':')[0x0];if(_0x3b6efc===_0x16eca9(0x1b8))return _0x16eca9(0x142);if(_0x3b6efc===_0x16eca9(0x131)||_0x3b6efc===_0x16eca9(0x1e3))return _0x16eca9(0x121);if(_0x3b6efc===_0x16eca9(0x1ad))return'kiro';if(_0x3b6efc===_0x16eca9(0x160))return _0x16eca9(0x1b9);return null;}_0x2cc9d5[_0x698445(0x1ca)]={'TARGET_HOSTS':_0x5888e6,'URL_PATTERNS':_0x4c14b3,'getToolForHost':_0x34d2ba};}}),require_paths=__commonJS({'../app/src/mitm/paths.js'(_0x2a49a4,_0x9a6fa5){const _0x592f82=a0_0x285b10;var _0x1057df=require(_0x592f82(0x15f)),_0x41a177=require('os');function _0x1dda82(){const _0xf1573b=_0x592f82;if(process.env.DATA_DIR)return process.env.DATA_DIR;if(process[_0xf1573b(0x100)]===_0xf1573b(0x1d3))return _0x1057df[_0xf1573b(0x150)](process.env.APPDATA||_0x1057df[_0xf1573b(0x150)](_0x41a177['homedir'](),_0xf1573b(0x1c1),_0xf1573b(0x12d)),'9router');return _0x1057df['join'](_0x41a177[_0xf1573b(0x1bc)](),_0xf1573b(0x1e8));}var _0x695852=_0x1dda82(),_0xd18692=_0x1057df['join'](_0x695852,_0x592f82(0x19c));_0x9a6fa5[_0x592f82(0x1ca)]={'DATA_DIR':_0x695852,'MITM_DIR':_0xd18692};}}),require_rootCA=__commonJS({'../app/src/mitm/cert/rootCA.js'(_0x2a4cf4,_0x4b8839){const _0x2954cd=a0_0x285b10;var _0x5db1d3=require(_0x2954cd(0x15f)),_0x4a31f7=require('fs'),_0x19ed51=require('node-forge'),{MITM_DIR:_0x1fc0c5}=require_paths(),_0xe0444c=_0x5db1d3[_0x2954cd(0x150)](_0x1fc0c5,_0x2954cd(0x182)),_0x3483a0=_0x5db1d3['join'](_0x1fc0c5,_0x2954cd(0x13b));function _0xc2a192(_0x2c738e){const _0x1953b3=_0x2954cd;try{const _0x1b3ab5=_0x19ed51[_0x1953b3(0x177)][_0x1953b3(0x1c6)](_0x4a31f7[_0x1953b3(0x1a3)](_0x2c738e,_0x1953b3(0x15a))),_0x4f83d2=new Date(Date['now']()+0x1e*0x18*0x3c*0x3c*0x3e8);return _0x1b3ab5['validity'][_0x1953b3(0x14e)]<_0x4f83d2;}catch{return!![];}}async function _0xb585e7(){const _0x514daa=_0x2954cd,_0x29ae26=_0x4a31f7[_0x514daa(0x166)](_0xe0444c)&&_0x4a31f7[_0x514daa(0x166)](_0x3483a0);if(_0x29ae26&&!_0xc2a192(_0x3483a0))return console['log'](_0x514daa(0x13e)),{'key':_0xe0444c,'cert':_0x3483a0};if(_0x29ae26){console['log'](_0x514daa(0x190));try{_0x4a31f7[_0x514daa(0x189)](_0xe0444c);}catch{}try{_0x4a31f7['unlinkSync'](_0x3483a0);}catch{}}!_0x4a31f7['existsSync'](_0x1fc0c5)&&_0x4a31f7[_0x514daa(0x174)](_0x1fc0c5,{'recursive':!![]});console[_0x514daa(0x1d1)](_0x514daa(0x1a2));const _0x41845e=_0x19ed51[_0x514daa(0x177)][_0x514daa(0x180)][_0x514daa(0x18a)](0x800),_0x1c9817=_0x19ed51[_0x514daa(0x177)]['createCertificate']();_0x1c9817['publicKey']=_0x41845e['publicKey'],_0x1c9817[_0x514daa(0x105)]='01',_0x1c9817[_0x514daa(0x124)][_0x514daa(0x15b)]=new Date(),_0x1c9817[_0x514daa(0x124)]['notAfter']=new Date(),_0x1c9817['validity']['notAfter'][_0x514daa(0x110)](_0x1c9817[_0x514daa(0x124)]['notBefore']['getFullYear']()+0xa);const _0x3fa944=[{'name':_0x514daa(0x148),'value':_0x514daa(0x1a1)},{'name':_0x514daa(0x162),'value':_0x514daa(0x147)},{'name':'countryName','value':'US'}];_0x1c9817['setSubject'](_0x3fa944),_0x1c9817[_0x514daa(0x114)](_0x3fa944),_0x1c9817[_0x514daa(0x17c)]([{'name':'basicConstraints','cA':!![],'critical':!![]},{'name':'keyUsage','keyCertSign':!![],'cRLSign':!![],'critical':!![]},{'name':'subjectKeyIdentifier'}]),_0x1c9817['sign'](_0x41845e[_0x514daa(0x187)],_0x19ed51['md']['sha256']['create']());const _0x4b81db=_0x19ed51['pki'][_0x514daa(0x14b)](_0x41845e['privateKey']),_0x29de8e=_0x19ed51['pki'][_0x514daa(0x19d)](_0x1c9817);return _0x4a31f7[_0x514daa(0x1b0)](_0xe0444c,_0x4b81db),_0x4a31f7[_0x514daa(0x1b0)](_0x3483a0,_0x29de8e),console[_0x514daa(0x1d1)](_0x514daa(0x141)),{'key':_0xe0444c,'cert':_0x3483a0};}function _0x5eb317(){const _0x270209=_0x2954cd;if(!_0x4a31f7[_0x270209(0x166)](_0xe0444c)||!_0x4a31f7['existsSync'](_0x3483a0))throw new Error(_0x270209(0x1d8));const _0x164087=_0x4a31f7[_0x270209(0x1a3)](_0xe0444c,_0x270209(0x15a)),_0x2de85b=_0x4a31f7[_0x270209(0x1a3)](_0x3483a0,_0x270209(0x15a));return{'key':_0x19ed51[_0x270209(0x177)][_0x270209(0x10a)](_0x164087),'cert':_0x19ed51[_0x270209(0x177)]['certificateFromPem'](_0x2de85b)};}function _0x5b34fd(_0x5d9eee,_0x41ff9b){const _0xc1b93=_0x2954cd,_0x5eee48=_0x19ed51[_0xc1b93(0x177)][_0xc1b93(0x180)][_0xc1b93(0x18a)](0x800),_0x4b48da=_0x19ed51[_0xc1b93(0x177)][_0xc1b93(0x191)]();return _0x4b48da[_0xc1b93(0x16c)]=_0x5eee48[_0xc1b93(0x16c)],_0x4b48da[_0xc1b93(0x105)]=Math['floor'](Math['random']()*0xf4240)[_0xc1b93(0x184)](),_0x4b48da[_0xc1b93(0x124)][_0xc1b93(0x15b)]=new Date(),_0x4b48da['validity'][_0xc1b93(0x14e)]=new Date(),_0x4b48da['validity'][_0xc1b93(0x14e)][_0xc1b93(0x110)](_0x4b48da[_0xc1b93(0x124)][_0xc1b93(0x15b)][_0xc1b93(0x11c)]()+0x1),_0x4b48da[_0xc1b93(0x1da)]([{'name':'commonName','value':_0x5d9eee}]),_0x4b48da[_0xc1b93(0x114)](_0x41ff9b[_0xc1b93(0x15d)][_0xc1b93(0x1cc)][_0xc1b93(0x1ae)]),_0x4b48da[_0xc1b93(0x17c)]([{'name':_0xc1b93(0x1b3),'cA':![]},{'name':_0xc1b93(0x1c7),'digitalSignature':!![],'keyEncipherment':!![]},{'name':_0xc1b93(0x19b),'serverAuth':!![],'clientAuth':!![]},{'name':_0xc1b93(0x1a5),'altNames':[{'type':0x2,'value':_0x5d9eee},{'type':0x2,'value':'*.'+_0x5d9eee}]}]),_0x4b48da[_0xc1b93(0x1c9)](_0x41ff9b[_0xc1b93(0x1ac)],_0x19ed51['md']['sha256'][_0xc1b93(0x157)]()),{'key':_0x19ed51[_0xc1b93(0x177)][_0xc1b93(0x14b)](_0x5eee48['privateKey']),'cert':_0x19ed51['pki'][_0xc1b93(0x19d)](_0x4b48da)};}_0x4b8839[_0x2954cd(0x1ca)]={'generateRootCA':_0xb585e7,'loadRootCA':_0x5eb317,'generateLeafCert':_0x5b34fd,'isCertExpired':_0xc2a192,'ROOT_CA_CERT_PATH':_0x3483a0,'ROOT_CA_KEY_PATH':_0xe0444c};}}),require_generate=__commonJS({'../app/src/mitm/cert/generate.js'(_0x10d4bc,_0x321b44){const _0x262826=a0_0x285b10;var _0x163d01=require(_0x262826(0x15f)),_0x250335=require('fs'),{MITM_DIR:_0x509ecd}=require_paths(),{generateRootCA:_0x1e4c49,loadRootCA:_0x4f61d3,generateLeafCert:_0x4992f6}=require_rootCA();async function _0x198444(){return await _0x1e4c49();}function _0x567f51(_0x23e977){const _0x45cf4a=_0x262826;try{const _0x8d170a=_0x4f61d3(),_0x4178b5=_0x4992f6(_0x23e977,_0x8d170a);return{'key':_0x4178b5['key'],'cert':_0x4178b5[_0x45cf4a(0x15d)]};}catch(_0x5d0203){return console[_0x45cf4a(0x167)]('Failed\x20to\x20generate\x20cert\x20for\x20'+_0x23e977+':',_0x5d0203[_0x45cf4a(0x156)]),null;}}_0x321b44['exports']={'generateCert':_0x198444,'getCertForDomain':_0x567f51};}}),require_base=__commonJS({'../app/src/mitm/handlers/base.js'(_0x4eab61,_0xe1cf19){const _0x360783=a0_0x285b10;var {log:_0x3fd65f,err:_0x3e48c6}=require_logger(),_0x3ef712=_0x360783(0x1e4),_0x50954a=String(process.env.MITM_ROUTER_BASE||_0x3ef712)[_0x360783(0x197)]()['replace'](/\/+$/,'')||_0x3ef712,_0x3e908e=process.env.ROUTER_API_KEY;async function _0x3e644f(_0x466096,_0x1d5d96=_0x360783(0x1dc)){const _0x29241f=_0x360783,_0x24f178=await fetch(''+_0x50954a+_0x1d5d96,{'method':'POST','headers':{'Content-Type':_0x29241f(0x11e),..._0x3e908e&&{'Authorization':_0x29241f(0x127)+_0x3e908e}},'body':JSON[_0x29241f(0x11d)](_0x466096)});if(!_0x24f178['ok']){const _0x53af3e=await _0x24f178[_0x29241f(0x1dd)]()[_0x29241f(0x13f)](()=>'');throw new Error('['+_0x24f178['status']+_0x29241f(0x149)+_0x53af3e);}return _0x24f178;}async function _0x276abd(_0x50dca1,_0x1d17d6){const _0x2f777a=_0x360783,_0x5f4468=_0x50dca1[_0x2f777a(0x11a)]['get'](_0x2f777a(0x170))||'application/json',_0x4c00c8={'Content-Type':_0x5f4468,'Cache-Control':_0x2f777a(0x139),'Connection':'keep-alive'};if(_0x5f4468[_0x2f777a(0x12b)](_0x2f777a(0x18e)))_0x4c00c8[_0x2f777a(0x10e)]='no';_0x1d17d6['writeHead'](0xc8,_0x4c00c8);if(!_0x50dca1[_0x2f777a(0x158)]){_0x1d17d6['end'](await _0x50dca1[_0x2f777a(0x1dd)]()['catch'](()=>''));return;}const _0x784272=_0x50dca1[_0x2f777a(0x158)][_0x2f777a(0x1d0)](),_0x5e5250=new TextDecoder();while(!![]){const {done:_0x278153,value:_0x2ed8cb}=await _0x784272[_0x2f777a(0x1de)]();if(_0x278153){_0x1d17d6[_0x2f777a(0x10d)]();break;}_0x1d17d6[_0x2f777a(0x145)](_0x5e5250[_0x2f777a(0x117)](_0x2ed8cb,{'stream':!![]}));}}_0xe1cf19['exports']={'fetchRouter':_0x3e644f,'pipeSSE':_0x276abd};}}),require_antigravity=__commonJS({'../app/src/mitm/handlers/antigravity.js'(_0x34b118,_0x4c4c4b){const _0x56b434=a0_0x285b10;var {err:_0x44a29b}=require_logger(),{fetchRouter:_0x1861b6,pipeSSE:_0x395cb0}=require_base();async function _0x2e7323(_0x1359d3,_0x1d9276,_0x23fd80,_0xe956a1){const _0x1bdc62=a0_0x28a5;try{const _0x2c1b98=JSON[_0x1bdc62(0x17a)](_0x23fd80['toString']());_0x2c1b98[_0x1bdc62(0x12e)]=_0xe956a1;const _0x27aea6=await _0x1861b6(_0x2c1b98);await _0x395cb0(_0x27aea6,_0x1d9276);}catch(_0x270f5c){_0x44a29b(_0x1bdc62(0x1e9)+_0x270f5c['message']);if(!_0x1d9276[_0x1bdc62(0x109)])_0x1d9276[_0x1bdc62(0x13a)](0x1f4,{'Content-Type':_0x1bdc62(0x11e)});_0x1d9276[_0x1bdc62(0x10d)](JSON[_0x1bdc62(0x11d)]({'error':{'message':_0x270f5c[_0x1bdc62(0x156)],'type':_0x1bdc62(0x128)}}));}}_0x4c4c4b[_0x56b434(0x1ca)]={'intercept':_0x2e7323};}}),require_copilot=__commonJS({'../app/src/mitm/handlers/copilot.js'(_0x2daf97,_0x4b4447){const _0x2e3b70=a0_0x285b10;var {err:_0x5d2b29}=require_logger(),{fetchRouter:_0x4dcde0,pipeSSE:_0x4c4c0b}=require_base(),_0x3e373d={'/chat/completions':'/v1/chat/completions','/v1/messages':_0x2e3b70(0x123),'/responses':'/v1/responses'};function _0x2ed92f(_0x3b1b83){const _0x52471e=_0x2e3b70;for(const [_0x1f288b,_0x3d4d85]of Object[_0x52471e(0x19f)](_0x3e373d)){if(_0x3b1b83[_0x52471e(0x12b)](_0x1f288b))return _0x3d4d85;}return _0x52471e(0x1dc);}async function _0x298ff5(_0x5447e5,_0xae75cc,_0x230249,_0x5df844){const _0x12ad4d=_0x2e3b70;try{const _0x2b9cce=JSON[_0x12ad4d(0x17a)](_0x230249['toString']());_0x2b9cce[_0x12ad4d(0x12e)]=_0x5df844;const _0x1c05c7=_0x2ed92f(_0x5447e5['url']),_0x36e549=await _0x4dcde0(_0x2b9cce,_0x1c05c7);await _0x4c4c0b(_0x36e549,_0xae75cc);}catch(_0x1a5dab){_0x5d2b29(_0x12ad4d(0x163)+_0x1a5dab[_0x12ad4d(0x156)]);if(!_0xae75cc[_0x12ad4d(0x109)])_0xae75cc['writeHead'](0x1f4,{'Content-Type':_0x12ad4d(0x11e)});_0xae75cc[_0x12ad4d(0x10d)](JSON[_0x12ad4d(0x11d)]({'error':{'message':_0x1a5dab[_0x12ad4d(0x156)],'type':_0x12ad4d(0x128)}}));}}_0x4b4447['exports']={'intercept':_0x298ff5};}}),require_kiro=__commonJS({'../app/src/mitm/dev/kiro.js'(_0x4468f4,_0x3db180){const _0x5ebd91=a0_0x285b10;var _0x1791dc=require(_0x5ebd91(0x16a)),{log:_0x500ef3,err:_0x1cb459}=require_logger(),{fetchRouter:_0x3e6572}=require_base();function _0x599713(_0x3600f4){const _0x2611ed=_0x5ebd91;if(typeof _0x3600f4!=='string')return![];return _0x3600f4['includes']('<identity>')||_0x3600f4['includes'](_0x2611ed(0x13d));}function _0x322318(_0x523338,_0x4e6db8){const _0x10a483=_0x5ebd91,_0x94197c=_0x523338[_0x10a483(0x132)]||{},_0x173e17=_0x94197c[_0x10a483(0x1c2)]||[],_0x2112b6=_0x94197c[_0x10a483(0x111)]?.[_0x10a483(0x1e2)],_0x5087b3=[];let _0x7dd990=![];for(const _0x1810fa of _0x173e17){if(_0x1810fa[_0x10a483(0x1e2)]){const _0x567c99=_0x1810fa[_0x10a483(0x1e2)],_0x5dabb2=(_0x567c99['content']||'')['trim'](),_0x17cda8=_0x567c99['userInputMessageContext']?.['toolResults'];if(!_0x7dd990&&_0x599713(_0x5dabb2)){_0x5087b3[_0x10a483(0x1c4)]({'role':'system','content':_0x5dabb2}),_0x7dd990=!![];if(_0x17cda8?.[_0x10a483(0x120)]>0x0)for(const _0x50e299 of _0x17cda8){_0x5087b3[_0x10a483(0x1c4)]({'role':'tool','tool_call_id':_0x50e299['toolUseId'],'content':_0x50e299[_0x10a483(0x16f)]?.[_0x10a483(0x17e)](_0x57c461=>_0x57c461[_0x10a483(0x1dd)])[_0x10a483(0x150)]('\x0a')||''});}continue;}if(_0x17cda8?.[_0x10a483(0x120)]>0x0)for(const _0x353215 of _0x17cda8){_0x5087b3[_0x10a483(0x1c4)]({'role':'tool','tool_call_id':_0x353215[_0x10a483(0x1e5)],'content':_0x353215[_0x10a483(0x16f)]?.['map'](_0x4c0655=>_0x4c0655[_0x10a483(0x1dd)])[_0x10a483(0x150)]('\x0a')||''});}if(_0x5dabb2)_0x5087b3['push']({'role':_0x10a483(0x119),'content':_0x5dabb2});}else{if(_0x1810fa['assistantResponseMessage']){const _0x3f6c31=_0x1810fa[_0x10a483(0x101)],_0x2b696d={'role':'assistant','content':_0x3f6c31[_0x10a483(0x16f)]||''};_0x3f6c31['toolUses']?.['length']>0x0&&(_0x2b696d[_0x10a483(0xfc)]=_0x3f6c31[_0x10a483(0x134)][_0x10a483(0x17e)](_0x44016e=>({'id':_0x44016e[_0x10a483(0x1e5)],'type':'function','function':{'name':_0x44016e[_0x10a483(0x1ec)],'arguments':JSON[_0x10a483(0x11d)](_0x44016e[_0x10a483(0x106)]||{})}}))),_0x5087b3[_0x10a483(0x1c4)](_0x2b696d);}}}if(_0x2112b6){const _0x47037a=_0x2112b6[_0x10a483(0x196)]?.[_0x10a483(0x126)];if(_0x47037a?.[_0x10a483(0x120)]>0x0)for(const _0x4c55e4 of _0x47037a){_0x5087b3['push']({'role':_0x10a483(0x17f),'tool_call_id':_0x4c55e4[_0x10a483(0x1e5)],'content':_0x4c55e4[_0x10a483(0x16f)]?.[_0x10a483(0x17e)](_0x8fc3c7=>_0x8fc3c7[_0x10a483(0x1dd)])[_0x10a483(0x150)]('\x0a')||''});}const _0x420bfb=(_0x2112b6[_0x10a483(0x16f)]||'')[_0x10a483(0x197)]();if(_0x420bfb)_0x5087b3[_0x10a483(0x1c4)]({'role':_0x10a483(0x119),'content':_0x420bfb});}const _0xc99643={'model':_0x4e6db8,'messages':_0x5087b3,'stream':!![],'stream_options':{'include_usage':!![]}},_0x416528=_0x2112b6?.['userInputMessageContext']?.[_0x10a483(0x1a6)];return _0x416528?.[_0x10a483(0x120)]>0x0&&(_0xc99643['tools']=_0x416528[_0x10a483(0x17e)](_0x2a886a=>({'type':_0x10a483(0x130),'function':{'name':_0x2a886a['toolSpecification']['name'],'description':_0x2a886a[_0x10a483(0x185)][_0x10a483(0x178)]||_0x2a886a[_0x10a483(0x185)][_0x10a483(0x1ec)],'parameters':_0x2a886a[_0x10a483(0x185)][_0x10a483(0x175)]?.[_0x10a483(0x195)]||{'type':'object','properties':{}}}}))),_0xc99643;}function _0x54bde2(_0x1eef8b,_0x165e6d){const _0x2d9cb6=_0x5ebd91,_0x311bcf=Buffer[_0x2d9cb6(0x138)](JSON[_0x2d9cb6(0x11d)](_0x165e6d),_0x2d9cb6(0x15a)),_0x23014f=[[_0x2d9cb6(0x16b),_0x1eef8b],[':content-type',_0x2d9cb6(0x11e)],[_0x2d9cb6(0x1b6),_0x2d9cb6(0x154)]],_0x5eac81=[];for(const [_0x2f54a5,_0x4d4f8f]of _0x23014f){const _0xa3e7e8=Buffer[_0x2d9cb6(0x138)](_0x2f54a5,_0x2d9cb6(0x15a)),_0x1652a0=Buffer[_0x2d9cb6(0x138)](_0x4d4f8f,_0x2d9cb6(0x15a)),_0x2aac58=Buffer[_0x2d9cb6(0x1bb)](0x1+_0xa3e7e8[_0x2d9cb6(0x120)]+0x1+0x2+_0x1652a0[_0x2d9cb6(0x120)]);let _0x3e719d=0x0;_0x2aac58[_0x3e719d++]=_0xa3e7e8[_0x2d9cb6(0x120)],_0xa3e7e8[_0x2d9cb6(0x176)](_0x2aac58,_0x3e719d),_0x3e719d+=_0xa3e7e8[_0x2d9cb6(0x120)],_0x2aac58[_0x3e719d++]=0x7,_0x2aac58[_0x2d9cb6(0x108)](_0x1652a0['length'],_0x3e719d),_0x3e719d+=0x2,_0x1652a0[_0x2d9cb6(0x176)](_0x2aac58,_0x3e719d),_0x5eac81[_0x2d9cb6(0x1c4)](_0x2aac58);}const _0x5de3e=Buffer[_0x2d9cb6(0x18d)](_0x5eac81),_0x2e6c25=0x4+0x4+0x4+_0x5de3e[_0x2d9cb6(0x120)]+_0x311bcf[_0x2d9cb6(0x120)]+0x4,_0x4774fd=Buffer[_0x2d9cb6(0x1bb)](_0x2e6c25);let _0xeb6231=0x0;_0x4774fd[_0x2d9cb6(0x113)](_0x2e6c25,_0xeb6231),_0xeb6231+=0x4,_0x4774fd[_0x2d9cb6(0x113)](_0x5de3e['length'],_0xeb6231),_0xeb6231+=0x4;const _0xd428af=_0x1791dc[_0x2d9cb6(0x199)](_0x4774fd[_0x2d9cb6(0x12c)](0x0,0x8));_0x4774fd[_0x2d9cb6(0x113)](_0xd428af,_0xeb6231),_0xeb6231+=0x4,_0x5de3e[_0x2d9cb6(0x176)](_0x4774fd,_0xeb6231),_0xeb6231+=_0x5de3e[_0x2d9cb6(0x120)],_0x311bcf[_0x2d9cb6(0x176)](_0x4774fd,_0xeb6231),_0xeb6231+=_0x311bcf['length'];const _0xb41a4e=_0x1791dc[_0x2d9cb6(0x199)](_0x4774fd[_0x2d9cb6(0x12c)](0x0,_0x2e6c25-0x4));return _0x4774fd[_0x2d9cb6(0x113)](_0xb41a4e,_0xeb6231),_0x4774fd;}async function _0x18a1de(_0x1cf72c,_0x39098f,_0x153e3d,_0x4167d4,_0x53194d){const _0x3d2a2c=_0x5ebd91;try{const _0xc4dc79=JSON[_0x3d2a2c(0x17a)](_0x153e3d['toString']()),_0x37f017=_0xc4dc79[_0x3d2a2c(0x132)]?.[_0x3d2a2c(0x1bd)]||'unknown';_0x500ef3(_0x3d2a2c(0x172)+_0x37f017+'\x20|\x20model='+_0x4167d4);const _0x15bdbc=_0x322318(_0xc4dc79,_0x4167d4);_0x500ef3(_0x3d2a2c(0x102)+_0x15bdbc[_0x3d2a2c(0x161)]['length']+_0x3d2a2c(0x144)+(_0x15bdbc[_0x3d2a2c(0x1a6)]?.['length']||0x0));_0x15bdbc['tools']?.['length']&&_0x500ef3('🔷\x20[KIRO]\x20tools:\x20'+_0x15bdbc['tools']['map'](_0x352544=>_0x352544[_0x3d2a2c(0x130)]['name'])[_0x3d2a2c(0x150)](',\x20'));if(!_0x15bdbc['messages'][_0x3d2a2c(0x120)])return _0x1cb459(_0x3d2a2c(0x103)),_0x53194d(_0x1cf72c,_0x39098f,_0x153e3d);const _0x3d071b=await _0x3e6572(_0x15bdbc);_0x39098f['writeHead'](0xc8,{'Content-Type':_0x3d2a2c(0xfd),'Cache-Control':_0x3d2a2c(0x139),'Connection':'keep-alive','Transfer-Encoding':_0x3d2a2c(0x1d4),'x-amzn-RequestId':_0x1cf72c[_0x3d2a2c(0x11a)]['amz-sdk-invocation-id']||_0x37f017,'x-amzn-codewhisperer-conversation-id':_0x37f017,'X-XSS-Protection':_0x3d2a2c(0x18c),'X-Frame-Options':'DENY','X-Content-Type-Options':_0x3d2a2c(0x1ea)});const _0x109488=_0x3d071b[_0x3d2a2c(0x158)]['getReader'](),_0x234d7b=new TextDecoder();let _0x3f9442='',_0x1d6fb9=![];const _0x378c95={};let _0x5f3d48=null;while(!![]){const {done:_0x370fe6,value:_0x1aa943}=await _0x109488[_0x3d2a2c(0x1de)]();if(_0x370fe6)break;_0x3f9442+=_0x234d7b[_0x3d2a2c(0x117)](_0x1aa943,{'stream':!![]});const _0x2db646=_0x3f9442[_0x3d2a2c(0x1ba)]('\x0a');_0x3f9442=_0x2db646[_0x3d2a2c(0x198)]();for(const _0x118a82 of _0x2db646){if(!_0x118a82[_0x3d2a2c(0x116)](_0x3d2a2c(0x1be)))continue;const _0x3f7088=_0x118a82[_0x3d2a2c(0x12c)](0x6)['trim']();if(_0x3f7088===_0x3d2a2c(0x17d))continue;let _0x25036f;try{_0x25036f=JSON[_0x3d2a2c(0x17a)](_0x3f7088);}catch{continue;}if(_0x25036f['usage'])_0x5f3d48=_0x25036f[_0x3d2a2c(0x17b)];const _0x2f5d0a=_0x25036f[_0x3d2a2c(0x1a9)]?.[0x0];if(!_0x2f5d0a)continue;const _0x682a0b=_0x2f5d0a['delta']||{},_0x25b3cb=_0x2f5d0a[_0x3d2a2c(0x16e)];_0x682a0b[_0x3d2a2c(0x16f)]&&_0x39098f[_0x3d2a2c(0x145)](_0x54bde2('assistantResponseEvent',{'content':_0x682a0b[_0x3d2a2c(0x16f)],'modelId':_0x4167d4}));if(_0x682a0b[_0x3d2a2c(0xfc)]){_0x1d6fb9=!![];for(const _0x5aff8a of _0x682a0b[_0x3d2a2c(0xfc)]){const _0x5cc048=_0x5aff8a[_0x3d2a2c(0x1af)]??0x0;if(!_0x378c95[_0x5cc048])_0x378c95[_0x5cc048]={'id':'','name':'','args':''};if(_0x5aff8a['id'])_0x378c95[_0x5cc048]['id']=_0x5aff8a['id'];if(_0x5aff8a[_0x3d2a2c(0x130)]?.[_0x3d2a2c(0x1ec)])_0x378c95[_0x5cc048]['name']=_0x5aff8a[_0x3d2a2c(0x130)][_0x3d2a2c(0x1ec)];if(_0x5aff8a[_0x3d2a2c(0x130)]?.[_0x3d2a2c(0x181)])_0x378c95[_0x5cc048]['args']+=_0x5aff8a['function']['arguments'];}}if(_0x25b3cb){if(_0x1d6fb9){for(const _0x7e0634 of Object[_0x3d2a2c(0x15c)](_0x378c95)){_0x500ef3(_0x3d2a2c(0x112)+_0x7e0634['id']+_0x3d2a2c(0x118)+_0x7e0634[_0x3d2a2c(0x1ec)]),_0x39098f[_0x3d2a2c(0x145)](_0x54bde2('toolUseEvent',{'name':_0x7e0634['name'],'toolUseId':_0x7e0634['id']}));const _0x385e97=_0x7e0634['args']||'{}',_0x26a1a9=0x20;for(let _0x5785dc=0x0;_0x5785dc<_0x385e97[_0x3d2a2c(0x120)];_0x5785dc+=_0x26a1a9){_0x39098f['write'](_0x54bde2(_0x3d2a2c(0x1ce),{'input':_0x385e97[_0x3d2a2c(0x12c)](_0x5785dc,_0x5785dc+_0x26a1a9),'name':_0x7e0634['name'],'toolUseId':_0x7e0634['id']}));}_0x39098f[_0x3d2a2c(0x145)](_0x54bde2('toolUseEvent',{'name':_0x7e0634[_0x3d2a2c(0x1ec)],'stop':!![],'toolUseId':_0x7e0634['id']}));}_0x39098f['write'](_0x54bde2(_0x3d2a2c(0x1c0),{'content':'','modelId':_0x4167d4}));}const _0x309491=_0x5f3d48?.['prompt_tokens']||0x0,_0x59fe52=_0x5f3d48?.['total_tokens']||0x0,_0x43f7d9=_0x309491>0x0?_0x309491/0x30d40*0x64:1.5,_0x24fce6=_0x59fe52>0x0?_0x59fe52*0.000004:0.001;_0x39098f['write'](_0x54bde2('contextUsageEvent',{'contextUsagePercentage':_0x43f7d9})),_0x39098f[_0x3d2a2c(0x145)](_0x54bde2('meteringEvent',{'unit':_0x3d2a2c(0x1e1),'unitPlural':'credits','usage':_0x24fce6})),_0x500ef3(_0x3d2a2c(0x1b4)+_0x25b3cb+_0x3d2a2c(0x173)+_0x1d6fb9);}}}_0x39098f[_0x3d2a2c(0x10d)]();}catch(_0x532ffb){_0x1cb459(_0x3d2a2c(0x107)+_0x532ffb[_0x3d2a2c(0x156)]);if(!_0x39098f[_0x3d2a2c(0x109)])_0x39098f[_0x3d2a2c(0x13a)](0x1f4,{'Content-Type':_0x3d2a2c(0x11e)});_0x39098f[_0x3d2a2c(0x10d)](JSON['stringify']({'error':{'message':_0x532ffb[_0x3d2a2c(0x156)],'type':_0x3d2a2c(0x128)}}));}}_0x3db180[_0x5ebd91(0x1ca)]={'intercept':_0x18a1de};}}),https=require(a0_0x285b10(0x14d)),fs=require('fs'),path=require('path'),dns=require(a0_0x285b10(0x1a0)),{promisify}=require(a0_0x285b10(0x1b5)),{log,err}=require_logger(),{TARGET_HOSTS,URL_PATTERNS,getToolForHost}=require_config(),{DATA_DIR,MITM_DIR}=require_paths(),{getCertForDomain}=require_generate(),DB_FILE=path['join'](DATA_DIR,'db.json'),LOCAL_PORT=0x1bb,ENABLE_FILE_LOG=![],LOG_DIR=path['join'](DATA_DIR,a0_0x285b10(0x153),a0_0x285b10(0x19c)),INTERNAL_REQUEST_HEADER={'name':a0_0x285b10(0x1d5),'value':a0_0x285b10(0x136)};if(ENABLE_FILE_LOG&&!fs[a0_0x285b10(0x166)](LOG_DIR))fs[a0_0x285b10(0x174)](LOG_DIR,{'recursive':!![]});var handlers={'antigravity':require_antigravity(),'copilot':require_copilot(),'kiro':require_kiro()},certCache=new Map();function sniCallback(_0x10ae08,_0x2dccf6){const _0xc33ded=a0_0x285b10;try{if(certCache[_0xc33ded(0x143)](_0x10ae08))return _0x2dccf6(null,certCache[_0xc33ded(0x1e0)](_0x10ae08));const _0x84feb1=getCertForDomain(_0x10ae08);if(!_0x84feb1)return _0x2dccf6(new Error(_0xc33ded(0x188)+_0x10ae08));const _0x24136f=require(_0xc33ded(0x1ab))[_0xc33ded(0x140)]({'key':_0x84feb1[_0xc33ded(0x1ac)],'cert':_0x84feb1['cert']});certCache[_0xc33ded(0x1b1)](_0x10ae08,_0x24136f),log(_0xc33ded(0x125)+_0x10ae08),_0x2dccf6(null,_0x24136f);}catch(_0x2d0f01){err(_0xc33ded(0x1e6)+_0x10ae08+':\x20'+_0x2d0f01[_0xc33ded(0x156)]),_0x2dccf6(_0x2d0f01);}}var sslOptions;try{sslOptions={'key':fs['readFileSync'](path['join'](MITM_DIR,a0_0x285b10(0x182))),'cert':fs[a0_0x285b10(0x1a3)](path[a0_0x285b10(0x150)](MITM_DIR,a0_0x285b10(0x13b))),'SNICallback':sniCallback};}catch(a0_0xcda2ed){err(a0_0x285b10(0x1d7)+a0_0xcda2ed[a0_0x285b10(0x156)]),process[a0_0x285b10(0x1a7)](0x1);}var cachedTargetIPs={},CACHE_TTL_MS=0x5*0x3c*0x3e8;async function resolveTargetIP(_0x38652d){const _0x26e04e=a0_0x285b10,_0x5a7964=cachedTargetIPs[_0x38652d];if(_0x5a7964&&Date['now']()-_0x5a7964['ts']<CACHE_TTL_MS)return _0x5a7964['ip'];const _0x2d27e2=new dns[(_0x26e04e(0x1cb))]();_0x2d27e2[_0x26e04e(0x14a)]([_0x26e04e(0x165)]);const _0x5b6710=promisify(_0x2d27e2[_0x26e04e(0x133)][_0x26e04e(0x169)](_0x2d27e2)),_0x4479ef=await _0x5b6710(_0x38652d);return cachedTargetIPs[_0x38652d]={'ip':_0x4479ef[0x0],'ts':Date[_0x26e04e(0x10c)]()},cachedTargetIPs[_0x38652d]['ip'];}function collectBodyRaw(_0x1e772d){return new Promise((_0x59da21,_0x4f9917)=>{const _0x235e00=a0_0x28a5,_0x3bf33d=[];_0x1e772d['on']('data',_0x109edf=>_0x3bf33d[_0x235e00(0x1c4)](_0x109edf)),_0x1e772d['on'](_0x235e00(0x10d),()=>_0x59da21(Buffer[_0x235e00(0x18d)](_0x3bf33d))),_0x1e772d['on'](_0x235e00(0x167),_0x4f9917);});}function extractModel(_0x3c9062,_0x221a8e){const _0x2503b5=a0_0x285b10,_0x232f85=_0x3c9062['match'](/\/models\/([^/:]+)/);if(_0x232f85)return _0x232f85[0x1];try{const _0x3ba7af=JSON[_0x2503b5(0x17a)](_0x221a8e['toString']());if(_0x3ba7af[_0x2503b5(0x132)])return _0x3ba7af[_0x2503b5(0x132)][_0x2503b5(0x111)]?.[_0x2503b5(0x1e2)]?.['modelId']||null;return _0x3ba7af[_0x2503b5(0x12e)]||null;}catch{return null;}}function getMappedModel(_0x2f1a64,_0x20abe5){const _0x1ee3c0=a0_0x285b10;if(!_0x20abe5)return null;try{if(!fs[_0x1ee3c0(0x166)](DB_FILE))return null;const _0xb7772a=JSON[_0x1ee3c0(0x17a)](fs[_0x1ee3c0(0x1a3)](DB_FILE,'utf-8')),_0x38db5e=_0xb7772a[_0x1ee3c0(0x1c5)]?.[_0x2f1a64];if(!_0x38db5e)return null;if(_0x38db5e[_0x20abe5])return _0x38db5e[_0x20abe5];const _0x3d8cc6=Object[_0x1ee3c0(0x1bf)](_0x38db5e)[_0x1ee3c0(0x1e7)](_0x11b916=>_0x11b916&&_0x38db5e[_0x11b916]&&(_0x20abe5[_0x1ee3c0(0x116)](_0x11b916)||_0x11b916['startsWith'](_0x20abe5)));return _0x3d8cc6?_0x38db5e[_0x3d8cc6]:null;}catch{return null;}}function saveRequestLog(_0x10d89d,_0x2464a5){const _0x340a43=a0_0x285b10;if(!ENABLE_FILE_LOG)return;try{const _0x165aba=new Date()[_0x340a43(0x1aa)]()[_0x340a43(0x1d6)](/[:.]/g,'-'),_0x4522d5=_0x10d89d[_0x340a43(0x1d6)](/[^a-zA-Z0-9]/g,'_')[_0x340a43(0x168)](0x0,0x3c),_0x17675e=JSON['parse'](_0x2464a5[_0x340a43(0x184)]());fs[_0x340a43(0x1b0)](path[_0x340a43(0x150)](LOG_DIR,_0x165aba+'_'+_0x4522d5+_0x340a43(0x18b)),JSON[_0x340a43(0x11d)](_0x17675e,null,0x2));}catch{}}async function passthrough(_0x2510ed,_0x1984d4,_0x5aae5a,_0x1f2622){const _0x325712=a0_0x285b10,_0x201370=(_0x2510ed[_0x325712(0x11a)][_0x325712(0x164)]||TARGET_HOSTS[0x0])[_0x325712(0x1ba)](':')[0x0],_0x3cfa7f=await resolveTargetIP(_0x201370),_0x5eec2f=https[_0x325712(0x135)]({'hostname':_0x3cfa7f,'port':0x1bb,'path':_0x2510ed[_0x325712(0x115)],'method':_0x2510ed[_0x325712(0xfe)],'headers':{..._0x2510ed[_0x325712(0x11a)],'host':_0x201370},'servername':_0x201370,'rejectUnauthorized':![]},_0x4ad190=>{const _0x3da727=_0x325712;_0x1984d4['writeHead'](_0x4ad190[_0x3da727(0x104)],_0x4ad190['headers']);if(!_0x1f2622){_0x4ad190[_0x3da727(0x1b7)](_0x1984d4);return;}const _0x4aca67=[];_0x4ad190['on'](_0x3da727(0x1eb),_0x344622=>{const _0x49beeb=_0x3da727;_0x4aca67['push'](_0x344622),_0x1984d4[_0x49beeb(0x145)](_0x344622);}),_0x4ad190['on'](_0x3da727(0x10d),()=>{const _0x324350=_0x3da727;_0x1984d4[_0x324350(0x10d)]();try{_0x1f2622(Buffer['concat'](_0x4aca67),_0x4ad190[_0x324350(0x11a)]);}catch{}});});_0x5eec2f['on'](_0x325712(0x167),_0x3f3094=>{const _0x1bd5a7=_0x325712;err('Passthrough\x20error:\x20'+_0x3f3094['message']);if(!_0x1984d4[_0x1bd5a7(0x109)])_0x1984d4[_0x1bd5a7(0x13a)](0x1f6);_0x1984d4[_0x1bd5a7(0x10d)]('Bad\x20Gateway');});if(_0x5aae5a[_0x325712(0x120)]>0x0)_0x5eec2f[_0x325712(0x145)](_0x5aae5a);_0x5eec2f[_0x325712(0x10d)]();}var server=https[a0_0x285b10(0x155)](sslOptions,async(_0xcf6dbe,_0x1a40ca)=>{const _0x503db7=a0_0x285b10;try{if(_0xcf6dbe[_0x503db7(0x115)]===_0x503db7(0x12f)){_0x1a40ca['writeHead'](0xc8,{'Content-Type':_0x503db7(0x11e)}),_0x1a40ca['end'](JSON['stringify']({'ok':!![],'pid':process[_0x503db7(0x122)]}));return;}const _0x391c87=await collectBodyRaw(_0xcf6dbe);if(_0x391c87[_0x503db7(0x120)]>0x0)saveRequestLog(_0xcf6dbe['url'],_0x391c87);if(_0xcf6dbe[_0x503db7(0x11a)][INTERNAL_REQUEST_HEADER['name']]===INTERNAL_REQUEST_HEADER['value'])return passthrough(_0xcf6dbe,_0x1a40ca,_0x391c87);const _0x2929a7=getToolForHost(_0xcf6dbe['headers'][_0x503db7(0x164)]);if(!_0x2929a7)return passthrough(_0xcf6dbe,_0x1a40ca,_0x391c87);const _0x3bad41=URL_PATTERNS[_0x2929a7]||[],_0x424646=_0x3bad41[_0x503db7(0x1b2)](_0x8df943=>_0xcf6dbe['url'][_0x503db7(0x12b)](_0x8df943));if(!_0x424646)return passthrough(_0xcf6dbe,_0x1a40ca,_0x391c87);log(_0x503db7(0x151)+_0x2929a7+_0x503db7(0x1c3)+_0xcf6dbe[_0x503db7(0x115)]+'\x20|\x20bodyLen='+_0x391c87['length']);if(_0x2929a7===_0x503db7(0x1b9))return log('⚡\x20intercept\x20|\x20cursor\x20|\x20proto'),handlers[_0x2929a7][_0x503db7(0x19e)](_0xcf6dbe,_0x1a40ca,_0x391c87,null,passthrough);const _0x50a926=extractModel(_0xcf6dbe[_0x503db7(0x115)],_0x391c87);log(_0x503db7(0x151)+_0x2929a7+_0x503db7(0x19a)+_0x50a926+'\x22');const _0xc9204f=getMappedModel(_0x2929a7,_0x50a926);if(!_0xc9204f)return log(_0x503db7(0x16d)+_0x2929a7+'\x20|\x20'+(_0x50a926||'unknown')),passthrough(_0xcf6dbe,_0x1a40ca,_0x391c87);return log(_0x503db7(0x1db)+_0x2929a7+_0x503db7(0x13c)+_0x50a926+_0x503db7(0x193)+_0xc9204f),handlers[_0x2929a7][_0x503db7(0x19e)](_0xcf6dbe,_0x1a40ca,_0x391c87,_0xc9204f,passthrough);}catch(_0x65291c){err(_0x503db7(0x1d2)+_0x65291c[_0x503db7(0x156)]);if(!_0x1a40ca[_0x503db7(0x109)])_0x1a40ca['writeHead'](0x1f4,{'Content-Type':_0x503db7(0x11e)});_0x1a40ca[_0x503db7(0x10d)](JSON[_0x503db7(0x11d)]({'error':{'message':_0x65291c['message'],'type':_0x503db7(0x128)}}));}});server[a0_0x285b10(0x146)](LOCAL_PORT,()=>log(a0_0x285b10(0x10f)+LOCAL_PORT)),server['on'](a0_0x285b10(0x167),_0x2648ea=>{const _0x5b0a3f=a0_0x285b10;if(_0x2648ea['code']===_0x5b0a3f(0x194))err(_0x5b0a3f(0x1cf)+LOCAL_PORT+'\x20already\x20in\x20use');else{if(_0x2648ea['code']===_0x5b0a3f(0x179))err('Permission\x20denied\x20for\x20port\x20'+LOCAL_PORT);else err(_0x2648ea['message']);}process[_0x5b0a3f(0x1a7)](0x1);});function a0_0x28a5(_0x285d4a,_0x1c373b){_0x285d4a=_0x285d4a-0xfc;const _0x25caff=a0_0x25ca();let _0x28a52f=_0x25caff[_0x285d4a];if(a0_0x28a5['zMuILS']===undefined){var _0xd3d74f=function(_0x16d65b){const _0x3e7771='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x179bbe='',_0x228d89='';for(let _0x25aaf6=0x0,_0x268df2,_0x173454,_0x3c43fc=0x0;_0x173454=_0x16d65b['charAt'](_0x3c43fc++);~_0x173454&&(_0x268df2=_0x25aaf6%0x4?_0x268df2*0x40+_0x173454:_0x173454,_0x25aaf6++%0x4)?_0x179bbe+=String['fromCharCode'](0xff&_0x268df2>>(-0x2*_0x25aaf6&0x6)):0x0){_0x173454=_0x3e7771['indexOf'](_0x173454);}for(let _0x25b46a=0x0,_0x5c009a=_0x179bbe['length'];_0x25b46a<_0x5c009a;_0x25b46a++){_0x228d89+='%'+('00'+_0x179bbe['charCodeAt'](_0x25b46a)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x228d89);};a0_0x28a5['pZHqvf']=_0xd3d74f,a0_0x28a5['OGQlju']={},a0_0x28a5['zMuILS']=!![];}const _0x21034c=_0x25caff[0x0],_0x150c60=_0x285d4a+_0x21034c,_0x5f3d62=a0_0x28a5['OGQlju'][_0x150c60];return!_0x5f3d62?(_0x28a52f=a0_0x28a5['pZHqvf'](_0x28a52f),a0_0x28a5['OGQlju'][_0x150c60]=_0x28a52f):_0x28a52f=_0x5f3d62,_0x28a52f;}function a0_0x25ca(){const _0x2c4803=['w0TjuK9Die5Vig1LC3nHz2vZigfMDgvYignVBNzLCNnPB24G4OcuihbHC3n0AhjVDwDO','C3rHDhvZq29Kzq','C2vYAwfStNvTyMvY','Aw5WDxq','w0TjuK9Dia','D3jPDgvvsw50mtzcrq','AgvHzgvYC1nLBNq','ChjPDMf0zuTLEuzYB21qzw0','oMDLBMvYyxrLq29UDgvUDa','BM93','zw5K','wc1by2nLBc1cDwzMzxjPBMC','8j+AGcbtzxj2zxiGCMvHzhKGB24GoG','C2v0rNvSBfLLyxi','y3vYCMvUDe1LC3nHz2u','8j+uTYbBs0Lst10GDg9VBfvZzuv2zw50ihWGAwq9','D3jPDgvvsw50mZjcrq','C2v0sxnZDwvY','DxjS','C3rHCNrZv2L0Aa','zgvJB2rL','ig5HBwu9','DxnLCG','AgvHzgvYCW','l1j1BLbVBgW','z2v0rNvSBfLLyxi','C3rYAw5NAwz5','yxbWBgLJyxrPB24VANnVBG','l2DLBMvYyxrLqxnZAxn0yw50uMvZCg9UC2u','BgvUz3rO','yw50AwDYyxzPDhK','CgLK','l3yXl21LC3nHz2vZ','DMfSAwrPDhK','8j+uKcbdzxj0igDLBMvYyxrLzdOG','Dg9VBfjLC3vSDhm','qMvHCMvYia','BwL0Bv9LCNjVCG','nZa2nJqXnMPtuLzdwG','l1j1BG','Aw5JBhvKzxm','C2XPy2u','uM9HBwLUzW','Bw9KzwW','l19TAxrTx2HLywX0Aa','zNvUy3rPB24','zgfPBhKTy2XVDwrJB2rLlxbHlMDVB2DSzwfWAxmUy29T','y29UDMvYC2f0Aw9Uu3rHDgu','CMvZB2X2ztq','Dg9VBfvZzxm','CMvXDwvZDa','Bg9JywW','ndqYmdCXn3PRsNHRqG','zNjVBq','BM8Ty2fJAgu','D3jPDgvizwfK','CM9VDenblMnYDa','ihWG','ww91igfYzsbHBIbPBNrLBNqGy2XHC3nPzMLLCG','4PYfifjVB3qGq0eGywXYzwfKEsbLEgLZDhm','y2f0y2G','y3jLyxrLu2vJDxjLq29UDgv4Da','4PYfifjVB3qGq0eGz2vUzxjHDgvKihn1y2nLC3nMDwXSEq','y29WAwXVDa','AgfZ','ihWGDg9VBhm9','D3jPDgu','BgLZDgvU','ovjVDxrLCG','y29TBw9UtMfTzq','xtOG','C2v0u2vYDMvYCW','ChjPDMf0zuTLEvrVugvT','u0LhqLjfquS','Ahr0Chm','BM90qwz0zxi','nfPOEwzRsq','AM9PBG','8j+uJsbB','mtqZmdyYmLjwuejJvW','Bg9NCW','zxzLBNq','y3jLyxrLu2vYDMvY','BwvZC2fNzq','y3jLyxrL','yM9KEq','l3jLC3bVBNnLCW','DxrMoa','BM90qMvMB3jL','DMfSDwvZ','y2vYDa','l0jPzgLbChbLBMq','Cgf0Aa','yxbPmI5JDxjZB3iUC2G','BwvZC2fNzxm','B3jNyw5PEMf0Aw9UtMfTzq','w2nVCgLSB3rDia','Ag9ZDa','oc44lJGUoa','zxHPC3rZu3LUyW','zxjYB3i','C3vIC3rYAw5N','yMLUza','EMXPyG','oMv2zw50lxr5Cgu','ChvIBgLJs2v5','4O+PihbHC3n0AhjVDwDOihWGBM8GBwfWCgLUzYb8ia','zMLUAxnOx3jLyxnVBG','y29UDgvUDa','y29UDgvUDc10ExbL','Dg9mB2nHBgvuAw1Lu3rYAw5N','8j+uTYbBs0Lst10GAw50zxjJzxb0ihWGy29UDMvYC2f0Aw9Uswq9','igHHC1rVB2XdywXSCZ0','BwTKAxjtEw5J','Aw5WDxrty2HLBwe','y29WEq','CgTP','zgvZy3jPChrPB24','rufdq0vt','CgfYC2u','DxnHz2u','C2v0rxH0zw5ZAw9UCW','w0rptKvD','BwfW','Dg9VBa','CNnH','yxjNDw1LBNrZ','CM9VDenblMTLEq','oNn0CMvHBuDLBMvYyxrLq29UDgvUDa','Dg9tDhjPBMC','Dg9VBfnWzwnPzMLJyxrPB24','m01Nzerrtq','ChjPDMf0zuTLEq','rMfPBgvKihrVigDLBMvYyxrLignLCNqGzM9Yia','Dw5SAw5Ru3LUyW','z2vUzxjHDgvlzxLqywLY','lMPZB24','mtSGBw9Kzt1IBg9JAW','y29Uy2f0','Dgv4Dc9LDMvUDc1ZDhjLyw0','nti4nJG3mLLHDxnXzq','8j+uKcbsB290ienbigv4CgLYzwqGB3iGzxHWAxjPBMCGC29VBIdIGjqGCMvNzw5LCMf0Aw5NlI4U','y3jLyxrLq2vYDgLMAwnHDgu','nZu3mZy2BLjeEury','iokgKIa','ruferfjjtLvtrq','ANnVBG','DxnLCKLUChv0twvZC2fNzunVBNrLEhq','DhjPBq','Cg9W','y3jJmZi','xsbTB2rLBd0I','zxH0s2v5vxnHz2u','BwL0Bq','y2vYDgLMAwnHDgvuB1bLBq','Aw50zxjJzxb0','zw50CMLLCW','zg5Z','ovjVDxrLCIbnsvrnifjVB3qGq0e','8j+uKcbhzw5LCMf0Aw5NifjVB3qGq0eGy2vYDgLMAwnHDguUlI4','CMvHzezPBgvtEw5J','mtK1odm1meDMDxLSBq','C3vIAMvJDefSDe5HBwu','Dg9VBhm','zxHPDa','l2nOyxqVy29TCgXLDgLVBNm','y2HVAwnLCW','Dg9ju09tDhjPBMC','DgXZ','A2v5','Cs51CY1Lyxn0lteUyw1HEM9UyxDZlMnVBq','yxr0CMLIDxrLCW','Aw5KzxG','D3jPDgvgAwXLu3LUyW','C2v0','C29Tzq','yMfZAwndB25ZDhjHAw50CW','8j+uTYbBs0Lst10Gzg9Uzsb8igzPBMLZAfjLyxnVBJ0','DxrPBa','oM1LC3nHz2uTDhLWzq','CgLWzq','yxbPlMLUzgL2Awr1ywWUz2L0AhvIy29WAwXVDc5JB20','y3vYC29Y','C3bSAxq','ywXSB2m','Ag9TzwrPCG','y29UDMvYC2f0Aw9Uswq','zgf0ytOG','A2v5CW','yxnZAxn0yw50uMvZCg9UC2vfDMvUDa','qxbWrgf0yq','AgLZDg9YEq','xsb1CMW9','ChvZAa','BwL0BufSAwfZ','y2vYDgLMAwnHDgvgCM9TugvT','A2v5vxnHz2u','u0Lhvevstq','C2LNBG','zxHWB3j0CW','uMvZB2X2zxi','C3vIAMvJDa','xsbBtuLutv0G','Dg9VBfvZzuv2zw50','ug9YDca','z2v0uMvHzgvY','Bg9N','vw5Oyw5KBgvKigvYCM9YoIa','D2LUmZi','y2H1BMTLza','Ec1Yzxf1zxn0lxnVDxjJzq','CMvWBgfJzq','uM9VDcbdqsbUB3qGzM91BMq6ia','uM9VDcbdqsbUB3qGzM91BMqUieDLBMvYyxrLigL0igzPCNn0lG','mZq0nJK2mtn5Eg9IzfC','C2v0u3vIAMvJDa','4PQHigLUDgvYy2vWDcb8ia','l3yXl2nOyxqVy29TCgXLDgLVBNm','Dgv4Da','CMvHza','z2v0t3DUuhjVCgvYDhLoyw1LCW','z2v0','y3jLzgL0','DxnLCKLUChv0twvZC2fNzq','y2XVDwrJB2rLlxbHlMDVB2DSzwfWAxmUy29T','Ahr0CdOVl2XVy2fSAg9ZDdOYmdeYoa','Dg9VBfvZzuLK','u05jigvYCM9YigzVCIa','zMLUza','lJLYB3v0zxi','w2fUDgLNCMf2Axr5xsa','BM9ZBMLMzG','zgf0yq','BMfTzq','Dg9VBf9JywXSCW','yxbWBgLJyxrPB24VDM5KlMfTyxPVBI5LDMvUDhn0CMvHBq','Bwv0Ag9K','l1j1BLntrq','CgXHDgzVCM0','yxnZAxn0yw50uMvZCg9UC2vnzxnZywDL','8j+uTYbBs0Lst10Gy29UDMvYDgvKihWGBwvZC2fNzxm9'];a0_0x25ca=function(){return _0x2c4803;};return a0_0x25ca();}var shutdown=()=>server['close'](()=>process[a0_0x285b10(0x1a7)](0x0));process['on'](a0_0x285b10(0x1c8),shutdown),process['on']('SIGINT',shutdown);if(process['platform']===a0_0x285b10(0x1d3))process['on'](a0_0x285b10(0x14c),shutdown);
|
|
1
|
+
const a0_0xc2df71=a0_0x57f7;(function(_0x26673c,_0x9034cd){const _0x5e16a4=a0_0x57f7,_0x35435d=_0x26673c();while(!![]){try{const _0x46d576=parseInt(_0x5e16a4(0x15a))/0x1*(-parseInt(_0x5e16a4(0x117))/0x2)+-parseInt(_0x5e16a4(0x18d))/0x3+-parseInt(_0x5e16a4(0x13c))/0x4*(-parseInt(_0x5e16a4(0x1b4))/0x5)+-parseInt(_0x5e16a4(0x143))/0x6*(parseInt(_0x5e16a4(0x134))/0x7)+parseInt(_0x5e16a4(0x158))/0x8+-parseInt(_0x5e16a4(0x175))/0x9+parseInt(_0x5e16a4(0x12f))/0xa;if(_0x46d576===_0x9034cd)break;else _0x35435d['push'](_0x35435d['shift']());}catch(_0x375b17){_0x35435d['push'](_0x35435d['shift']());}}}(a0_0x4ae4,0x2b401));var __getOwnPropNames=Object['getOwnPropertyNames'],__commonJS=(_0x214aaf,_0x3c45f2)=>function _0x16b5d1(){const _0x355e61=a0_0x57f7;return _0x3c45f2||(0x0,_0x214aaf[__getOwnPropNames(_0x214aaf)[0x0]])((_0x3c45f2={'exports':{}})['exports'],_0x3c45f2),_0x3c45f2[_0x355e61(0x10f)];},require_logger=__commonJS({'../app/src/mitm/logger.js'(_0xe2c0ed,_0x5a3010){const _0x143076=a0_0x57f7;function _0x3ff1a1(){const _0x2af10a=a0_0x57f7;return new Date()[_0x2af10a(0x113)](_0x2af10a(0x15b),{'hour12':![]});}var _0x307faa=_0x29fa6e=>console['log']('['+_0x3ff1a1()+']\x20[MITM]\x20'+_0x29fa6e),_0xc0614f=_0x46c3ce=>console[_0x143076(0xed)]('['+_0x3ff1a1()+']\x20❌\x20[MITM]\x20'+_0x46c3ce);_0x5a3010[_0x143076(0x10f)]={'log':_0x307faa,'err':_0xc0614f};}}),require_config=__commonJS({'../app/src/mitm/config.js'(_0x24f9b2,_0x232db4){const _0x7d6d33=a0_0x57f7;var _0x3938e3=['daily-cloudcode-pa.googleapis.com',_0x7d6d33(0xe1),'api.individual.githubcopilot.com','q.us-east-1.amazonaws.com',_0x7d6d33(0x1bd)],_0x4dba44={'antigravity':[_0x7d6d33(0x169),_0x7d6d33(0x1ac)],'copilot':[_0x7d6d33(0x13a),'/v1/messages',_0x7d6d33(0x1b9)],'kiro':[_0x7d6d33(0x10d)],'cursor':[_0x7d6d33(0x15c),'/RunSSE','/RunPoll',_0x7d6d33(0x128)]};function _0x1700a5(_0x3e6663){const _0x3679ea=_0x7d6d33,_0x159783=(_0x3e6663||'')['split'](':')[0x0];if(_0x159783===_0x3679ea(0x1a0))return _0x3679ea(0x115);if(_0x159783===_0x3679ea(0xef)||_0x159783===_0x3679ea(0xe1))return'antigravity';if(_0x159783===_0x3679ea(0x19e))return _0x3679ea(0x17c);if(_0x159783===_0x3679ea(0x1bd))return _0x3679ea(0x102);return null;}_0x232db4[_0x7d6d33(0x10f)]={'TARGET_HOSTS':_0x3938e3,'URL_PATTERNS':_0x4dba44,'getToolForHost':_0x1700a5};}}),require_paths=__commonJS({'../app/src/mitm/paths.js'(_0x2c27f4,_0x27f395){const _0x35d396=a0_0x57f7;var _0x440f3d=require('path'),_0x19d28a=require('os');function _0x29d3a1(){const _0x1441bf=a0_0x57f7;if(process.env.DATA_DIR)return process.env.DATA_DIR;if(process[_0x1441bf(0x154)]==='win32')return _0x440f3d[_0x1441bf(0x127)](process.env.APPDATA||_0x440f3d['join'](_0x19d28a[_0x1441bf(0x173)](),'AppData',_0x1441bf(0x19a)),_0x1441bf(0x18e));return _0x440f3d['join'](_0x19d28a[_0x1441bf(0x173)](),_0x1441bf(0x10c));}var _0x110d1a=_0x29d3a1(),_0x4cbef4=_0x440f3d[_0x35d396(0x127)](_0x110d1a,_0x35d396(0xdb));_0x27f395[_0x35d396(0x10f)]={'DATA_DIR':_0x110d1a,'MITM_DIR':_0x4cbef4};}}),require_rootCA=__commonJS({'../app/src/mitm/cert/rootCA.js'(_0xfdb13e,_0x15eee5){const _0x18ec27=a0_0x57f7;var _0x38d294=require('path'),_0x50e162=require('fs'),_0xd65db5=require(_0x18ec27(0x164)),{MITM_DIR:_0x410363}=require_paths(),_0x156c26=_0x38d294[_0x18ec27(0x127)](_0x410363,_0x18ec27(0x1a5)),_0x3666d3=_0x38d294['join'](_0x410363,'rootCA.crt');function _0x2aea37(_0x208318){const _0x51e84e=_0x18ec27;try{const _0x1f18e0=_0xd65db5[_0x51e84e(0xf6)]['certificateFromPem'](_0x50e162[_0x51e84e(0x10b)](_0x208318,_0x51e84e(0x18b))),_0x5b941e=new Date(Date['now']()+0x1e*0x18*0x3c*0x3c*0x3e8);return _0x1f18e0[_0x51e84e(0x100)][_0x51e84e(0xd5)]<_0x5b941e;}catch{return!![];}}async function _0x3f9417(){const _0xccd5df=_0x18ec27,_0x12486e=_0x50e162[_0xccd5df(0x189)](_0x156c26)&&_0x50e162[_0xccd5df(0x189)](_0x3666d3);if(_0x12486e&&!_0x2aea37(_0x3666d3))return console[_0xccd5df(0x155)](_0xccd5df(0x197)),{'key':_0x156c26,'cert':_0x3666d3};if(_0x12486e){console[_0xccd5df(0x155)](_0xccd5df(0xf7));try{_0x50e162[_0xccd5df(0x1b5)](_0x156c26);}catch{}try{_0x50e162[_0xccd5df(0x1b5)](_0x3666d3);}catch{}}!_0x50e162[_0xccd5df(0x189)](_0x410363)&&_0x50e162[_0xccd5df(0x124)](_0x410363,{'recursive':!![]});console[_0xccd5df(0x155)]('🔐\x20Generating\x20Root\x20CA\x20certificate...');const _0x12aee1=_0xd65db5[_0xccd5df(0xf6)]['rsa'][_0xccd5df(0x159)](0x800),_0x39e853=_0xd65db5['pki'][_0xccd5df(0xf1)]();_0x39e853[_0xccd5df(0x1b3)]=_0x12aee1[_0xccd5df(0x1b3)],_0x39e853[_0xccd5df(0x12b)]='01',_0x39e853[_0xccd5df(0x100)][_0xccd5df(0x133)]=new Date(),_0x39e853[_0xccd5df(0x100)]['notAfter']=new Date(),_0x39e853[_0xccd5df(0x100)]['notAfter'][_0xccd5df(0x191)](_0x39e853['validity'][_0xccd5df(0x133)][_0xccd5df(0x142)]()+0xa);const _0x54e110=[{'name':_0xccd5df(0x14a),'value':'9Router\x20MITM\x20Root\x20CA'},{'name':_0xccd5df(0xda),'value':_0xccd5df(0x1c0)},{'name':'countryName','value':'US'}];_0x39e853[_0xccd5df(0x17e)](_0x54e110),_0x39e853[_0xccd5df(0x144)](_0x54e110),_0x39e853[_0xccd5df(0xe0)]([{'name':'basicConstraints','cA':!![],'critical':!![]},{'name':_0xccd5df(0xe3),'keyCertSign':!![],'cRLSign':!![],'critical':!![]},{'name':_0xccd5df(0x174)}]),_0x39e853[_0xccd5df(0x1a1)](_0x12aee1[_0xccd5df(0x11b)],_0xd65db5['md'][_0xccd5df(0x16f)][_0xccd5df(0xe2)]());const _0x10bd66=_0xd65db5[_0xccd5df(0xf6)][_0xccd5df(0xfb)](_0x12aee1[_0xccd5df(0x11b)]),_0x458d73=_0xd65db5[_0xccd5df(0xf6)][_0xccd5df(0x183)](_0x39e853);return _0x50e162[_0xccd5df(0xd8)](_0x156c26,_0x10bd66),_0x50e162[_0xccd5df(0xd8)](_0x3666d3,_0x458d73),console['log'](_0xccd5df(0x123)),{'key':_0x156c26,'cert':_0x3666d3};}function _0x3c813a(){const _0x4a0c2d=_0x18ec27;if(!_0x50e162[_0x4a0c2d(0x189)](_0x156c26)||!_0x50e162[_0x4a0c2d(0x189)](_0x3666d3))throw new Error(_0x4a0c2d(0x160));const _0x11221e=_0x50e162['readFileSync'](_0x156c26,_0x4a0c2d(0x18b)),_0x5f5df8=_0x50e162[_0x4a0c2d(0x10b)](_0x3666d3,_0x4a0c2d(0x18b));return{'key':_0xd65db5[_0x4a0c2d(0xf6)][_0x4a0c2d(0x149)](_0x11221e),'cert':_0xd65db5[_0x4a0c2d(0xf6)][_0x4a0c2d(0xf2)](_0x5f5df8)};}function _0x5b4545(_0x1e9e13,_0x21b41b){const _0x314c0d=_0x18ec27,_0x2e7f76=_0xd65db5['pki'][_0x314c0d(0x1ab)][_0x314c0d(0x159)](0x800),_0x46cf4b=_0xd65db5[_0x314c0d(0xf6)]['createCertificate']();return _0x46cf4b['publicKey']=_0x2e7f76[_0x314c0d(0x1b3)],_0x46cf4b['serialNumber']=Math['floor'](Math[_0x314c0d(0x11e)]()*0xf4240)[_0x314c0d(0x1bb)](),_0x46cf4b[_0x314c0d(0x100)]['notBefore']=new Date(),_0x46cf4b[_0x314c0d(0x100)][_0x314c0d(0xd5)]=new Date(),_0x46cf4b[_0x314c0d(0x100)][_0x314c0d(0xd5)]['setFullYear'](_0x46cf4b[_0x314c0d(0x100)][_0x314c0d(0x133)]['getFullYear']()+0x1),_0x46cf4b[_0x314c0d(0x17e)]([{'name':_0x314c0d(0x14a),'value':_0x1e9e13}]),_0x46cf4b[_0x314c0d(0x144)](_0x21b41b[_0x314c0d(0xfa)][_0x314c0d(0x1bc)][_0x314c0d(0xf4)]),_0x46cf4b['setExtensions']([{'name':_0x314c0d(0x165),'cA':![]},{'name':'keyUsage','digitalSignature':!![],'keyEncipherment':!![]},{'name':_0x314c0d(0x1ba),'serverAuth':!![],'clientAuth':!![]},{'name':_0x314c0d(0x188),'altNames':[{'type':0x2,'value':_0x1e9e13},{'type':0x2,'value':'*.'+_0x1e9e13}]}]),_0x46cf4b[_0x314c0d(0x1a1)](_0x21b41b[_0x314c0d(0x11c)],_0xd65db5['md'][_0x314c0d(0x16f)][_0x314c0d(0xe2)]()),{'key':_0xd65db5[_0x314c0d(0xf6)][_0x314c0d(0xfb)](_0x2e7f76[_0x314c0d(0x11b)]),'cert':_0xd65db5['pki']['certificateToPem'](_0x46cf4b)};}_0x15eee5[_0x18ec27(0x10f)]={'generateRootCA':_0x3f9417,'loadRootCA':_0x3c813a,'generateLeafCert':_0x5b4545,'isCertExpired':_0x2aea37,'ROOT_CA_CERT_PATH':_0x3666d3,'ROOT_CA_KEY_PATH':_0x156c26};}}),require_generate=__commonJS({'../app/src/mitm/cert/generate.js'(_0x15c6f2,_0x9c07c1){const _0x264396=a0_0x57f7;var _0x1e5d5c=require(_0x264396(0xd4)),_0x336c3d=require('fs'),{MITM_DIR:_0x560563}=require_paths(),{generateRootCA:_0x2529e5,loadRootCA:_0x3402de,generateLeafCert:_0xe4be05}=require_rootCA();async function _0x3d4750(){return await _0x2529e5();}function _0x34f33b(_0x5f0d30){const _0x219224=_0x264396;try{const _0x2a5076=_0x3402de(),_0x1c0525=_0xe4be05(_0x5f0d30,_0x2a5076);return{'key':_0x1c0525[_0x219224(0x11c)],'cert':_0x1c0525[_0x219224(0xfa)]};}catch(_0x5a3650){return console[_0x219224(0xed)](_0x219224(0xfc)+_0x5f0d30+':',_0x5a3650[_0x219224(0x105)]),null;}}_0x9c07c1[_0x264396(0x10f)]={'generateCert':_0x3d4750,'getCertForDomain':_0x34f33b};}}),require_base=__commonJS({'../app/src/mitm/handlers/base.js'(_0x5d6139,_0x46c20a){const _0x3ae038=a0_0x57f7;var {log:_0x44c370,err:_0x58b184}=require_logger(),_0x4aeb67=_0x3ae038(0xdf),_0x4431b4=String(process.env.MITM_ROUTER_BASE||_0x4aeb67)[_0x3ae038(0x185)]()['replace'](/\/+$/,'')||_0x4aeb67,_0x58195=process.env.ROUTER_API_KEY;async function _0x4ba504(_0x4c9982,_0x5d7af1=_0x3ae038(0x15f)){const _0x2b4912=_0x3ae038,_0x30f6c0=await fetch(''+_0x4431b4+_0x5d7af1,{'method':_0x2b4912(0x16d),'headers':{'Content-Type':_0x2b4912(0x163),..._0x58195&&{'Authorization':_0x2b4912(0x10a)+_0x58195}},'body':JSON[_0x2b4912(0xf0)](_0x4c9982)});if(!_0x30f6c0['ok']){const _0x514ebb=await _0x30f6c0['text']()[_0x2b4912(0x1b1)](()=>'');throw new Error('['+_0x30f6c0[_0x2b4912(0x148)]+_0x2b4912(0x172)+_0x514ebb);}return _0x30f6c0;}async function _0x5accd1(_0x21d0a1,_0xd1e97a){const _0x171e81=_0x3ae038,_0x3b3193=_0x21d0a1[_0x171e81(0x153)][_0x171e81(0x179)](_0x171e81(0x15e))||_0x171e81(0x163),_0x5b1f5c={'Content-Type':_0x3b3193,'Cache-Control':_0x171e81(0x119),'Connection':_0x171e81(0xe8)};if(_0x3b3193[_0x171e81(0x178)]('text/event-stream'))_0x5b1f5c[_0x171e81(0x198)]='no';_0xd1e97a[_0x171e81(0x121)](0xc8,_0x5b1f5c);if(!_0x21d0a1[_0x171e81(0xd7)]){_0xd1e97a[_0x171e81(0x167)](await _0x21d0a1['text']()[_0x171e81(0x1b1)](()=>''));return;}const _0x3e83fd=_0x21d0a1[_0x171e81(0xd7)][_0x171e81(0x176)](),_0x4268a8=new TextDecoder();while(!![]){const {done:_0x3765d4,value:_0x102425}=await _0x3e83fd[_0x171e81(0x18a)]();if(_0x3765d4){_0xd1e97a[_0x171e81(0x167)]();break;}_0xd1e97a[_0x171e81(0x146)](_0x4268a8['decode'](_0x102425,{'stream':!![]}));}}_0x46c20a['exports']={'fetchRouter':_0x4ba504,'pipeSSE':_0x5accd1};}}),require_antigravity=__commonJS({'../app/src/mitm/handlers/antigravity.js'(_0xa9310e,_0x64a0c7){const _0x5758de=a0_0x57f7;var {err:_0x308288}=require_logger(),{fetchRouter:_0x221a97,pipeSSE:_0x3aa8cb}=require_base();async function _0x3c5536(_0x1327bc,_0x49f610,_0x37b952,_0x423491){const _0x4f528c=a0_0x57f7;try{const _0x4564ef=JSON['parse'](_0x37b952['toString']());_0x4564ef[_0x4f528c(0x196)]=_0x423491;const _0x3a01b9=await _0x221a97(_0x4564ef);await _0x3aa8cb(_0x3a01b9,_0x49f610);}catch(_0x108d2c){_0x308288(_0x4f528c(0x101)+_0x108d2c['message']);if(!_0x49f610[_0x4f528c(0xde)])_0x49f610[_0x4f528c(0x121)](0x1f4,{'Content-Type':'application/json'});_0x49f610[_0x4f528c(0x167)](JSON[_0x4f528c(0xf0)]({'error':{'message':_0x108d2c[_0x4f528c(0x105)],'type':'mitm_error'}}));}}_0x64a0c7[_0x5758de(0x10f)]={'intercept':_0x3c5536};}}),require_copilot=__commonJS({'../app/src/mitm/handlers/copilot.js'(_0x115ed2,_0x9c655){const _0x434c13=a0_0x57f7;var {err:_0x2fc14b}=require_logger(),{fetchRouter:_0x4b74ab,pipeSSE:_0x8b2b80}=require_base(),_0x3c6b32={'/chat/completions':_0x434c13(0x15f),'/v1/messages':_0x434c13(0xd6),'/responses':_0x434c13(0x108)};function _0x75a3ed(_0x2cf157){const _0x409566=_0x434c13;for(const [_0x23ec50,_0x4ce7c5]of Object[_0x409566(0xff)](_0x3c6b32)){if(_0x2cf157[_0x409566(0x178)](_0x23ec50))return _0x4ce7c5;}return _0x409566(0x15f);}async function _0xacecf(_0x9df49e,_0x44bf30,_0x8eb15,_0x4a7180){const _0x45467f=_0x434c13;try{const _0x1961e2=JSON['parse'](_0x8eb15['toString']());_0x1961e2[_0x45467f(0x196)]=_0x4a7180;const _0x3f547d=_0x75a3ed(_0x9df49e['url']),_0x2054d8=await _0x4b74ab(_0x1961e2,_0x3f547d);await _0x8b2b80(_0x2054d8,_0x44bf30);}catch(_0x95d39c){_0x2fc14b(_0x45467f(0x12d)+_0x95d39c[_0x45467f(0x105)]);if(!_0x44bf30[_0x45467f(0xde)])_0x44bf30['writeHead'](0x1f4,{'Content-Type':_0x45467f(0x163)});_0x44bf30[_0x45467f(0x167)](JSON[_0x45467f(0xf0)]({'error':{'message':_0x95d39c[_0x45467f(0x105)],'type':'mitm_error'}}));}}_0x9c655['exports']={'intercept':_0xacecf};}}),require_kiro=__commonJS({'../app/src/mitm/dev/kiro.js'(_0x2f967b,_0x256b49){const _0x2c0a63=a0_0x57f7;var _0xe028d1=require(_0x2c0a63(0x14b)),{log:_0x419763,err:_0x495f6f}=require_logger(),{fetchRouter:_0x4271f4}=require_base();function _0x2bde9a(_0xaacdbc){const _0x47dcd2=_0x2c0a63;if(typeof _0xaacdbc!=='string')return![];return _0xaacdbc[_0x47dcd2(0x178)]('<identity>')||_0xaacdbc[_0x47dcd2(0x178)](_0x47dcd2(0x1a3));}function _0x41a185(_0x1ba49b,_0x2a6955){const _0x17f2df=_0x2c0a63,_0xff453a=_0x1ba49b[_0x17f2df(0xea)]||{},_0x51c7b4=_0xff453a[_0x17f2df(0x147)]||[],_0x1493e3=_0xff453a[_0x17f2df(0x187)]?.['userInputMessage'],_0x2ffcf9=[];let _0x201865=![];for(const _0x16ea39 of _0x51c7b4){if(_0x16ea39[_0x17f2df(0xdc)]){const _0x4dbc78=_0x16ea39[_0x17f2df(0xdc)],_0x31b141=(_0x4dbc78[_0x17f2df(0x126)]||'')[_0x17f2df(0x185)](),_0x19736d=_0x4dbc78['userInputMessageContext']?.[_0x17f2df(0x16c)];if(!_0x201865&&_0x2bde9a(_0x31b141)){_0x2ffcf9[_0x17f2df(0x182)]({'role':_0x17f2df(0x14e),'content':_0x31b141}),_0x201865=!![];if(_0x19736d?.[_0x17f2df(0xe6)]>0x0)for(const _0x498a0d of _0x19736d){_0x2ffcf9[_0x17f2df(0x182)]({'role':_0x17f2df(0xd2),'tool_call_id':_0x498a0d['toolUseId'],'content':_0x498a0d[_0x17f2df(0x126)]?.[_0x17f2df(0x107)](_0x16bb31=>_0x16bb31[_0x17f2df(0x152)])['join']('\x0a')||''});}continue;}if(_0x19736d?.[_0x17f2df(0xe6)]>0x0)for(const _0x1d18ae of _0x19736d){_0x2ffcf9[_0x17f2df(0x182)]({'role':'tool','tool_call_id':_0x1d18ae['toolUseId'],'content':_0x1d18ae[_0x17f2df(0x126)]?.[_0x17f2df(0x107)](_0x2f1bd9=>_0x2f1bd9[_0x17f2df(0x152)])[_0x17f2df(0x127)]('\x0a')||''});}if(_0x31b141)_0x2ffcf9[_0x17f2df(0x182)]({'role':_0x17f2df(0x16b),'content':_0x31b141});}else{if(_0x16ea39[_0x17f2df(0xf5)]){const _0x355038=_0x16ea39['assistantResponseMessage'],_0x4d3027={'role':_0x17f2df(0xdd),'content':_0x355038[_0x17f2df(0x126)]||''};_0x355038[_0x17f2df(0xf8)]?.['length']>0x0&&(_0x4d3027[_0x17f2df(0x10e)]=_0x355038[_0x17f2df(0xf8)][_0x17f2df(0x107)](_0x5e3fb5=>({'id':_0x5e3fb5[_0x17f2df(0xe9)],'type':_0x17f2df(0x13e),'function':{'name':_0x5e3fb5[_0x17f2df(0x118)],'arguments':JSON[_0x17f2df(0xf0)](_0x5e3fb5[_0x17f2df(0x116)]||{})}}))),_0x2ffcf9[_0x17f2df(0x182)](_0x4d3027);}}}if(_0x1493e3){const _0x4f43ac=_0x1493e3['userInputMessageContext']?.[_0x17f2df(0x16c)];if(_0x4f43ac?.[_0x17f2df(0xe6)]>0x0)for(const _0xc64955 of _0x4f43ac){_0x2ffcf9[_0x17f2df(0x182)]({'role':_0x17f2df(0xd2),'tool_call_id':_0xc64955[_0x17f2df(0xe9)],'content':_0xc64955[_0x17f2df(0x126)]?.[_0x17f2df(0x107)](_0x51555d=>_0x51555d[_0x17f2df(0x152)])[_0x17f2df(0x127)]('\x0a')||''});}const _0x3d3bcb=(_0x1493e3[_0x17f2df(0x126)]||'')[_0x17f2df(0x185)]();if(_0x3d3bcb)_0x2ffcf9[_0x17f2df(0x182)]({'role':_0x17f2df(0x16b),'content':_0x3d3bcb});}const _0x4b0e68={'model':_0x2a6955,'messages':_0x2ffcf9,'stream':!![],'stream_options':{'include_usage':!![]}},_0xbe6f96=_0x1493e3?.['userInputMessageContext']?.['tools'];return _0xbe6f96?.['length']>0x0&&(_0x4b0e68['tools']=_0xbe6f96[_0x17f2df(0x107)](_0xad3a16=>({'type':_0x17f2df(0x13e),'function':{'name':_0xad3a16[_0x17f2df(0x193)][_0x17f2df(0x118)],'description':_0xad3a16[_0x17f2df(0x193)][_0x17f2df(0x11a)]||_0xad3a16[_0x17f2df(0x193)]['name'],'parameters':_0xad3a16[_0x17f2df(0x193)][_0x17f2df(0x145)]?.['json']||{'type':_0x17f2df(0x1a2),'properties':{}}}}))),_0x4b0e68;}function _0xf216c4(_0x3400dd,_0x41cb9d){const _0x417475=_0x2c0a63,_0x512a23=Buffer[_0x417475(0x1b0)](JSON[_0x417475(0xf0)](_0x41cb9d),_0x417475(0x18b)),_0x3558a9=[[_0x417475(0x157),_0x3400dd],[':content-type','application/json'],[':message-type',_0x417475(0x120)]],_0x1b72d1=[];for(const [_0x45da1d,_0x1d0b17]of _0x3558a9){const _0x19c6c3=Buffer[_0x417475(0x1b0)](_0x45da1d,_0x417475(0x18b)),_0x284cdd=Buffer[_0x417475(0x1b0)](_0x1d0b17,_0x417475(0x18b)),_0x1ac796=Buffer['alloc'](0x1+_0x19c6c3[_0x417475(0xe6)]+0x1+0x2+_0x284cdd[_0x417475(0xe6)]);let _0x16e013=0x0;_0x1ac796[_0x16e013++]=_0x19c6c3[_0x417475(0xe6)],_0x19c6c3['copy'](_0x1ac796,_0x16e013),_0x16e013+=_0x19c6c3[_0x417475(0xe6)],_0x1ac796[_0x16e013++]=0x7,_0x1ac796[_0x417475(0x151)](_0x284cdd[_0x417475(0xe6)],_0x16e013),_0x16e013+=0x2,_0x284cdd[_0x417475(0x138)](_0x1ac796,_0x16e013),_0x1b72d1['push'](_0x1ac796);}const _0x512217=Buffer[_0x417475(0x19b)](_0x1b72d1),_0x21b351=0x4+0x4+0x4+_0x512217['length']+_0x512a23['length']+0x4,_0x576291=Buffer[_0x417475(0x170)](_0x21b351);let _0x17d057=0x0;_0x576291[_0x417475(0x1bf)](_0x21b351,_0x17d057),_0x17d057+=0x4,_0x576291[_0x417475(0x1bf)](_0x512217[_0x417475(0xe6)],_0x17d057),_0x17d057+=0x4;const _0x5a82e7=_0xe028d1[_0x417475(0x190)](_0x576291[_0x417475(0x156)](0x0,0x8));_0x576291[_0x417475(0x1bf)](_0x5a82e7,_0x17d057),_0x17d057+=0x4,_0x512217[_0x417475(0x138)](_0x576291,_0x17d057),_0x17d057+=_0x512217[_0x417475(0xe6)],_0x512a23[_0x417475(0x138)](_0x576291,_0x17d057),_0x17d057+=_0x512a23['length'];const _0x50c9c8=_0xe028d1[_0x417475(0x190)](_0x576291[_0x417475(0x156)](0x0,_0x21b351-0x4));return _0x576291[_0x417475(0x1bf)](_0x50c9c8,_0x17d057),_0x576291;}async function _0x3f159a(_0x1799e3,_0x3ab90e,_0x4d65e8,_0x322dcb,_0x4b3b8c){const _0x1c9f7f=_0x2c0a63;try{const _0x2e49e4=JSON['parse'](_0x4d65e8['toString']()),_0x31acc8=_0x2e49e4[_0x1c9f7f(0xea)]?.['conversationId']||_0x1c9f7f(0x130);_0x419763('🔷\x20[KIRO]\x20intercept\x20|\x20conversationId='+_0x31acc8+_0x1c9f7f(0x15d)+_0x322dcb);const _0x19bc8e=_0x41a185(_0x2e49e4,_0x322dcb);_0x419763(_0x1c9f7f(0x150)+_0x19bc8e[_0x1c9f7f(0x13f)][_0x1c9f7f(0xe6)]+_0x1c9f7f(0x140)+(_0x19bc8e[_0x1c9f7f(0x1a7)]?.[_0x1c9f7f(0xe6)]||0x0));_0x19bc8e['tools']?.[_0x1c9f7f(0xe6)]&&_0x419763('🔷\x20[KIRO]\x20tools:\x20'+_0x19bc8e[_0x1c9f7f(0x1a7)][_0x1c9f7f(0x107)](_0x3562c4=>_0x3562c4[_0x1c9f7f(0x13e)]['name'])['join'](',\x20'));if(!_0x19bc8e[_0x1c9f7f(0x13f)][_0x1c9f7f(0xe6)])return _0x495f6f(_0x1c9f7f(0x195)),_0x4b3b8c(_0x1799e3,_0x3ab90e,_0x4d65e8);const _0x558c49=await _0x4271f4(_0x19bc8e);_0x3ab90e['writeHead'](0xc8,{'Content-Type':_0x1c9f7f(0x1be),'Cache-Control':_0x1c9f7f(0x119),'Connection':_0x1c9f7f(0xe8),'Transfer-Encoding':_0x1c9f7f(0x19c),'x-amzn-RequestId':_0x1799e3['headers'][_0x1c9f7f(0x192)]||_0x31acc8,'x-amzn-codewhisperer-conversation-id':_0x31acc8,'X-XSS-Protection':_0x1c9f7f(0xd9),'X-Frame-Options':_0x1c9f7f(0x13d),'X-Content-Type-Options':_0x1c9f7f(0x19d)});const _0x2cae04=_0x558c49['body'][_0x1c9f7f(0x176)](),_0x35de04=new TextDecoder();let _0x287d26='',_0x34b05d=![];const _0x1c4b1d={};let _0x2878fc=null;while(!![]){const {done:_0x4e51d7,value:_0x1a0365}=await _0x2cae04[_0x1c9f7f(0x18a)]();if(_0x4e51d7)break;_0x287d26+=_0x35de04['decode'](_0x1a0365,{'stream':!![]});const _0x1ca329=_0x287d26[_0x1c9f7f(0x11d)]('\x0a');_0x287d26=_0x1ca329['pop']();for(const _0x5d08e0 of _0x1ca329){if(!_0x5d08e0['startsWith']('data:\x20'))continue;const _0x35d71d=_0x5d08e0[_0x1c9f7f(0x156)](0x6)[_0x1c9f7f(0x185)]();if(_0x35d71d===_0x1c9f7f(0xfd))continue;let _0x14bd49;try{_0x14bd49=JSON[_0x1c9f7f(0x112)](_0x35d71d);}catch{continue;}if(_0x14bd49['usage'])_0x2878fc=_0x14bd49[_0x1c9f7f(0x181)];const _0x3bf2b2=_0x14bd49[_0x1c9f7f(0x110)]?.[0x0];if(!_0x3bf2b2)continue;const _0x52f1cb=_0x3bf2b2[_0x1c9f7f(0x17b)]||{},_0xfc8c25=_0x3bf2b2[_0x1c9f7f(0xe4)];_0x52f1cb['content']&&_0x3ab90e[_0x1c9f7f(0x146)](_0xf216c4(_0x1c9f7f(0x19f),{'content':_0x52f1cb[_0x1c9f7f(0x126)],'modelId':_0x322dcb}));if(_0x52f1cb[_0x1c9f7f(0x10e)]){_0x34b05d=!![];for(const _0x22f0e1 of _0x52f1cb[_0x1c9f7f(0x10e)]){const _0x3ad11a=_0x22f0e1[_0x1c9f7f(0xeb)]??0x0;if(!_0x1c4b1d[_0x3ad11a])_0x1c4b1d[_0x3ad11a]={'id':'','name':'','args':''};if(_0x22f0e1['id'])_0x1c4b1d[_0x3ad11a]['id']=_0x22f0e1['id'];if(_0x22f0e1['function']?.[_0x1c9f7f(0x118)])_0x1c4b1d[_0x3ad11a][_0x1c9f7f(0x118)]=_0x22f0e1[_0x1c9f7f(0x13e)]['name'];if(_0x22f0e1['function']?.['arguments'])_0x1c4b1d[_0x3ad11a][_0x1c9f7f(0x1b7)]+=_0x22f0e1[_0x1c9f7f(0x13e)][_0x1c9f7f(0x1af)];}}if(_0xfc8c25){if(_0x34b05d){for(const _0x5d5a54 of Object[_0x1c9f7f(0x17f)](_0x1c4b1d)){_0x419763('🔷\x20[KIRO]\x20toolUseEvent\x20|\x20id='+_0x5d5a54['id']+_0x1c9f7f(0x16e)+_0x5d5a54[_0x1c9f7f(0x118)]),_0x3ab90e[_0x1c9f7f(0x146)](_0xf216c4('toolUseEvent',{'name':_0x5d5a54[_0x1c9f7f(0x118)],'toolUseId':_0x5d5a54['id']}));const _0x457134=_0x5d5a54[_0x1c9f7f(0x1b7)]||'{}',_0x33fcb1=0x20;for(let _0x1e4eae=0x0;_0x1e4eae<_0x457134['length'];_0x1e4eae+=_0x33fcb1){_0x3ab90e['write'](_0xf216c4(_0x1c9f7f(0x14f),{'input':_0x457134[_0x1c9f7f(0x156)](_0x1e4eae,_0x1e4eae+_0x33fcb1),'name':_0x5d5a54['name'],'toolUseId':_0x5d5a54['id']}));}_0x3ab90e[_0x1c9f7f(0x146)](_0xf216c4('toolUseEvent',{'name':_0x5d5a54[_0x1c9f7f(0x118)],'stop':!![],'toolUseId':_0x5d5a54['id']}));}_0x3ab90e[_0x1c9f7f(0x146)](_0xf216c4(_0x1c9f7f(0x19f),{'content':'','modelId':_0x322dcb}));}const _0xefe288=_0x2878fc?.[_0x1c9f7f(0x109)]||0x0,_0x12135f=_0x2878fc?.['total_tokens']||0x0,_0x3cdf22=_0xefe288>0x0?_0xefe288/0x30d40*0x64:1.5,_0x3bd2d3=_0x12135f>0x0?_0x12135f*0.000004:0.001;_0x3ab90e[_0x1c9f7f(0x146)](_0xf216c4(_0x1c9f7f(0x1ad),{'contextUsagePercentage':_0x3cdf22})),_0x3ab90e[_0x1c9f7f(0x146)](_0xf216c4(_0x1c9f7f(0x166),{'unit':_0x1c9f7f(0x1b2),'unitPlural':_0x1c9f7f(0x16a),'usage':_0x3bd2d3})),_0x419763(_0x1c9f7f(0x177)+_0xfc8c25+_0x1c9f7f(0x162)+_0x34b05d);}}}_0x3ab90e[_0x1c9f7f(0x167)]();}catch(_0x7301b8){_0x495f6f(_0x1c9f7f(0x139)+_0x7301b8['message']);if(!_0x3ab90e['headersSent'])_0x3ab90e[_0x1c9f7f(0x121)](0x1f4,{'Content-Type':_0x1c9f7f(0x163)});_0x3ab90e['end'](JSON[_0x1c9f7f(0xf0)]({'error':{'message':_0x7301b8[_0x1c9f7f(0x105)],'type':_0x1c9f7f(0xfe)}}));}}_0x256b49[_0x2c0a63(0x10f)]={'intercept':_0x3f159a};}}),https=require(a0_0xc2df71(0x114)),fs=require('fs'),path=require(a0_0xc2df71(0xd4)),dns=require(a0_0xc2df71(0x1a9)),{promisify}=require(a0_0xc2df71(0xec)),{log,err}=require_logger(),{TARGET_HOSTS,URL_PATTERNS,getToolForHost}=require_config(),{DATA_DIR,MITM_DIR}=require_paths(),{getCertForDomain}=require_generate(),DB_FILE=path[a0_0xc2df71(0x127)](DATA_DIR,'db.json'),LOCAL_PORT=0x1bb,ENABLE_FILE_LOG=![],LOG_DIR=path[a0_0xc2df71(0x127)](DATA_DIR,a0_0xc2df71(0x104),a0_0xc2df71(0xdb)),INTERNAL_REQUEST_HEADER={'name':'x-request-source','value':a0_0xc2df71(0x1aa)};if(ENABLE_FILE_LOG&&!fs[a0_0xc2df71(0x189)](LOG_DIR))fs['mkdirSync'](LOG_DIR,{'recursive':!![]});var handlers={'antigravity':require_antigravity(),'copilot':require_copilot(),'kiro':require_kiro()},certCache=new Map();function sniCallback(_0x577757,_0x244c89){const _0x40d293=a0_0xc2df71;try{if(certCache[_0x40d293(0x13b)](_0x577757))return _0x244c89(null,certCache[_0x40d293(0x179)](_0x577757));const _0x2b768c=getCertForDomain(_0x577757);if(!_0x2b768c)return _0x244c89(new Error(_0x40d293(0xfc)+_0x577757));const _0x159bf1=require('tls')['createSecureContext']({'key':_0x2b768c['key'],'cert':_0x2b768c[_0x40d293(0xfa)]});certCache[_0x40d293(0x12c)](_0x577757,_0x159bf1),log('🔐\x20Cert\x20generated:\x20'+_0x577757),_0x244c89(null,_0x159bf1);}catch(_0x3fd936){err(_0x40d293(0x106)+_0x577757+':\x20'+_0x3fd936[_0x40d293(0x105)]),_0x244c89(_0x3fd936);}}var sslOptions;try{sslOptions={'key':fs['readFileSync'](path[a0_0xc2df71(0x127)](MITM_DIR,a0_0xc2df71(0x1a5))),'cert':fs[a0_0xc2df71(0x10b)](path[a0_0xc2df71(0x127)](MITM_DIR,'rootCA.crt')),'SNICallback':sniCallback};}catch(a0_0x2ffb02){err(a0_0xc2df71(0xf3)+a0_0x2ffb02[a0_0xc2df71(0x105)]),process[a0_0xc2df71(0xf9)](0x1);}var cachedTargetIPs={},CACHE_TTL_MS=0x5*0x3c*0x3e8;async function resolveTargetIP(_0x1041b6){const _0x1f3bff=a0_0xc2df71,_0x4bb9f7=cachedTargetIPs[_0x1041b6];if(_0x4bb9f7&&Date[_0x1f3bff(0x103)]()-_0x4bb9f7['ts']<CACHE_TTL_MS)return _0x4bb9f7['ip'];const _0x362506=new dns[(_0x1f3bff(0x14d))]();_0x362506[_0x1f3bff(0x141)]([_0x1f3bff(0x12a)]);const _0x4143ad=promisify(_0x362506['resolve4'][_0x1f3bff(0x1a4)](_0x362506)),_0x494e84=await _0x4143ad(_0x1041b6);return cachedTargetIPs[_0x1041b6]={'ip':_0x494e84[0x0],'ts':Date[_0x1f3bff(0x103)]()},cachedTargetIPs[_0x1041b6]['ip'];}function collectBodyRaw(_0x39c18b){return new Promise((_0x228a0e,_0x515b13)=>{const _0x598809=a0_0x57f7,_0x226d4d=[];_0x39c18b['on'](_0x598809(0x111),_0x3bd33a=>_0x226d4d[_0x598809(0x182)](_0x3bd33a)),_0x39c18b['on'](_0x598809(0x167),()=>_0x228a0e(Buffer[_0x598809(0x19b)](_0x226d4d))),_0x39c18b['on'](_0x598809(0xed),_0x515b13);});}function extractModel(_0x5a6ab6,_0x38875d){const _0x4b3252=a0_0xc2df71,_0xc4b0ee=_0x5a6ab6[_0x4b3252(0x186)](/\/models\/([^/:]+)/);if(_0xc4b0ee)return _0xc4b0ee[0x1];try{const _0x2ab38b=JSON[_0x4b3252(0x112)](_0x38875d['toString']());if(_0x2ab38b[_0x4b3252(0xea)])return _0x2ab38b[_0x4b3252(0xea)][_0x4b3252(0x187)]?.[_0x4b3252(0xdc)]?.['modelId']||null;return _0x2ab38b[_0x4b3252(0x196)]||null;}catch{return null;}}function getMappedModel(_0x13222e,_0x2d556a){const _0x29fe88=a0_0xc2df71;if(!_0x2d556a)return null;try{if(!fs[_0x29fe88(0x189)](DB_FILE))return null;const _0x52f53e=JSON['parse'](fs['readFileSync'](DB_FILE,_0x29fe88(0xe7))),_0x3f3733=_0x52f53e[_0x29fe88(0x184)]?.[_0x13222e];if(!_0x3f3733)return null;if(_0x3f3733[_0x2d556a])return _0x3f3733[_0x2d556a];const _0x510d85=Object['keys'](_0x3f3733)[_0x29fe88(0x136)](_0x503f9e=>_0x503f9e&&_0x3f3733[_0x503f9e]&&(_0x2d556a[_0x29fe88(0x171)](_0x503f9e)||_0x503f9e[_0x29fe88(0x171)](_0x2d556a)));return _0x510d85?_0x3f3733[_0x510d85]:null;}catch{return null;}}function saveRequestLog(_0x522c65,_0x4b4de9){const _0x9d6b45=a0_0xc2df71;if(!ENABLE_FILE_LOG)return;try{const _0xe360de=new Date()[_0x9d6b45(0x180)]()[_0x9d6b45(0x135)](/[:.]/g,'-'),_0x3fc69e=_0x522c65[_0x9d6b45(0x135)](/[^a-zA-Z0-9]/g,'_')[_0x9d6b45(0x132)](0x0,0x3c),_0x252d25=JSON['parse'](_0x4b4de9[_0x9d6b45(0x1bb)]());fs[_0x9d6b45(0xd8)](path[_0x9d6b45(0x127)](LOG_DIR,_0xe360de+'_'+_0x3fc69e+'.json'),JSON['stringify'](_0x252d25,null,0x2));}catch{}}async function passthrough(_0x1684f8,_0x578275,_0xfc33ad,_0x5d097e){const _0x37ab56=a0_0xc2df71,_0x224355=(_0x1684f8[_0x37ab56(0x153)][_0x37ab56(0x122)]||TARGET_HOSTS[0x0])[_0x37ab56(0x11d)](':')[0x0],_0x2906a9=await resolveTargetIP(_0x224355),_0x4a69bc=https[_0x37ab56(0x168)]({'hostname':_0x2906a9,'port':0x1bb,'path':_0x1684f8['url'],'method':_0x1684f8['method'],'headers':{..._0x1684f8[_0x37ab56(0x153)],'host':_0x224355},'servername':_0x224355,'rejectUnauthorized':![]},_0x48af30=>{const _0x2bc99c=_0x37ab56;_0x578275[_0x2bc99c(0x121)](_0x48af30['statusCode'],_0x48af30[_0x2bc99c(0x153)]);if(!_0x5d097e){_0x48af30['pipe'](_0x578275);return;}const _0x51f35d=[];_0x48af30['on'](_0x2bc99c(0x111),_0x164721=>{const _0x3a3228=_0x2bc99c;_0x51f35d[_0x3a3228(0x182)](_0x164721),_0x578275[_0x3a3228(0x146)](_0x164721);}),_0x48af30['on'](_0x2bc99c(0x167),()=>{const _0x5cc72b=_0x2bc99c;_0x578275[_0x5cc72b(0x167)]();try{_0x5d097e(Buffer[_0x5cc72b(0x19b)](_0x51f35d),_0x48af30['headers']);}catch{}});});_0x4a69bc['on'](_0x37ab56(0xed),_0x3b1e84=>{const _0x4d9a22=_0x37ab56;err(_0x4d9a22(0x125)+_0x3b1e84['message']);if(!_0x578275[_0x4d9a22(0xde)])_0x578275['writeHead'](0x1f6);_0x578275[_0x4d9a22(0x167)](_0x4d9a22(0x18c));});if(_0xfc33ad['length']>0x0)_0x4a69bc[_0x37ab56(0x146)](_0xfc33ad);_0x4a69bc[_0x37ab56(0x167)]();}var server=https[a0_0xc2df71(0x131)](sslOptions,async(_0xb0199b,_0x888a9f)=>{const _0x2196ee=a0_0xc2df71;try{if(_0xb0199b[_0x2196ee(0x12e)]===_0x2196ee(0x1a8)){_0x888a9f[_0x2196ee(0x121)](0xc8,{'Content-Type':_0x2196ee(0x163)}),_0x888a9f['end'](JSON[_0x2196ee(0xf0)]({'ok':!![],'pid':process[_0x2196ee(0x199)]}));return;}const _0x576ba4=await collectBodyRaw(_0xb0199b);if(_0x576ba4[_0x2196ee(0xe6)]>0x0)saveRequestLog(_0xb0199b[_0x2196ee(0x12e)],_0x576ba4);if(_0xb0199b[_0x2196ee(0x153)][INTERNAL_REQUEST_HEADER['name']]===INTERNAL_REQUEST_HEADER['value'])return passthrough(_0xb0199b,_0x888a9f,_0x576ba4);const _0x27f686=getToolForHost(_0xb0199b[_0x2196ee(0x153)]['host']);if(!_0x27f686)return passthrough(_0xb0199b,_0x888a9f,_0x576ba4);const _0x1b6509=URL_PATTERNS[_0x27f686]||[],_0x55a166=_0x1b6509['some'](_0x525903=>_0xb0199b[_0x2196ee(0x12e)][_0x2196ee(0x178)](_0x525903));if(!_0x55a166)return passthrough(_0xb0199b,_0x888a9f,_0x576ba4);log(_0x2196ee(0x161)+_0x27f686+_0x2196ee(0x1a6)+_0xb0199b[_0x2196ee(0x12e)]+'\x20|\x20bodyLen='+_0x576ba4[_0x2196ee(0xe6)]);if(_0x27f686==='cursor')return log(_0x2196ee(0x1ae)),handlers[_0x27f686][_0x2196ee(0x194)](_0xb0199b,_0x888a9f,_0x576ba4,null,passthrough);const _0x3a64d0=extractModel(_0xb0199b['url'],_0x576ba4);log('🔍\x20['+_0x27f686+_0x2196ee(0x137)+_0x3a64d0+'\x22');const _0x1bd023=getMappedModel(_0x27f686,_0x3a64d0);if(!_0x1bd023)return log('⏩\x20passthrough\x20|\x20no\x20mapping\x20|\x20'+_0x27f686+_0x2196ee(0x14c)+(_0x3a64d0||'unknown')),passthrough(_0xb0199b,_0x888a9f,_0x576ba4);return log('⚡\x20intercept\x20|\x20'+_0x27f686+_0x2196ee(0x14c)+_0x3a64d0+_0x2196ee(0x11f)+_0x1bd023),handlers[_0x27f686][_0x2196ee(0x194)](_0xb0199b,_0x888a9f,_0x576ba4,_0x1bd023,passthrough);}catch(_0x5b1efc){err(_0x2196ee(0x1b8)+_0x5b1efc[_0x2196ee(0x105)]);if(!_0x888a9f['headersSent'])_0x888a9f[_0x2196ee(0x121)](0x1f4,{'Content-Type':_0x2196ee(0x163)});_0x888a9f[_0x2196ee(0x167)](JSON[_0x2196ee(0xf0)]({'error':{'message':_0x5b1efc['message'],'type':_0x2196ee(0xfe)}}));}});function a0_0x4ae4(){const _0x2014c0=['mtiXmLrRsefWBa','revowq','zNvUy3rPB24','BwvZC2fNzxm','ihWGDg9VBhm9','C2v0u2vYDMvYCW','z2v0rNvSBfLLyxi','odrWqMvcCfe','C2v0sxnZDwvY','Aw5WDxrty2HLBwe','D3jPDgu','AgLZDg9YEq','C3rHDhvZ','ChjPDMf0zuTLEuzYB21qzw0','y29TBw9UtMfTzq','EMXPyG','ihWG','uMvZB2X2zxi','C3LZDgvT','Dg9VBfvZzuv2zw50','8j+uTYbBs0Lst10Gy29UDMvYDgvKihWGBwvZC2fNzxm9','D3jPDgvvsw50mtzcrq','Dgv4Da','AgvHzgvYCW','CgXHDgzVCM0','Bg9N','C2XPy2u','oMv2zw50lxr5Cgu','mti2mJy3mLjpDgvcvG','z2vUzxjHDgvlzxLqywLY','m1boAvDysa','zw4Tvvm','l0jPzgLbChbLBMq','ihWGBw9KzwW9','y29UDgvUDc10ExbL','l3yXl2nOyxqVy29TCgXLDgLVBNm','uM9VDcbdqsbUB3qGzM91BMqUieDLBMvYyxrLigL0igzPCNn0lG','8j+uJsbB','igHHC1rVB2XdywXSCZ0','yxbWBgLJyxrPB24VANnVBG','BM9Kzs1MB3jNzq','yMfZAwndB25ZDhjHAw50CW','Bwv0zxjPBMDfDMvUDa','zw5K','CMvXDwvZDa','oMDLBMvYyxrLq29UDgvUDa','y3jLzgL0CW','DxnLCG','Dg9VBfjLC3vSDhm','ue9tva','ig5HBwu9','C2HHmJu2','ywXSB2m','C3rHCNrZv2L0Aa','xtOG','Ag9TzwrPCG','C3vIAMvJDeTLEuLKzw50AwzPzxi','mtm3mdi1mhzuBgrbuG','z2v0uMvHzgvY','8j+uTYbBs0Lst10Gzg9Uzsb8igzPBMLZAfjLyxnVBJ0','Aw5JBhvKzxm','z2v0','u0LhqLjfquS','zgvSDge','A2LYBW','BgLZDgvU','C2v0u3vIAMvJDa','DMfSDwvZ','Dg9ju09tDhjPBMC','DxnHz2u','ChvZAa','y2vYDgLMAwnHDgvuB1bLBq','BwL0BufSAwfZ','DhjPBq','Bwf0y2G','y3vYCMvUDe1LC3nHz2u','C3vIAMvJDefSDe5HBwu','zxHPC3rZu3LUyW','CMvHza','DxrMoa','qMfKieDHDgv3yxK','otuWndz1EwPXy3q','oxjVDxrLCG','igfSCMvHzhKGAw4GDxnL','y3jJmZi','C2v0rNvSBfLLyxi','yw16lxnKAY1PBNzVy2f0Aw9UlwLK','Dg9VBfnWzwnPzMLJyxrPB24','Aw50zxjJzxb0','w0TjuK9Die5Vig1LC3nHz2vZigfMDgvYignVBNzLCNnPB24G4OcuihbHC3n0AhjVDwDO','Bw9KzwW','4PYfifjVB3qGq0eGywXYzwfKEsbLEgLZDhm','wc1by2nLBc1cDwzMzxjPBMC','CgLK','uM9HBwLUzW','y29Uy2f0','y2H1BMTLza','BM9ZBMLMzG','Cs51CY1Lyxn0lteUyw1HEM9UyxDZlMnVBq','yxnZAxn0yw50uMvZCg9UC2vfDMvUDa','yxbPlMLUzgL2Awr1ywWUz2L0AhvIy29WAwXVDc5JB20','C2LNBG','B2jQzwn0','ww91igfYzsbHBIbPBNrLBNqGy2XHC3nPzMLLCG','yMLUza','CM9VDenblMTLEq','xsb1CMW9','Dg9VBhm','l19TAxrTx2HLywX0Aa','zg5Z','Bg9JywW','CNnH','oNn0CMvHBuDLBMvYyxrLq29UDgvUDa','y29UDgv4DfvZywDLrxzLBNq','4PQHigLUDgvYy2vWDcb8ign1CNnVCIb8ihbYB3rV','yxjNDw1LBNrZ','zNjVBq','y2f0y2G','y3jLzgL0','ChvIBgLJs2v5','ntyXnwDns0vgBa','Dw5SAw5Ru3LUyW','y29Kzq','yxjNCW','vw5Oyw5KBgvKigvYCM9YoIa','l3jLC3bVBNnLCW','zxH0s2v5vxnHz2u','Dg9tDhjPBMC','C3vIAMvJDa','yxbPmI5JDxjZB3iUC2G','yxbWBgLJyxrPB24VDM5KlMfTyxPVBI5LDMvUDhn0CMvHBq','D3jPDgvvsw50mZjcrq','ovjVDxrLCG','Dg9VBa','ug9YDca','Cgf0Aa','BM90qwz0zxi','l3yXl21LC3nHz2vZ','yM9KEq','D3jPDgvgAwXLu3LUyW','mtSGBw9Kzt1IBg9JAW','B3jNyw5PEMf0Aw9UtMfTzq','BwL0Bq','DxnLCKLUChv0twvZC2fNzq','yxnZAxn0yw50','AgvHzgvYC1nLBNq','Ahr0CdOVl2XVy2fSAg9ZDdOYmdeYoa','C2v0rxH0zw5ZAw9UCW','y2XVDwrJB2rLlxbHlMDVB2DSzwfWAxmUy29T','y3jLyxrL','A2v5vxnHz2u','zMLUAxnOx3jLyxnVBG','D2LUmZi','BgvUz3rO','DxrMltG','A2vLCc1HBgL2zq','Dg9VBfvZzuLK','y29UDMvYC2f0Aw9Uu3rHDgu','Aw5KzxG','DxrPBa','zxjYB3i','ruferfjjtLvtrq','zgfPBhKTy2XVDwrJB2rLlxbHlMDVB2DSzwfWAxmUy29T','C3rYAw5NAwz5','y3jLyxrLq2vYDgLMAwnHDgu','y2vYDgLMAwnHDgvgCM9TugvT','uM9VDcbdqsbUB3qGzM91BMq6ia','yxr0CMLIDxrLCW','yxnZAxn0yw50uMvZCg9UC2vnzxnZywDL','CgTP','8j+uKcbsB290ienbigv4CgLYzwqGB3iGzxHWAxjPBMCGC29VBIdIGjqGCMvNzw5LCMf0Aw5NlI4U','Dg9VBfvZzxm','zxHPDa','y2vYDa','ChjPDMf0zuTLEvrVugvT','rMfPBgvKihrVigDLBMvYyxrLignLCNqGzM9Yia','w0rptKvD','BwL0Bv9LCNjVCG','zw50CMLLCW','DMfSAwrPDhK','w2fUDgLNCMf2Axr5xsa','y3vYC29Y','BM93','Bg9NCW','BwvZC2fNzq','u05jigvYCM9YigzVCIa','BwfW','l3yXl3jLC3bVBNnLCW','ChjVBxb0x3rVA2vUCW','qMvHCMvYia','CMvHzezPBgvtEw5J','lJLYB3v0zxi','l2DLBMvYyxrLqxnZAxn0yw50uMvZCg9UC2u','Dg9VBf9JywXSCW','zxHWB3j0CW','y2HVAwnLCW','zgf0yq','CgfYC2u','Dg9mB2nHBgvuAw1Lu3rYAw5N','Ahr0Chm','y29WAwXVDa','Aw5WDxq','oda1otrZsNnlDfm','BMfTzq','BM8Ty2fJAgu','zgvZy3jPChrPB24','ChjPDMf0zuTLEq','A2v5','C3bSAxq','CMfUzg9T','iokgKIa','zxzLBNq','D3jPDgvizwfK','Ag9ZDa','4PYfifjVB3qGq0eGz2vUzxjHDgvKihn1y2nLC3nMDwXSEq','BwTKAxjtEw5J','ugfZC3rOCM91z2GGzxjYB3i6ia','y29UDgvUDa','AM9PBG','l1j1BG','8j+AGcbtzxj2zxiGCMvHzhKGB24GoG','oc44lJGUoa','C2vYAwfStNvTyMvY','C2v0','w2nVCgLSB3rDia','DxjS','mJKZodq3mhbtA3Pyuq','Dw5RBM93BG','y3jLyxrLu2vYDMvY','C3vIC3rYAw5N','BM90qMvMB3jL','mtu0otG3C05OuvnJ','CMvWBgfJzq','zMLUza','xsbTB2rLBd0I','y29WEq','w0TjuK9Dia','l2nOyxqVy29TCgXLDgLVBNm','AgfZ'];a0_0x4ae4=function(){return _0x2014c0;};return a0_0x4ae4();}server[a0_0xc2df71(0x17d)](LOCAL_PORT,()=>log(a0_0xc2df71(0x129)+LOCAL_PORT)),server['on'](a0_0xc2df71(0xed),_0x5378bc=>{const _0x4fac9e=a0_0xc2df71;if(_0x5378bc[_0x4fac9e(0x1b6)]===_0x4fac9e(0xee))err(_0x4fac9e(0xd3)+LOCAL_PORT+_0x4fac9e(0x18f));else{if(_0x5378bc[_0x4fac9e(0x1b6)]==='EACCES')err('Permission\x20denied\x20for\x20port\x20'+LOCAL_PORT);else err(_0x5378bc[_0x4fac9e(0x105)]);}process['exit'](0x1);});var shutdown=()=>server['close'](()=>process[a0_0xc2df71(0xf9)](0x0));function a0_0x57f7(_0x54528e,_0x18d66e){_0x54528e=_0x54528e-0xd2;const _0x4ae415=a0_0x4ae4();let _0x57f776=_0x4ae415[_0x54528e];if(a0_0x57f7['rmWKcg']===undefined){var _0x3d5184=function(_0x391249){const _0xa2c64f='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x214aaf='',_0x3c45f2='';for(let _0x16b5d1=0x0,_0xe2c0ed,_0x5a3010,_0x3ff1a1=0x0;_0x5a3010=_0x391249['charAt'](_0x3ff1a1++);~_0x5a3010&&(_0xe2c0ed=_0x16b5d1%0x4?_0xe2c0ed*0x40+_0x5a3010:_0x5a3010,_0x16b5d1++%0x4)?_0x214aaf+=String['fromCharCode'](0xff&_0xe2c0ed>>(-0x2*_0x16b5d1&0x6)):0x0){_0x5a3010=_0xa2c64f['indexOf'](_0x5a3010);}for(let _0x307faa=0x0,_0xc0614f=_0x214aaf['length'];_0x307faa<_0xc0614f;_0x307faa++){_0x3c45f2+='%'+('00'+_0x214aaf['charCodeAt'](_0x307faa)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x3c45f2);};a0_0x57f7['oqTsSq']=_0x3d5184,a0_0x57f7['sZvdiG']={},a0_0x57f7['rmWKcg']=!![];}const _0x9b5ca3=_0x4ae415[0x0],_0x4713da=_0x54528e+_0x9b5ca3,_0x3c334d=a0_0x57f7['sZvdiG'][_0x4713da];return!_0x3c334d?(_0x57f776=a0_0x57f7['oqTsSq'](_0x57f776),a0_0x57f7['sZvdiG'][_0x4713da]=_0x57f776):_0x57f776=_0x3c334d,_0x57f776;}process['on']('SIGTERM',shutdown),process['on']('SIGINT',shutdown);if(process[a0_0xc2df71(0x154)]===a0_0xc2df71(0xe5))process['on'](a0_0xc2df71(0x17a),shutdown);
|
package/package.json
CHANGED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
"use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[505],{43202:(e,i,a)=>{a.d(i,{Q2:()=>n.Q2,fg:()=>n.fg,vQ:()=>t,MA:()=>n.MA,UY:()=>r,zN:()=>n.zN,B2:()=>o});var n=a(82495);a(69633);let t={name:"Endpoint Proxy",description:"AI Infrastructure Management",version:"0.3.76"},o={storageKey:"theme",defaultTheme:"system"},r={maxLines:200,pollIntervalMs:1e3}},55348:(e,i,a)=>{a.d(i,{CL:()=>o,QC:()=>r,Xn:()=>t,YZ:()=>n});let n=["en","vi","zh-CN","zh-TW","ja","pt-BR","pt-PT","ko","es","de","fr","he","ar","ru","pl","cs","nl","tr","uk","tl","id","th","hi","bn","ur","ro","sv","it","el","hu","fi","da","no"],t="en",o="locale";function r(e){return"zh"===e||"zh-CN"===e?"zh-CN":"en"===e?"en":"vi"===e?"vi":"zh-TW"===e?"zh-TW":"ja"===e?"ja":"pt-BR"===e?"pt-BR":"pt-PT"===e?"pt-PT":"ko"===e?"ko":"es"===e?"es":"de"===e?"de":"fr"===e?"fr":"he"===e?"he":"ar"===e?"ar":"ru"===e?"ru":"pl"===e?"pl":"cs"===e?"cs":"nl"===e?"nl":"tr"===e?"tr":"uk"===e?"uk":"tl"===e?"tl":"id"===e?"id":"th"===e?"th":"hi"===e?"hi":"bn"===e?"bn":"ur"===e?"ur":"ro"===e?"ro":"sv"===e?"sv":"it"===e?"it":"el"===e?"el":"hu"===e?"hu":"fi"===e?"fi":"da"===e?"da":"no"===e?"no":t}},69633:(e,i,a)=>{a.d(i,{KC:()=>n.KC,Xg:()=>n.Xg});var n=a(94718);Object.entries(a(82495).Q2).filter(([,e])=>e.passthroughModels).map(([e])=>e),Object.entries(n.vq).flatMap(([e,i])=>i.map(i=>({provider:e,model:i.id,name:i.name})))},82495:(e,i,a)=>{a.d(i,{DI:()=>d,IS:()=>n,JH:()=>m,MA:()=>h,Q2:()=>p,fg:()=>r,gb:()=>c,mq:()=>l,nJ:()=>t,o5:()=>b,rj:()=>s,wG:()=>g,wb:()=>f,zN:()=>o,zt:()=>u});let n={kiro:{id:"kiro",alias:"kr",name:"Kiro AI",icon:"psychology_alt",color:"#FF6B35"},qwen:{id:"qwen",alias:"qw",name:"Qwen Code",icon:"psychology",color:"#10B981"},"gemini-cli":{id:"gemini-cli",alias:"gc",name:"Gemini CLI",icon:"terminal",color:"#4285F4",deprecated:!0,deprecationNotice:"Google has tightened Gemini CLI abuse detection and restricted Pro models to paid accounts (Mar 25, 2026). Using this provider may violate ToS and risk account bans."},iflow:{id:"iflow",alias:"if",name:"iFlow AI",icon:"water_drop",color:"#6366F1"}},t={openrouter:{id:"openrouter",alias:"openrouter",name:"OpenRouter",icon:"router",color:"#F97316",textIcon:"OR",passthroughModels:!0,website:"https://openrouter.ai",notice:{text:"Free tier: 27+ free models, no credit card needed, 200 req/day. After $10 credit: 1,000 req/day.",apiKeyUrl:"https://openrouter.ai/settings/keys"},modelsFetcher:{url:"https://openrouter.ai/api/v1/models",type:"openrouter-free"}},nvidia:{id:"nvidia",alias:"nvidia",name:"NVIDIA NIM",icon:"developer_board",color:"#76B900",textIcon:"NV",website:"https://developer.nvidia.com/nim",notice:{text:"Free access for NVIDIA Developer Program members (prototyping & testing).",apiKeyUrl:"https://build.nvidia.com/settings/api-keys"}},ollama:{id:"ollama",alias:"ollama",name:"Ollama Cloud",icon:"cloud",color:"#ffffffff",textIcon:"OL",website:"https://ollama.com",notice:{text:"Free tier: light usage, 1 cloud model at a time (limits reset every 5h & 7d). Pro $20/mo \xb7 Max $100/mo.",apiKeyUrl:"https://ollama.com/settings/keys"}},vertex:{id:"vertex",alias:"vx",name:"Vertex AI",icon:"cloud",color:"#4285F4",textIcon:"VX",website:"https://cloud.google.com/vertex-ai",notice:{text:"New Google Cloud accounts get $300 free credits. Requires GCP project + Service Account with Vertex AI API enabled.",apiKeyUrl:"https://console.cloud.google.com/iam-admin/serviceaccounts"}}},o={claude:{id:"claude",alias:"cc",name:"Claude Code",icon:"smart_toy",color:"#D97757"},antigravity:{id:"antigravity",alias:"ag",name:"Antigravity",icon:"rocket_launch",color:"#F59E0B",deprecated:!0,deprecationNotice:"Antigravity has tightened abuse detection and restricted model access. Using this provider may violate ToS and risk account bans."},codex:{id:"codex",alias:"cx",name:"OpenAI Codex",icon:"code",color:"#3B82F6"},github:{id:"github",alias:"gh",name:"GitHub Copilot",icon:"code",color:"#333333"},cursor:{id:"cursor",alias:"cu",name:"Cursor IDE",icon:"edit_note",color:"#00D4AA"},kilocode:{id:"kilocode",alias:"kc",name:"Kilo Code",icon:"code",color:"#FF6B35",textIcon:"KC"},cline:{id:"cline",alias:"cl",name:"Cline",icon:"smart_toy",color:"#5B9BD5",textIcon:"CL"}},r={glm:{id:"glm",alias:"glm",name:"GLM Coding",icon:"code",color:"#2563EB",textIcon:"GL",website:"https://open.bigmodel.cn"},"glm-cn":{id:"glm-cn",alias:"glm-cn",name:"GLM (China)",icon:"code",color:"#DC2626",textIcon:"GC",website:"https://open.bigmodel.cn"},kimi:{id:"kimi",alias:"kimi",name:"Kimi",icon:"psychology",color:"#1E3A8A",textIcon:"KM",website:"https://kimi.moonshot.cn"},minimax:{id:"minimax",alias:"minimax",name:"Minimax Coding",icon:"memory",color:"#7C3AED",textIcon:"MM",website:"https://www.minimaxi.com"},"minimax-cn":{id:"minimax-cn",alias:"minimax-cn",name:"Minimax (China)",icon:"memory",color:"#DC2626",textIcon:"MC",website:"https://www.minimaxi.com"},alicode:{id:"alicode",alias:"alicode",name:"Alibaba",icon:"cloud",color:"#FF6A00",textIcon:"ALi"},"alicode-intl":{id:"alicode-intl",alias:"alicode-intl",name:"Alibaba Intl",icon:"cloud",color:"#FF6A00",textIcon:"ALi"},openai:{id:"openai",alias:"openai",name:"OpenAI",icon:"auto_awesome",color:"#10A37F",textIcon:"OA",website:"https://platform.openai.com",serviceKinds:["llm","embedding","tts"]},anthropic:{id:"anthropic",alias:"anthropic",name:"Anthropic",icon:"smart_toy",color:"#D97757",textIcon:"AN",website:"https://console.anthropic.com",serviceKinds:["llm"]},gemini:{id:"gemini",alias:"gemini",name:"Gemini",icon:"diamond",color:"#4285F4",textIcon:"GE",website:"https://ai.google.dev",serviceKinds:["llm","embedding"]},deepseek:{id:"deepseek",alias:"ds",name:"DeepSeek",icon:"bolt",color:"#4D6BFE",textIcon:"DS",website:"https://deepseek.com"},groq:{id:"groq",alias:"groq",name:"Groq",icon:"speed",color:"#F55036",textIcon:"GQ",website:"https://groq.com"},xai:{id:"xai",alias:"xai",name:"xAI (Grok)",icon:"auto_awesome",color:"#1DA1F2",textIcon:"XA",website:"https://x.ai"},mistral:{id:"mistral",alias:"mistral",name:"Mistral",icon:"air",color:"#FF7000",textIcon:"MI",website:"https://mistral.ai"},perplexity:{id:"perplexity",alias:"pplx",name:"Perplexity",icon:"search",color:"#20808D",textIcon:"PP",website:"https://www.perplexity.ai"},together:{id:"together",alias:"together",name:"Together AI",icon:"group_work",color:"#0F6FFF",textIcon:"TG",website:"https://www.together.ai"},fireworks:{id:"fireworks",alias:"fireworks",name:"Fireworks AI",icon:"local_fire_department",color:"#7B2EF2",textIcon:"FW",website:"https://fireworks.ai"},cerebras:{id:"cerebras",alias:"cerebras",name:"Cerebras",icon:"memory",color:"#FF4F00",textIcon:"CB",website:"https://www.cerebras.ai"},cohere:{id:"cohere",alias:"cohere",name:"Cohere",icon:"hub",color:"#39594D",textIcon:"CO",website:"https://cohere.com"},nebius:{id:"nebius",alias:"nebius",name:"Nebius AI",icon:"cloud",color:"#6C5CE7",textIcon:"NB",website:"https://nebius.com"},siliconflow:{id:"siliconflow",alias:"siliconflow",name:"SiliconFlow",icon:"cloud_queue",color:"#5B6EF5",textIcon:"SF",website:"https://cloud.siliconflow.com"},hyperbolic:{id:"hyperbolic",alias:"hyp",name:"Hyperbolic",icon:"bolt",color:"#00D4FF",textIcon:"HY",website:"https://hyperbolic.xyz"},deepgram:{id:"deepgram",alias:"dg",name:"Deepgram",icon:"mic",color:"#13EF93",textIcon:"DG",website:"https://deepgram.com",serviceKinds:["stt"]},assemblyai:{id:"assemblyai",alias:"aai",name:"AssemblyAI",icon:"record_voice_over",color:"#0062FF",textIcon:"AA",website:"https://assemblyai.com",serviceKinds:["stt"]},nanobanana:{id:"nanobanana",alias:"nb",name:"NanoBanana",icon:"image",color:"#FFD700",textIcon:"NB",website:"https://nanobananaapi.ai",serviceKinds:["image"]},elevenlabs:{id:"elevenlabs",alias:"el",name:"ElevenLabs",icon:"record_voice_over",color:"#6C47FF",textIcon:"EL",website:"https://elevenlabs.io",serviceKinds:["tts"]},cartesia:{id:"cartesia",alias:"cartesia",name:"Cartesia",icon:"spatial_audio",color:"#FF4F8B",textIcon:"CA",website:"https://cartesia.ai",serviceKinds:["tts"]},playht:{id:"playht",alias:"playht",name:"PlayHT",icon:"play_circle",color:"#00B4D8",textIcon:"PH",website:"https://play.ht",serviceKinds:["tts"]},sdwebui:{id:"sdwebui",alias:"sdwebui",name:"SD WebUI",icon:"brush",color:"#FF7043",textIcon:"SD",website:"https://github.com/AUTOMATIC1111/stable-diffusion-webui",serviceKinds:["image"]},comfyui:{id:"comfyui",alias:"comfyui",name:"ComfyUI",icon:"account_tree",color:"#4CAF50",textIcon:"CF",website:"https://github.com/comfyanonymous/ComfyUI",serviceKinds:["image"]},huggingface:{id:"huggingface",alias:"hf",name:"HuggingFace",icon:"face",color:"#FFD21E",textIcon:"HF",website:"https://huggingface.co",serviceKinds:["embedding","image","tts"]},chutes:{id:"chutes",alias:"ch",name:"Chutes AI",icon:"water_drop",color:"#ffffffff",textIcon:"CH",website:"https://chutes.ai"},"ollama-local":{id:"ollama-local",alias:"ollama-local",name:"Ollama Local",icon:"cloud",color:"#ffffffff",textIcon:"OL",website:"https://ollama.com"},"vertex-partner":{id:"vertex-partner",alias:"vxp",name:"Vertex Partner",icon:"cloud",color:"#34A853",textIcon:"VP",website:"https://cloud.google.com/vertex-ai/generative-ai/docs/partner-models/use-partner-models"}},s=[{id:"embedding",label:"Embedding",icon:"data_array",endpoint:{method:"POST",path:"/v1/embeddings"}},{id:"image",label:"Image",icon:"image",endpoint:{method:"POST",path:"/v1/images/generations"}},{id:"tts",label:"TTS",icon:"record_voice_over",endpoint:{method:"POST",path:"/v1/audio/speech"}},{id:"stt",label:"STT",icon:"mic",endpoint:{method:"POST",path:"/v1/audio/transcriptions"}},{id:"video",label:"Video",icon:"movie",endpoint:{method:"POST",path:"/v1/video/generations"}},{id:"music",label:"Music",icon:"music_note",endpoint:{method:"POST",path:"/v1/audio/music"}}],m="openai-compatible-",d="anthropic-compatible-";function l(e){return"string"==typeof e&&e.startsWith(m)}function c(e){return"string"==typeof e&&e.startsWith(d)}let p={...n,...t,...o,...r},h={oauth:{id:"oauth",name:"OAuth",icon:"lock"},apikey:{id:"apikey",name:"API Key",icon:"key"}};function u(e){for(let i of Object.values(p))if(i.alias===e||i.id===e)return i;return null}function g(e){let i=p[e];return i?.alias||e}function b(e){return Object.values(p).filter(i=>(i.serviceKinds??["llm"]).includes(e))}Object.values(p).reduce((e,i)=>(e[i.alias]=i.id,e),{}),Object.values(p).reduce((e,i)=>(e[i.id]=i.alias,e),{});let f=["claude","antigravity","kiro","github","codex","kimi-coding"]},83789:(e,i,a)=>{a.d(i,{A:()=>s});var n=a(2074),t=a(11472),o=a(43202);function r(e){let i=document.documentElement,a=window.matchMedia("(prefers-color-scheme: dark)").matches?"dark":"light";"dark"===("system"===e?a:e)?i.classList.add("dark"):i.classList.remove("dark")}let s=(0,n.v)((0,t.Zr)((e,i)=>({theme:o.B2.defaultTheme,setTheme:i=>{e({theme:i}),r(i)},toggleTheme:()=>{let a="dark"===i().theme?"light":"dark";e({theme:a}),r(a)},initTheme:()=>{r(i().theme)}}),{name:o.B2.storageKey}))},84502:(e,i,a)=>{a.d(i,{FE:()=>p,Tl:()=>d,wn:()=>h});var n=a(55348);let t={},o=n.Xn,r=[];function s(){if("u"<typeof document)return n.Xn;let e=document.cookie.split(";").find(e=>e.trim().startsWith(`${n.CL}=`)),i=e?decodeURIComponent(e.split("=")[1]):n.Xn;return(0,n.QC)(i)}async function m(e){if("en"===e){t={};return}try{let i=await fetch(`/i18n/literals/${e}.json`);t=await i.json()}catch(e){console.error("Failed to load translations:",e),t={}}}function d(e){if(!e||"string"!=typeof e)return e;let i=e.trim();return i&&"en"!==o&&t[i]||e}function l(e){if(!e.nodeValue||!e.nodeValue.trim())return;let i=e.parentElement;if(!i)return;let a=i;for(;a;){if(a.hasAttribute&&a.hasAttribute("data-i18n-skip"))return;a=a.parentElement}if(["script","style","code","pre","colgroup","table","thead","tbody","tfoot","tr","select","datalist","optgroup"].includes(i.tagName?.toLowerCase()))return;e._originalText||(e._originalText=e.nodeValue);let n=d(e._originalText);n!==e.nodeValue&&(e.nodeValue=n)}function c(e){let i;if(!e)return;let a=document.createTreeWalker(e,NodeFilter.SHOW_TEXT,null,!1),n=[];for(;i=a.nextNode();)n.push(i);n.forEach(l)}async function p(){o=s(),await m(o),c(document.body),new MutationObserver(e=>{e.forEach(e=>{e.addedNodes.forEach(e=>{e.nodeType===Node.ELEMENT_NODE?c(e):e.nodeType===Node.TEXT_NODE&&l(e)})})}).observe(document.body,{childList:!0,subtree:!0})}async function h(){o=s(),await m(o),r.forEach(e=>e()),c(document.body)}},94718:(e,i,a)=>{a.d(i,{Xg:()=>l,vq:()=>m,KC:()=>c});var n=a(390),t=a(89651);let o={"Anthropic-Version":"2023-06-01","Anthropic-Beta":"claude-code-20250219,interleaved-thinking-2025-05-14"},r="https://api.kimi.com/coding/v1/messages",s={claude:{baseUrl:"https://api.anthropic.com/v1/messages",format:"claude",retry:{429:0},headers:{"Anthropic-Version":"2023-06-01","Anthropic-Beta":"claude-code-20250219,oauth-2025-04-20,interleaved-thinking-2025-05-14,context-management-2025-06-27,prompt-caching-scope-2026-01-05,advanced-tool-use-2025-11-20,effort-2025-11-24,structured-outputs-2025-12-15,fast-mode-2026-02-01,redact-thinking-2026-02-12,token-efficient-tools-2026-03-28","Anthropic-Dangerous-Direct-Browser-Access":"true","User-Agent":"claude-cli/2.1.92 (external, sdk-cli)","X-App":"cli","X-Stainless-Helper-Method":"stream","X-Stainless-Retry-Count":"0","X-Stainless-Runtime-Version":"v24.14.0","X-Stainless-Package-Version":"0.80.0","X-Stainless-Runtime":"node","X-Stainless-Lang":"js","X-Stainless-Arch":function(){switch((0,n.arch)()){case"x64":return"x64";case"arm64":return"arm64";case"ia32":return"x86";default:return`other::${(0,n.arch)()}`}}(),"X-Stainless-Os":function(){switch((0,n.platform)()){case"darwin":return"MacOS";case"win32":return"Windows";case"linux":return"Linux";case"freebsd":return"FreeBSD";default:return`Other::${(0,n.platform)()}`}}(),"X-Stainless-Timeout":"600"},clientId:"9d1c250a-e61b-44d9-88ed-5944d1962f5e",tokenUrl:"https://api.anthropic.com/v1/oauth/token"},gemini:{baseUrl:"https://generativelanguage.googleapis.com/v1beta/models",format:"gemini",clientId:"681255809395-oo8ft2oprdrnp9e3aqf6av3hmdib135j.apps.googleusercontent.com",clientSecret:"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"},"gemini-cli":{baseUrl:"https://cloudcode-pa.googleapis.com/v1internal",format:"gemini-cli",clientId:"681255809395-oo8ft2oprdrnp9e3aqf6av3hmdib135j.apps.googleusercontent.com",clientSecret:"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"},codex:{baseUrl:"https://chatgpt.com/backend-api/codex/responses",format:"openai-responses",headers:{originator:"codex-cli","User-Agent":"codex-cli/1.0.18 (macOS; arm64)"},clientId:"app_EMoamEEZ73f0CkXaXp7hrann",clientSecret:"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",tokenUrl:"https://auth.openai.com/oauth/token"},qwen:{baseUrl:"https://portal.qwen.ai/v1/chat/completions",format:"openai",clientId:"f0304373b74a44d2b584a3fb70ca9e56",tokenUrl:"https://chat.qwen.ai/api/v1/oauth2/token",authUrl:"https://chat.qwen.ai/api/v1/oauth2/device/code"},iflow:{baseUrl:"https://apis.iflow.cn/v1/chat/completions",format:"openai",headers:{"User-Agent":"iFlow-Cli"},clientId:"10009311001",clientSecret:"4Z3YjXycVsQvyGF1etiNlIBB4RsqSDtW",tokenUrl:"https://iflow.cn/oauth/token",authUrl:"https://iflow.cn/oauth"},qoder:{baseUrl:"https://api.qoder.com/v1/chat/completions",format:"openai",headers:{"User-Agent":"Qoder-Cli"},clientId:t.env.QODER_OAUTH_CLIENT_ID||"10009311001",clientSecret:t.env.QODER_OAUTH_CLIENT_SECRET||"4Z3YjXycVsQvyGF1etiNlIBB4RsqSDtW",tokenUrl:"https://api.qoder.com/oauth/token",authUrl:"https://qoder.com/oauth/authorize"},antigravity:{baseUrls:["https://daily-cloudcode-pa.googleapis.com","https://daily-cloudcode-pa.sandbox.googleapis.com"],format:"antigravity",headers:{"User-Agent":`antigravity/1.107.0 ${(0,n.platform)()}/${(0,n.arch)()}`},clientId:"1071006060591-tmhssin2h21lcre235vtolojh4g403ep.apps.googleusercontent.com",clientSecret:"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"},openrouter:{baseUrl:"https://openrouter.ai/api/v1/chat/completions",format:"openai",headers:{"HTTP-Referer":"https://endpoint-proxy.local","X-Title":"Endpoint Proxy"}},openai:{baseUrl:"https://api.openai.com/v1/chat/completions",format:"openai"},glm:{baseUrl:"https://api.z.ai/api/anthropic/v1/messages",format:"claude",headers:{...o}},"glm-cn":{baseUrl:"https://open.bigmodel.cn/api/coding/paas/v4/chat/completions",format:"openai",headers:{}},kimi:{baseUrl:r,format:"claude",headers:{...o}},minimax:{baseUrl:"https://api.minimax.io/anthropic/v1/messages",format:"claude",headers:{...o}},"minimax-cn":{baseUrl:"https://api.minimaxi.com/anthropic/v1/messages",format:"claude",headers:{...o}},alicode:{baseUrl:"https://coding.dashscope.aliyuncs.com/v1/chat/completions",format:"openai",headers:{}},"alicode-intl":{baseUrl:"https://coding-intl.dashscope.aliyuncs.com/v1/chat/completions",format:"openai",headers:{}},github:{baseUrl:"https://api.githubcopilot.com/chat/completions",responsesUrl:"https://api.githubcopilot.com/responses",format:"openai",headers:{"copilot-integration-id":"vscode-chat","editor-version":"vscode/1.110.0","editor-plugin-version":"copilot-chat/0.38.0","user-agent":"GitHubCopilotChat/0.38.0","openai-intent":"conversation-panel","x-github-api-version":"2025-04-01","x-vscode-user-agent-library-version":"electron-fetch","X-Initiator":"user",Accept:"application/json","Content-Type":"application/json"},clientId:"Iv1.b507a08c87ecfe98"},kiro:{baseUrl:"https://codewhisperer.us-east-1.amazonaws.com/generateAssistantResponse",format:"kiro",headers:{"Content-Type":"application/json",Accept:"application/vnd.amazon.eventstream","X-Amz-Target":"AmazonCodeWhispererStreamingService.GenerateAssistantResponse","User-Agent":"AWS-SDK-JS/3.0.0 kiro-ide/1.0.0","X-Amz-User-Agent":"aws-sdk-js/3.0.0 kiro-ide/1.0.0"},tokenUrl:"https://prod.us-east-1.auth.desktop.kiro.dev/refreshToken",authUrl:"https://prod.us-east-1.auth.desktop.kiro.dev"},cursor:{baseUrl:"https://api2.cursor.sh",chatPath:"/aiserver.v1.ChatService/StreamUnifiedChatWithTools",format:"cursor",headers:{"connect-accept-encoding":"gzip","connect-protocol-version":"1","Content-Type":"application/connect+proto","User-Agent":"connect-es/1.6.1"},clientVersion:"1.1.3"},"kimi-coding":{baseUrl:r,format:"claude",headers:{...o},clientId:"17e5f671-d194-4dfb-9706-5516cb48c098",tokenUrl:"https://auth.kimi.com/api/oauth/token",refreshUrl:"https://auth.kimi.com/api/oauth/token"},kilocode:{baseUrl:"https://api.kilo.ai/api/openrouter/chat/completions",format:"openai",headers:{}},opencode:{baseUrl:"http://localhost:4096/v1/chat/completions",format:"openai",headers:{}},cline:{baseUrl:"https://api.cline.bot/api/v1/chat/completions",format:"openai",headers:{"HTTP-Referer":"https://cline.bot","X-Title":"Cline"},tokenUrl:"https://api.cline.bot/api/v1/auth/token",refreshUrl:"https://api.cline.bot/api/v1/auth/refresh"},nvidia:{baseUrl:"https://integrate.api.nvidia.com/v1/chat/completions",format:"openai"},anthropic:{baseUrl:"https://api.anthropic.com/v1/messages",format:"claude",headers:{...o}},deepseek:{baseUrl:"https://api.deepseek.com/chat/completions",format:"openai"},groq:{baseUrl:"https://api.groq.com/openai/v1/chat/completions",format:"openai"},xai:{baseUrl:"https://api.x.ai/v1/chat/completions",format:"openai"},mistral:{baseUrl:"https://api.mistral.ai/v1/chat/completions",format:"openai"},perplexity:{baseUrl:"https://api.perplexity.ai/chat/completions",format:"openai"},together:{baseUrl:"https://api.together.xyz/v1/chat/completions",format:"openai"},fireworks:{baseUrl:"https://api.fireworks.ai/inference/v1/chat/completions",format:"openai"},cerebras:{baseUrl:"https://api.cerebras.ai/v1/chat/completions",format:"openai"},cohere:{baseUrl:"https://api.cohere.ai/v1/chat/completions",format:"openai"},nebius:{baseUrl:"https://api.studio.nebius.ai/v1/chat/completions",format:"openai"},siliconflow:{baseUrl:"https://api.siliconflow.cn/v1/chat/completions",format:"openai"},hyperbolic:{baseUrl:"https://api.hyperbolic.xyz/v1/chat/completions",format:"openai"},deepgram:{baseUrl:"https://api.deepgram.com/v1/listen",format:"openai"},assemblyai:{baseUrl:"https://api.assemblyai.com/v1/audio/transcriptions",format:"openai"},nanobanana:{baseUrl:"https://api.nanobananaapi.ai/v1/chat/completions",format:"openai"},chutes:{baseUrl:"https://llm.chutes.ai/v1/chat/completions",format:"openai"},ollama:{baseUrl:"https://ollama.com/api/chat",format:"ollama"},"ollama-local":{baseUrl:"http://localhost:11434/api/chat",format:"ollama"},vertex:{baseUrl:"https://aiplatform.googleapis.com",format:"vertex"},"vertex-partner":{baseUrl:"https://aiplatform.googleapis.com",format:"openai"},gitlab:{baseUrl:"https://gitlab.com/api/v4/chat/completions",format:"openai"},codebuddy:{baseUrl:"https://copilot.tencent.com/v1/chat/completions",format:"openai"}},m={cc:[{id:"claude-opus-4-6",name:"Claude Opus 4.6"},{id:"claude-sonnet-4-6",name:"Claude Sonnet 4.6"},{id:"claude-opus-4-5-20251101",name:"Claude 4.5 Opus"},{id:"claude-sonnet-4-5-20250929",name:"Claude 4.5 Sonnet"},{id:"claude-haiku-4-5-20251001",name:"Claude 4.5 Haiku"}],cx:[{id:"gpt-5.4",name:"GPT 5.4"},{id:"gpt-5.3-codex",name:"GPT 5.3 Codex"},{id:"gpt-5.3-codex-xhigh",name:"GPT 5.3 Codex (xHigh)"},{id:"gpt-5.3-codex-high",name:"GPT 5.3 Codex (High)"},{id:"gpt-5.3-codex-low",name:"GPT 5.3 Codex (Low)"},{id:"gpt-5.3-codex-none",name:"GPT 5.3 Codex (None)"},{id:"gpt-5.3-codex-spark",name:"GPT 5.3 Codex Spark"},{id:"gpt-5.1-codex-mini",name:"GPT 5.1 Codex Mini"},{id:"gpt-5.1-codex-mini-high",name:"GPT 5.1 Codex Mini (High)"},{id:"gpt-5.2-codex",name:"GPT 5.2 Codex"},{id:"gpt-5.2",name:"GPT 5.2"},{id:"gpt-5.1-codex-max",name:"GPT 5.1 Codex Max"},{id:"gpt-5.1-codex",name:"GPT 5.1 Codex"},{id:"gpt-5.1",name:"GPT 5.1"},{id:"gpt-5-codex",name:"GPT 5 Codex"},{id:"gpt-5-codex-mini",name:"GPT 5 Codex Mini"}],gc:[{id:"gemini-3-flash-preview",name:"Gemini 3 Flash Preview"},{id:"gemini-3-pro-preview",name:"Gemini 3 Pro Preview"}],qw:[{id:"qwen3-coder-plus",name:"Qwen3 Coder Plus"},{id:"qwen3-coder-flash",name:"Qwen3 Coder Flash"},{id:"vision-model",name:"Qwen3 Vision Model"},{id:"coder-model",name:"Qwen3.5 Coder Model"}],if:[{id:"qwen3-coder-plus",name:"Qwen3 Coder Plus"},{id:"qwen3-max",name:"Qwen3 Max"},{id:"qwen3-vl-plus",name:"Qwen3 VL Plus"},{id:"qwen3-max-preview",name:"Qwen3 Max Preview"},{id:"qwen3-235b",name:"Qwen3 235B A22B"},{id:"qwen3-235b-a22b-instruct",name:"Qwen3 235B A22B Instruct"},{id:"qwen3-235b-a22b-thinking-2507",name:"Qwen3 235B A22B Thinking"},{id:"qwen3-32b",name:"Qwen3 32B"},{id:"kimi-k2",name:"Kimi K2"},{id:"deepseek-v3.2",name:"DeepSeek V3.2 Exp"},{id:"deepseek-v3.1",name:"DeepSeek V3.1 Terminus"},{id:"deepseek-v3",name:"DeepSeek V3 671B"},{id:"deepseek-r1",name:"DeepSeek R1"},{id:"glm-4.7",name:"GLM 4.7"},{id:"iflow-rome-30ba3b",name:"iFlow ROME"}],ag:[{id:"gemini-3.1-pro-high",name:"Gemini 3 Pro High"},{id:"gemini-3.1-pro-low",name:"Gemini 3 Pro Low"},{id:"gemini-3-flash",name:"Gemini 3 Flash",thinking:!1},{id:"claude-sonnet-4-6",name:"Claude Sonnet 4.6"},{id:"claude-opus-4-6-thinking",name:"Claude Opus 4.6 Thinking"},{id:"gpt-oss-120b-medium",name:"GPT OSS 120B Medium"}],gh:[{id:"gpt-3.5-turbo",name:"GPT-3.5 Turbo"},{id:"gpt-4",name:"GPT-4"},{id:"gpt-4o",name:"GPT-4o"},{id:"gpt-4o-mini",name:"GPT-4o mini"},{id:"gpt-4.1",name:"GPT-4.1"},{id:"gpt-5",name:"GPT-5"},{id:"gpt-5-mini",name:"GPT-5 Mini"},{id:"gpt-5-codex",name:"GPT-5 Codex"},{id:"gpt-5.1",name:"GPT-5.1"},{id:"gpt-5.1-codex",name:"GPT-5.1 Codex"},{id:"gpt-5.1-codex-mini",name:"GPT-5.1 Codex Mini"},{id:"gpt-5.1-codex-max",name:"GPT-5.1 Codex Max"},{id:"gpt-5.2",name:"GPT-5.2"},{id:"gpt-5.2-codex",name:"GPT-5.2 Codex"},{id:"gpt-5.3-codex",name:"GPT-5.3 Codex"},{id:"gpt-5.4",name:"GPT-5.4"},{id:"claude-haiku-4.5",name:"Claude Haiku 4.5"},{id:"claude-opus-4.1",name:"Claude Opus 4.1"},{id:"claude-opus-4.5",name:"Claude Opus 4.5"},{id:"claude-sonnet-4",name:"Claude Sonnet 4"},{id:"claude-sonnet-4.5",name:"Claude Sonnet 4.5"},{id:"claude-sonnet-4.6",name:"Claude Sonnet 4.6"},{id:"claude-opus-4.6",name:"Claude Opus 4.6"},{id:"gemini-2.5-pro",name:"Gemini 2.5 Pro"},{id:"gemini-3-flash-preview",name:"Gemini 3 Flash"},{id:"gemini-3-pro-preview",name:"Gemini 3 Pro"},{id:"grok-code-fast-1",name:"Grok Code Fast 1"},{id:"oswe-vscode-prime",name:"Raptor Mini"}],kr:[{id:"claude-sonnet-4.5",name:"Claude Sonnet 4.5"},{id:"claude-haiku-4.5",name:"Claude Haiku 4.5"},{id:"deepseek-3.2",name:"DeepSeek 3.2"},{id:"deepseek-3.1",name:"DeepSeek 3.1"},{id:"qwen3-coder-next",name:"Qwen3 Coder Next"}],cu:[{id:"default",name:"Auto (Server Picks)"},{id:"claude-4.5-opus-high-thinking",name:"Claude 4.5 Opus High Thinking"},{id:"claude-4.5-opus-high",name:"Claude 4.5 Opus High"},{id:"claude-4.5-sonnet-thinking",name:"Claude 4.5 Sonnet Thinking"},{id:"claude-4.5-sonnet",name:"Claude 4.5 Sonnet"},{id:"claude-4.5-haiku",name:"Claude 4.5 Haiku"},{id:"claude-4.5-opus",name:"Claude 4.5 Opus"},{id:"gpt-5.2-codex",name:"GPT 5.2 Codex"},{id:"claude-4.6-opus-max",name:"Claude 4.6 Opus Max"},{id:"claude-4.6-sonnet-medium-thinking",name:"Claude 4.6 Sonnet Medium Thinking"},{id:"kimi-k2.5",name:"Kimi K2.5"},{id:"gemini-3-flash-preview",name:"Gemini 3 Flash Preview"},{id:"gpt-5.2",name:"GPT 5.2"},{id:"gpt-5.3-codex",name:"GPT 5.3 Codex"}],kmc:[{id:"kimi-k2.5",name:"Kimi K2.5"},{id:"kimi-k2.5-thinking",name:"Kimi K2.5 Thinking"},{id:"kimi-latest",name:"Kimi Latest"}],kc:[{id:"anthropic/claude-sonnet-4-20250514",name:"Claude Sonnet 4"},{id:"anthropic/claude-opus-4-20250514",name:"Claude Opus 4"},{id:"google/gemini-2.5-pro",name:"Gemini 2.5 Pro"},{id:"google/gemini-2.5-flash",name:"Gemini 2.5 Flash"},{id:"openai/gpt-4.1",name:"GPT-4.1"},{id:"openai/o3",name:"o3"},{id:"deepseek/deepseek-chat",name:"DeepSeek Chat"},{id:"deepseek/deepseek-reasoner",name:"DeepSeek Reasoner"}],cl:[{id:"anthropic/claude-sonnet-4.6",name:"Claude Sonnet 4.6"},{id:"anthropic/claude-opus-4.6",name:"Claude Opus 4.6"},{id:"openai/gpt-5.3-codex",name:"GPT-5.3 Codex"},{id:"openai/gpt-5.4",name:"GPT-5.4"},{id:"google/gemini-3.1-pro-preview",name:"Gemini 3.1 Pro Preview"},{id:"google/gemini-3.1-flash-lite-preview",name:"Gemini 3.1 Flash Lite Preview"},{id:"kwaipilot/kat-coder-pro",name:"KAT Coder Pro"}],openai:[{id:"gpt-5.4",name:"GPT-5.4"},{id:"gpt-5.4-mini",name:"GPT-5.4 Mini"},{id:"gpt-5.4-nano",name:"GPT-5.4 Nano"},{id:"gpt-5.2",name:"GPT-5.2"},{id:"gpt-5.1",name:"GPT-5.1"},{id:"gpt-5",name:"GPT-5"},{id:"gpt-5-mini",name:"GPT-5 Mini"},{id:"gpt-5-nano",name:"GPT-5 Nano"},{id:"gpt-4o",name:"GPT-4o"},{id:"gpt-4o-mini",name:"GPT-4o Mini"},{id:"gpt-4-turbo",name:"GPT-4 Turbo"},{id:"gpt-4.1",name:"GPT-4.1"},{id:"gpt-4.1-mini",name:"GPT-4.1 Mini"},{id:"gpt-4.1-nano",name:"GPT-4.1 Nano"},{id:"o3",name:"O3"},{id:"o3-mini",name:"O3 Mini"},{id:"o3-pro",name:"O3 Pro"},{id:"o4-mini",name:"O4 Mini"},{id:"o1",name:"O1"},{id:"o1-mini",name:"O1 Mini"},{id:"text-embedding-3-large",name:"Text Embedding 3 Large",type:"embedding"},{id:"text-embedding-3-small",name:"Text Embedding 3 Small",type:"embedding"},{id:"text-embedding-ada-002",name:"Text Embedding Ada 002",type:"embedding"},{id:"tts-1",name:"TTS-1",type:"tts"},{id:"tts-1-hd",name:"TTS-1 HD",type:"tts"},{id:"gpt-4o-mini-tts",name:"GPT-4o Mini TTS",type:"tts"}],anthropic:[{id:"claude-sonnet-4-20250514",name:"Claude Sonnet 4"},{id:"claude-opus-4-20250514",name:"Claude Opus 4"},{id:"claude-3-5-sonnet-20241022",name:"Claude 3.5 Sonnet"}],gemini:[{id:"gemini-3.1-pro-preview",name:"Gemini 3.1 Pro Preview"},{id:"gemini-3.1-flash-lite-preview",name:"Gemini 3.1 Flash Lite Preview"},{id:"gemini-3.1-flash-image-preview",name:"Gemini 3.1 Flash Image Preview"},{id:"gemini-3-flash-preview",name:"Gemini 3 Flash Preview"},{id:"gemini-2.5-pro",name:"Gemini 2.5 Pro"},{id:"gemini-2.5-flash",name:"Gemini 2.5 Flash"},{id:"gemini-2.5-flash-lite",name:"Gemini 2.5 Flash Lite"},{id:"gemini-2.0-flash",name:"Gemini 2.0 Flash"},{id:"gemini-2.0-flash-lite",name:"Gemini 2.0 Flash Lite"},{id:"gemini-embedding-2-preview",name:"Gemini Embedding 2 Preview",type:"embedding"},{id:"gemini-embedding-001",name:"Gemini Embedding 001",type:"embedding"},{id:"text-embedding-005",name:"Text Embedding 005",type:"embedding"},{id:"text-embedding-004",name:"Text Embedding 004 (Legacy)",type:"embedding"}],openrouter:[],glm:[{id:"glm-5.1",name:"GLM 5.1"},{id:"glm-5",name:"GLM 5"},{id:"glm-4.7",name:"GLM 4.7"},{id:"glm-4.6v",name:"GLM 4.6V (Vision)"}],"glm-cn":[{id:"glm-5.1",name:"GLM 5.1"},{id:"glm-5",name:"GLM 5"},{id:"glm-4.7",name:"GLM-4.7"},{id:"glm-4.6",name:"GLM-4.6"},{id:"glm-4.5-air",name:"GLM-4.5-Air"}],kimi:[{id:"kimi-k2.5",name:"Kimi K2.5"},{id:"kimi-k2.5-thinking",name:"Kimi K2.5 Thinking"},{id:"kimi-latest",name:"Kimi Latest"}],minimax:[{id:"MiniMax-M2.7",name:"MiniMax M2.7"},{id:"MiniMax-M2.5",name:"MiniMax M2.5"},{id:"MiniMax-M2.1",name:"MiniMax M2.1"}],"minimax-cn":[{id:"MiniMax-M2.7",name:"MiniMax M2.7"},{id:"MiniMax-M2.5",name:"MiniMax M2.5"},{id:"MiniMax-M2.1",name:"MiniMax M2.1"}],alicode:[{id:"qwen3.5-plus",name:"Qwen3.5 Plus"},{id:"kimi-k2.5",name:"Kimi K2.5"},{id:"glm-5",name:"GLM 5"},{id:"MiniMax-M2.5",name:"MiniMax M2.5"},{id:"qwen3-max-2026-01-23",name:"Qwen3 Max"},{id:"qwen3-coder-next",name:"Qwen3 Coder Next"},{id:"qwen3-coder-plus",name:"Qwen3 Coder Plus"},{id:"glm-4.7",name:"GLM 4.7"}],"alicode-intl":[{id:"qwen3.5-plus",name:"Qwen3.5 Plus"},{id:"kimi-k2.5",name:"Kimi K2.5"},{id:"glm-5",name:"GLM 5"},{id:"MiniMax-M2.5",name:"MiniMax M2.5"},{id:"qwen3-coder-next",name:"Qwen3 Coder Next"},{id:"qwen3-coder-plus",name:"Qwen3 Coder Plus"},{id:"glm-4.7",name:"GLM 4.7"}],deepseek:[{id:"deepseek-chat",name:"DeepSeek V3.2 Chat"},{id:"deepseek-reasoner",name:"DeepSeek V3.2 Reasoner"}],groq:[{id:"llama-3.3-70b-versatile",name:"Llama 3.3 70B"},{id:"meta-llama/llama-4-maverick-17b-128e-instruct",name:"Llama 4 Maverick"},{id:"qwen/qwen3-32b",name:"Qwen3 32B"},{id:"openai/gpt-oss-120b",name:"GPT-OSS 120B"}],xai:[{id:"grok-4",name:"Grok 4"},{id:"grok-4-fast-reasoning",name:"Grok 4 Fast Reasoning"},{id:"grok-code-fast-1",name:"Grok Code Fast"},{id:"grok-3",name:"Grok 3"}],mistral:[{id:"mistral-large-latest",name:"Mistral Large 3"},{id:"codestral-latest",name:"Codestral"},{id:"mistral-medium-latest",name:"Mistral Medium 3"}],perplexity:[{id:"sonar-pro",name:"Sonar Pro"},{id:"sonar",name:"Sonar"}],together:[{id:"meta-llama/Llama-3.3-70B-Instruct-Turbo",name:"Llama 3.3 70B Turbo"},{id:"deepseek-ai/DeepSeek-R1",name:"DeepSeek R1"},{id:"Qwen/Qwen3-235B-A22B",name:"Qwen3 235B"},{id:"meta-llama/Llama-4-Maverick-17B-128E-Instruct-FP8",name:"Llama 4 Maverick"}],fireworks:[{id:"accounts/fireworks/models/deepseek-v3p1",name:"DeepSeek V3.1"},{id:"accounts/fireworks/models/llama-v3p3-70b-instruct",name:"Llama 3.3 70B"},{id:"accounts/fireworks/models/qwen3-235b-a22b",name:"Qwen3 235B"}],cerebras:[{id:"gpt-oss-120b",name:"GPT OSS 120B"},{id:"zai-glm-4.7",name:"ZAI GLM 4.7"},{id:"llama-3.3-70b",name:"Llama 3.3 70B"},{id:"llama-4-scout-17b-16e-instruct",name:"Llama 4 Scout"},{id:"qwen-3-235b-a22b-instruct-2507",name:"Qwen3 235B A22B"},{id:"qwen-3-32b",name:"Qwen3 32B"}],cohere:[{id:"command-r-plus-08-2024",name:"Command R+ (Aug 2024)"},{id:"command-r-08-2024",name:"Command R (Aug 2024)"},{id:"command-a-03-2025",name:"Command A (Mar 2025)"}],nvidia:[{id:"moonshotai/kimi-k2.5",name:"Kimi K2.5"},{id:"z-ai/glm4.7",name:"GLM 4.7"}],nebius:[{id:"meta-llama/Llama-3.3-70B-Instruct",name:"Llama 3.3 70B Instruct"}],siliconflow:[{id:"deepseek-ai/DeepSeek-V3.2",name:"DeepSeek V3.2"},{id:"deepseek-ai/DeepSeek-V3.1",name:"DeepSeek V3.1"},{id:"deepseek-ai/DeepSeek-R1",name:"DeepSeek R1"},{id:"Qwen/Qwen3-235B-A22B-Instruct-2507",name:"Qwen3 235B"},{id:"Qwen/Qwen3-Coder-480B-A35B-Instruct",name:"Qwen3 Coder 480B"},{id:"Qwen/Qwen3-32B",name:"Qwen3 32B"},{id:"moonshotai/Kimi-K2.5",name:"Kimi K2.5"},{id:"zai-org/GLM-4.7",name:"GLM 4.7"},{id:"openai/gpt-oss-120b",name:"GPT OSS 120B"},{id:"baidu/ERNIE-4.5-300B-A47B",name:"ERNIE 4.5 300B"}],hyperbolic:[{id:"Qwen/QwQ-32B",name:"QwQ 32B"},{id:"deepseek-ai/DeepSeek-R1",name:"DeepSeek R1"},{id:"deepseek-ai/DeepSeek-V3",name:"DeepSeek V3"},{id:"meta-llama/Llama-3.3-70B-Instruct",name:"Llama 3.3 70B"},{id:"meta-llama/Llama-3.2-3B-Instruct",name:"Llama 3.2 3B"},{id:"Qwen/Qwen2.5-72B-Instruct",name:"Qwen 2.5 72B"},{id:"Qwen/Qwen2.5-Coder-32B-Instruct",name:"Qwen 2.5 Coder 32B"},{id:"NousResearch/Hermes-3-Llama-3.1-70B",name:"Hermes 3 70B"}],ollama:[{id:"gpt-oss:120b",name:"GPT OSS 120B"},{id:"kimi-k2.5",name:"Kimi K2.5"},{id:"glm-5",name:"GLM 5"},{id:"minimax-m2.5",name:"MiniMax M2.5"},{id:"glm-4.7-flash",name:"GLM 4.7 Flash"},{id:"qwen3.5",name:"Qwen3.5"}],vertex:[{id:"gemini-3.1-pro-preview",name:"Gemini 3.1 Pro Preview"},{id:"gemini-3.1-flash-lite-preview",name:"Gemini 3.1 Flash Lite Preview"},{id:"gemini-3-flash-preview",name:"Gemini 3 Flash Preview"},{id:"gemini-2.5-flash",name:"Gemini 2.5 Flash"}],"vertex-partner":[{id:"deepseek-ai/deepseek-v3.2-maas",name:"DeepSeek V3.2 (Vertex)"},{id:"qwen/qwen3-next-80b-a3b-thinking-maas",name:"Qwen3 Next 80B Thinking (Vertex)"},{id:"qwen/qwen3-next-80b-a3b-instruct-maas",name:"Qwen3 Next 80B Instruct (Vertex)"},{id:"zai-org/glm-5-maas",name:"GLM-5 (Vertex)"}]},d={claude:"cc",codex:"cx","gemini-cli":"gc",qwen:"qw",iflow:"if",antigravity:"ag",github:"gh",kiro:"kr",cursor:"cu","kimi-coding":"kmc",kilocode:"kc",cline:"cl",vertex:"vertex","vertex-partner":"vertex-partner"},l=Object.fromEntries(Object.keys(s).map(e=>[e,d[e]||e]));function c(e){return m[l[e]||e]||[]}},98814:(e,i,a)=>{a.d(i,{ThemeProvider:()=>r});var n=a(73365),t=a(1521),o=a(83789);function r({children:e}){let{initTheme:i}=(0,o.A)();return(0,t.useEffect)(()=>{i()},[i]),(0,n.jsx)(n.Fragment,{children:e})}}}]);
|