@sifxprime/krouter 0.5.165 → 0.5.166
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-cli-build/BUILD_ID +1 -1
- package/app/.next-cli-build/app-path-routes-manifest.json +8 -8
- package/app/.next-cli-build/build-manifest.json +2 -2
- package/app/.next-cli-build/prerender-manifest.json +3 -3
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/basic-chat/page.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/basic-chat/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/cli-tools/[toolId]/page.js +2 -2
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/cli-tools/[toolId]/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/cli-tools/page.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/cli-tools/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/combos/page.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/combos/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/console-log/page.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/console-log/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/endpoint/page.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/endpoint/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/environment/page.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/environment/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/[kind]/[id]/page.js +2 -2
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/[kind]/[id]/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/[kind]/page.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/[kind]/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/combo/[id]/page.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/combo/[id]/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/web/page.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/web/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/mitm/page.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/mitm/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/page.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/presidio/page.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/presidio/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/profile/page.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/profile/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/[id]/page.js +3 -3
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/[id]/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/new/page.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/new/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/page.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/proxy-pools/page.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/proxy-pools/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/pxpipe/page.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/pxpipe/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/quota/page.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/quota/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/skills/page.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/skills/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/token-saver/page.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/token-saver/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/translator/page.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/translator/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/usage/page.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/usage/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/_global-error/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/_global-error.html +1 -1
- package/app/.next-cli-build/server/app/_global-error.rsc +1 -1
- package/app/.next-cli-build/server/app/_global-error.segments/_full.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/_global-error.segments/_global-error/__PAGE__.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/_global-error.segments/_tree.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/_not-found/page.js +1 -1
- package/app/.next-cli-build/server/app/_not-found/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/_not-found.html +1 -1
- package/app/.next-cli-build/server/app/_not-found.rsc +3 -3
- package/app/.next-cli-build/server/app/_not-found.segments/_full.segment.rsc +3 -3
- package/app/.next-cli-build/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +3 -3
- package/app/.next-cli-build/server/app/_not-found.segments/_tree.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/all-statuses/route.js +7 -7
- package/app/.next-cli-build/server/app/api/cli-tools/antigravity-mitm/alias/route.js +2 -2
- package/app/.next-cli-build/server/app/api/cli-tools/claude-settings/route.js +2 -2
- package/app/.next-cli-build/server/app/api/cli-tools/cline-settings/route.js +2 -2
- package/app/.next-cli-build/server/app/api/cli-tools/codex-settings/route.js +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/copilot-settings/route.js +2 -2
- package/app/.next-cli-build/server/app/api/cli-tools/cowork-mcp-registry/route.js +2 -2
- package/app/.next-cli-build/server/app/api/cli-tools/cowork-mcp-tools/route.js +2 -2
- package/app/.next-cli-build/server/app/api/cli-tools/cowork-settings/route.js +1 -2
- package/app/.next-cli-build/server/app/api/cli-tools/deepseek-tui-settings/route.js +5 -5
- package/app/.next-cli-build/server/app/api/cli-tools/droid-settings/route.js +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/hermes-settings/route.js +2 -2
- package/app/.next-cli-build/server/app/api/cli-tools/jcode-settings/route.js +3 -2
- package/app/.next-cli-build/server/app/api/cli-tools/kilo-settings/route.js +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/openclaw-settings/route.js +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/opencode-settings/route.js +2 -2
- package/app/.next-cli-build/server/app/api/combos/[id]/route.js +51 -1
- package/app/.next-cli-build/server/app/api/media-providers/tts/elevenlabs/voices/route.js +1 -1
- package/app/.next-cli-build/server/app/api/media-providers/tts/voices/route.js +1 -1
- package/app/.next-cli-build/server/app/api/models/route.js +1 -1
- package/app/.next-cli-build/server/app/api/models/test/route.js +1 -1
- package/app/.next-cli-build/server/app/api/oauth/[provider]/[action]/route.js +1 -1
- package/app/.next-cli-build/server/app/api/oauth/codex/bulk-import/route.js +1 -1
- package/app/.next-cli-build/server/app/api/oauth/codex/import-token/route.js +1 -1
- package/app/.next-cli-build/server/app/api/providers/[id]/models/route.js +2 -2
- package/app/.next-cli-build/server/app/api/providers/[id]/route.js +1 -1
- package/app/.next-cli-build/server/app/api/providers/[id]/test/route.js +1 -1
- package/app/.next-cli-build/server/app/api/providers/[id]/test-models/route.js +1 -1
- package/app/.next-cli-build/server/app/api/providers/client/route.js +1 -1
- package/app/.next-cli-build/server/app/api/providers/route.js +1 -1
- package/app/.next-cli-build/server/app/api/providers/test-batch/route.js +1 -1
- package/app/.next-cli-build/server/app/api/providers/validate/route.js +1 -51
- package/app/.next-cli-build/server/app/api/settings/route.js +51 -1
- package/app/.next-cli-build/server/app/api/translator/console-logs/route.js +1 -1
- package/app/.next-cli-build/server/app/api/translator/console-logs/stream/route.js +2 -2
- package/app/.next-cli-build/server/app/api/translator/send/route.js +1 -1
- package/app/.next-cli-build/server/app/api/translator/translate/route.js +1 -1
- package/app/.next-cli-build/server/app/api/tunnel/tailscale-install/route.js +2 -2
- package/app/.next-cli-build/server/app/api/usage/[connectionId]/route.js +1 -1
- package/app/.next-cli-build/server/app/api/v1/api/chat/route.js +1 -1
- package/app/.next-cli-build/server/app/api/v1/audio/speech/route.js +51 -1
- package/app/.next-cli-build/server/app/api/v1/audio/transcriptions/route.js +51 -1
- package/app/.next-cli-build/server/app/api/v1/chat/completions/route.js +1 -1
- package/app/.next-cli-build/server/app/api/v1/embeddings/route.js +1 -1
- package/app/.next-cli-build/server/app/api/v1/images/generations/route.js +2 -2
- package/app/.next-cli-build/server/app/api/v1/messages/route.js +1 -1
- package/app/.next-cli-build/server/app/api/v1/models/[...model]/route.js +1 -1
- package/app/.next-cli-build/server/app/api/v1/models/info/route.js +1 -1
- package/app/.next-cli-build/server/app/api/v1/models/route.js +1 -1
- package/app/.next-cli-build/server/app/api/v1/responses/compact/route.js +1 -1
- package/app/.next-cli-build/server/app/api/v1/responses/route.js +1 -1
- package/app/.next-cli-build/server/app/api/v1/route.js +1 -1
- package/app/.next-cli-build/server/app/api/v1/search/route.js +51 -1
- package/app/.next-cli-build/server/app/api/v1/videos/[id]/route.js +1 -1
- package/app/.next-cli-build/server/app/api/v1/videos/edits/route.js +1 -1
- package/app/.next-cli-build/server/app/api/v1/videos/extensions/route.js +1 -1
- package/app/.next-cli-build/server/app/api/v1/videos/generations/route.js +1 -1
- package/app/.next-cli-build/server/app/api/v1/web/fetch/route.js +51 -1
- package/app/.next-cli-build/server/app/api/v1beta/models/[...path]/route.js +1 -1
- package/app/.next-cli-build/server/app/api/v1beta/models/route.js +1 -1
- package/app/.next-cli-build/server/app/api/version/route.js +1 -1
- package/app/.next-cli-build/server/app/api/version/shutdown/route.js +1 -1
- package/app/.next-cli-build/server/app/api/version/update/route.js +1 -1
- package/app/.next-cli-build/server/app/callback/page.js +1 -1
- package/app/.next-cli-build/server/app/callback/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/callback.html +1 -1
- package/app/.next-cli-build/server/app/callback.rsc +3 -3
- package/app/.next-cli-build/server/app/callback.segments/_full.segment.rsc +3 -3
- package/app/.next-cli-build/server/app/callback.segments/_tree.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/callback.segments/callback/__PAGE__.segment.rsc +3 -3
- package/app/.next-cli-build/server/app/dashboard/basic-chat.html +1 -1
- package/app/.next-cli-build/server/app/dashboard/basic-chat.rsc +5 -5
- package/app/.next-cli-build/server/app/dashboard/basic-chat.segments/!KGRhc2hib2FyZCk/dashboard/basic-chat/__PAGE__.segment.rsc +5 -5
- package/app/.next-cli-build/server/app/dashboard/basic-chat.segments/_full.segment.rsc +5 -5
- package/app/.next-cli-build/server/app/dashboard/basic-chat.segments/_tree.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/cli-tools.html +1 -1
- package/app/.next-cli-build/server/app/dashboard/cli-tools.rsc +5 -5
- package/app/.next-cli-build/server/app/dashboard/cli-tools.segments/!KGRhc2hib2FyZCk/dashboard/cli-tools/__PAGE__.segment.rsc +5 -5
- package/app/.next-cli-build/server/app/dashboard/cli-tools.segments/_full.segment.rsc +5 -5
- package/app/.next-cli-build/server/app/dashboard/cli-tools.segments/_tree.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/combos.html +1 -1
- package/app/.next-cli-build/server/app/dashboard/combos.rsc +5 -5
- package/app/.next-cli-build/server/app/dashboard/combos.segments/!KGRhc2hib2FyZCk/dashboard/combos/__PAGE__.segment.rsc +5 -5
- package/app/.next-cli-build/server/app/dashboard/combos.segments/_full.segment.rsc +5 -5
- package/app/.next-cli-build/server/app/dashboard/combos.segments/_tree.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/endpoint.html +1 -1
- package/app/.next-cli-build/server/app/dashboard/endpoint.rsc +5 -5
- package/app/.next-cli-build/server/app/dashboard/endpoint.segments/!KGRhc2hib2FyZCk/dashboard/endpoint/__PAGE__.segment.rsc +5 -5
- package/app/.next-cli-build/server/app/dashboard/endpoint.segments/_full.segment.rsc +5 -5
- package/app/.next-cli-build/server/app/dashboard/endpoint.segments/_tree.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/environment.html +1 -1
- package/app/.next-cli-build/server/app/dashboard/environment.rsc +5 -5
- package/app/.next-cli-build/server/app/dashboard/environment.segments/!KGRhc2hib2FyZCk/dashboard/environment/__PAGE__.segment.rsc +5 -5
- package/app/.next-cli-build/server/app/dashboard/environment.segments/_full.segment.rsc +5 -5
- package/app/.next-cli-build/server/app/dashboard/environment.segments/_tree.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/media-providers/web.html +1 -1
- package/app/.next-cli-build/server/app/dashboard/media-providers/web.rsc +5 -5
- package/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/!KGRhc2hib2FyZCk/dashboard/media-providers/web/__PAGE__.segment.rsc +5 -5
- package/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/_full.segment.rsc +5 -5
- package/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/_tree.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/mitm.html +1 -1
- package/app/.next-cli-build/server/app/dashboard/mitm.rsc +5 -5
- package/app/.next-cli-build/server/app/dashboard/mitm.segments/!KGRhc2hib2FyZCk/dashboard/mitm/__PAGE__.segment.rsc +5 -5
- package/app/.next-cli-build/server/app/dashboard/mitm.segments/_full.segment.rsc +5 -5
- package/app/.next-cli-build/server/app/dashboard/mitm.segments/_tree.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/presidio.html +1 -1
- package/app/.next-cli-build/server/app/dashboard/presidio.rsc +4 -4
- package/app/.next-cli-build/server/app/dashboard/presidio.segments/!KGRhc2hib2FyZCk/dashboard/presidio/__PAGE__.segment.rsc +4 -4
- package/app/.next-cli-build/server/app/dashboard/presidio.segments/_full.segment.rsc +4 -4
- package/app/.next-cli-build/server/app/dashboard/presidio.segments/_tree.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/profile.html +1 -1
- package/app/.next-cli-build/server/app/dashboard/profile.rsc +5 -5
- package/app/.next-cli-build/server/app/dashboard/profile.segments/!KGRhc2hib2FyZCk/dashboard/profile/__PAGE__.segment.rsc +5 -5
- package/app/.next-cli-build/server/app/dashboard/profile.segments/_full.segment.rsc +5 -5
- package/app/.next-cli-build/server/app/dashboard/profile.segments/_tree.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/providers/new.html +1 -1
- package/app/.next-cli-build/server/app/dashboard/providers/new.rsc +5 -5
- package/app/.next-cli-build/server/app/dashboard/providers/new.segments/!KGRhc2hib2FyZCk/dashboard/providers/new/__PAGE__.segment.rsc +5 -5
- package/app/.next-cli-build/server/app/dashboard/providers/new.segments/_full.segment.rsc +5 -5
- package/app/.next-cli-build/server/app/dashboard/providers/new.segments/_tree.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/providers.html +1 -1
- package/app/.next-cli-build/server/app/dashboard/providers.rsc +5 -5
- package/app/.next-cli-build/server/app/dashboard/providers.segments/!KGRhc2hib2FyZCk/dashboard/providers/__PAGE__.segment.rsc +5 -5
- package/app/.next-cli-build/server/app/dashboard/providers.segments/_full.segment.rsc +5 -5
- package/app/.next-cli-build/server/app/dashboard/providers.segments/_tree.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/proxy-pools.html +1 -1
- package/app/.next-cli-build/server/app/dashboard/proxy-pools.rsc +5 -5
- package/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/!KGRhc2hib2FyZCk/dashboard/proxy-pools/__PAGE__.segment.rsc +5 -5
- package/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/_full.segment.rsc +5 -5
- package/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/_tree.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/pxpipe.html +1 -1
- package/app/.next-cli-build/server/app/dashboard/pxpipe.rsc +5 -5
- package/app/.next-cli-build/server/app/dashboard/pxpipe.segments/!KGRhc2hib2FyZCk/dashboard/pxpipe/__PAGE__.segment.rsc +5 -5
- package/app/.next-cli-build/server/app/dashboard/pxpipe.segments/_full.segment.rsc +5 -5
- package/app/.next-cli-build/server/app/dashboard/pxpipe.segments/_tree.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/quota.html +2 -2
- package/app/.next-cli-build/server/app/dashboard/quota.rsc +6 -6
- package/app/.next-cli-build/server/app/dashboard/quota.segments/!KGRhc2hib2FyZCk/dashboard/quota/__PAGE__.segment.rsc +6 -6
- package/app/.next-cli-build/server/app/dashboard/quota.segments/_full.segment.rsc +6 -6
- package/app/.next-cli-build/server/app/dashboard/quota.segments/_tree.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/settings/pricing/page.js +1 -1
- package/app/.next-cli-build/server/app/dashboard/settings/pricing/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/dashboard/settings/pricing.html +1 -1
- package/app/.next-cli-build/server/app/dashboard/settings/pricing.rsc +3 -3
- package/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/_full.segment.rsc +3 -3
- package/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/_tree.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/dashboard/settings/pricing/__PAGE__.segment.rsc +3 -3
- package/app/.next-cli-build/server/app/dashboard/skills.html +1 -1
- package/app/.next-cli-build/server/app/dashboard/skills.rsc +5 -5
- package/app/.next-cli-build/server/app/dashboard/skills.segments/!KGRhc2hib2FyZCk/dashboard/skills/__PAGE__.segment.rsc +5 -5
- package/app/.next-cli-build/server/app/dashboard/skills.segments/_full.segment.rsc +5 -5
- package/app/.next-cli-build/server/app/dashboard/skills.segments/_tree.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/token-saver.html +1 -1
- package/app/.next-cli-build/server/app/dashboard/token-saver.rsc +5 -5
- package/app/.next-cli-build/server/app/dashboard/token-saver.segments/!KGRhc2hib2FyZCk/dashboard/token-saver/__PAGE__.segment.rsc +5 -5
- package/app/.next-cli-build/server/app/dashboard/token-saver.segments/_full.segment.rsc +5 -5
- package/app/.next-cli-build/server/app/dashboard/token-saver.segments/_tree.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/translator.html +1 -1
- package/app/.next-cli-build/server/app/dashboard/translator.rsc +5 -5
- package/app/.next-cli-build/server/app/dashboard/translator.segments/!KGRhc2hib2FyZCk/dashboard/translator/__PAGE__.segment.rsc +5 -5
- package/app/.next-cli-build/server/app/dashboard/translator.segments/_full.segment.rsc +5 -5
- package/app/.next-cli-build/server/app/dashboard/translator.segments/_tree.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/usage.html +1 -1
- package/app/.next-cli-build/server/app/dashboard/usage.rsc +5 -5
- package/app/.next-cli-build/server/app/dashboard/usage.segments/!KGRhc2hib2FyZCk/dashboard/usage/__PAGE__.segment.rsc +5 -5
- package/app/.next-cli-build/server/app/dashboard/usage.segments/_full.segment.rsc +5 -5
- package/app/.next-cli-build/server/app/dashboard/usage.segments/_tree.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard.html +1 -1
- package/app/.next-cli-build/server/app/dashboard.rsc +5 -5
- package/app/.next-cli-build/server/app/dashboard.segments/!KGRhc2hib2FyZCk/dashboard/__PAGE__.segment.rsc +5 -5
- package/app/.next-cli-build/server/app/dashboard.segments/_full.segment.rsc +5 -5
- package/app/.next-cli-build/server/app/dashboard.segments/_tree.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/index.html +1 -1
- package/app/.next-cli-build/server/app/index.rsc +3 -3
- package/app/.next-cli-build/server/app/index.segments/__PAGE__.segment.rsc +3 -3
- package/app/.next-cli-build/server/app/index.segments/_full.segment.rsc +3 -3
- package/app/.next-cli-build/server/app/index.segments/_tree.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/landing/page.js +1 -1
- package/app/.next-cli-build/server/app/landing/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/landing.html +1 -1
- package/app/.next-cli-build/server/app/landing.rsc +3 -3
- package/app/.next-cli-build/server/app/landing.segments/_full.segment.rsc +3 -3
- package/app/.next-cli-build/server/app/landing.segments/_tree.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/landing.segments/landing/__PAGE__.segment.rsc +3 -3
- package/app/.next-cli-build/server/app/login/page.js +1 -1
- package/app/.next-cli-build/server/app/login/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/login.html +1 -1
- package/app/.next-cli-build/server/app/login.rsc +4 -4
- package/app/.next-cli-build/server/app/login.segments/_full.segment.rsc +4 -4
- package/app/.next-cli-build/server/app/login.segments/_tree.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/login.segments/login/__PAGE__.segment.rsc +4 -4
- package/app/.next-cli-build/server/app/page.js +1 -1
- package/app/.next-cli-build/server/app/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app-paths-manifest.json +8 -8
- package/app/.next-cli-build/server/chunks/1318.js +51 -0
- package/app/.next-cli-build/server/chunks/1350.js +1 -0
- package/app/.next-cli-build/server/chunks/1450.js +1 -1
- package/app/.next-cli-build/server/chunks/1738.js +2 -2
- package/app/.next-cli-build/server/chunks/2557.js +1 -0
- package/app/.next-cli-build/server/chunks/2722.js +7 -7
- package/app/.next-cli-build/server/chunks/2750.js +2 -2
- package/app/.next-cli-build/server/chunks/3120.js +60 -12
- package/app/.next-cli-build/server/chunks/{9528.js → 369.js} +2 -3
- package/app/.next-cli-build/server/chunks/412.js +5 -5
- package/app/.next-cli-build/server/chunks/4161.js +1 -1
- package/app/.next-cli-build/server/chunks/4315.js +1 -1
- package/app/.next-cli-build/server/chunks/4404.js +1 -1
- package/app/.next-cli-build/server/chunks/4632.js +1 -1
- package/app/.next-cli-build/server/chunks/4884.js +3 -3
- package/app/.next-cli-build/server/chunks/5024.js +1 -1
- package/app/.next-cli-build/server/chunks/5330.js +28 -20
- package/app/.next-cli-build/server/chunks/5470.js +1 -1
- package/app/.next-cli-build/server/chunks/5681.js +1 -1
- package/app/.next-cli-build/server/chunks/5718.js +1 -1
- package/app/.next-cli-build/server/chunks/6108.js +1 -1
- package/app/.next-cli-build/server/chunks/6182.js +1 -1
- package/app/.next-cli-build/server/chunks/6200.js +1 -1
- package/app/.next-cli-build/server/chunks/6457.js +1 -1
- package/app/.next-cli-build/server/chunks/7153.js +1 -0
- package/app/.next-cli-build/server/chunks/7341.js +1 -1
- package/app/.next-cli-build/server/chunks/7828.js +1 -1
- package/app/.next-cli-build/server/chunks/8238.js +1 -1
- package/app/.next-cli-build/server/chunks/8590.js +1 -1
- package/app/.next-cli-build/server/chunks/8895.js +6 -6
- package/app/.next-cli-build/server/chunks/8962.js +1 -1
- package/app/.next-cli-build/server/chunks/{2365.js → 9055.js} +2 -1
- package/app/.next-cli-build/server/middleware-build-manifest.js +1 -1
- package/app/.next-cli-build/server/middleware.js +5 -5
- package/app/.next-cli-build/server/pages/404.html +1 -1
- package/app/.next-cli-build/server/pages/500.html +1 -1
- package/app/.next-cli-build/server/server-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/server-reference-manifest.json +1 -1
- package/app/.next-cli-build/static/chunks/1321-c5b3011761e0228b.js +1 -0
- package/app/.next-cli-build/static/chunks/5497-1af4fbf829c885c4.js +7 -0
- package/app/.next-cli-build/static/chunks/{6069-cd255683a4a76ed3.js → 6069-7e7f824c6e2d4291.js} +6 -6
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/combos/page-e7fe548bb32bb43c.js +1 -0
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/media-providers/[kind]/[id]/{page-4bcade1442e6c0b5.js → page-66d4b33890b140ae.js} +7 -7
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/providers/[id]/{page-c88a929e34f9b002.js → page-2f53d5dd5b247cf1.js} +4 -4
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/quota/page-a6d8744e27e7dd87.js +1 -0
- package/app/cli/package.json +1 -1
- package/app/package.json +1 -1
- package/app/src/mitm/server.js +1 -1
- package/package.json +1 -1
- package/src/cli/menus/combos.js +11 -2
- package/src/cli/utils/comboModelId.js +14 -0
- package/app/.next-cli-build/server/chunks/4746.js +0 -51
- package/app/.next-cli-build/server/chunks/6306.js +0 -1
- package/app/.next-cli-build/server/chunks/8319.js +0 -1
- package/app/.next-cli-build/server/chunks/9376.js +0 -51
- package/app/.next-cli-build/static/chunks/1321-ff45959ff6580781.js +0 -1
- package/app/.next-cli-build/static/chunks/5497-71ac1eaeaacd3abb.js +0 -7
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/combos/page-18d8f169d8c3de33.js +0 -1
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/quota/page-a1e95f4a56398b5f.js +0 -1
- /package/app/.next-cli-build/static/{8BL7P4wrNCaFJbJqldneC → i0cMBMqFdYWpbajovDyfY}/_buildManifest.js +0 -0
- /package/app/.next-cli-build/static/{8BL7P4wrNCaFJbJqldneC → i0cMBMqFdYWpbajovDyfY}/_ssgManifest.js +0 -0
|
@@ -1,9 +1,19 @@
|
|
|
1
|
-
"use strict";exports.id=5330,exports.ids=[5330],exports.modules={
|
|
2
|
-
[qoder error ${i}: ${n(a,200)}]`},finish_reason:"stop"}]});c.enqueue(d.encode(`data: ${e}
|
|
1
|
+
"use strict";exports.id=5330,exports.ids=[5330],exports.modules={8729:(a,b,c)=>{c.d(b,{DH:()=>w});let d=(()=>{let a=new Int16Array(128).fill(-1);for(let b=0;b<64;b++)a["ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".charCodeAt(b)]="_doRTgHZBKcGVjlvpC,@aFSx#DPuNJme&i*MzLOEn)sUrthbf%Y^w.(kIQyXqWA!".charCodeAt(b);return a[61]=36,a})();var e=c(78085),f=c(94755),g=c(55511),h=c(15308),i=c(35024),j=c(39609),k=c(41004),l=c(30022),m=c(86228),n=c(53225);function o(a){if("string"==typeof a)return a;if(null==a)return"";if(Array.isArray(a)){let b=[];for(let c of a)c&&"object"==typeof c&&("text"===c.type&&"string"==typeof c.text?b.push(c.text):"string"==typeof c.text&&b.push(c.text));return b.join("\n")}return String(a)}function p(a,b){return a&&a.length>b?`${a.slice(0,b)}...`:a||""}async function q({model:a,body:b,credentials:c,log:d,proxyOptions:e,signal:h}){let i=String(a||"").replace(/^qoder\//,""),j=await (0,n.X5)(c,i,{log:d,proxyOptions:e,signal:h});if(!j){let a=await (0,n.EV)(c,{forceRefresh:!0,log:d,proxyOptions:e,signal:h}),b=a?.rawConfigs.get(i);if(!b)throw Error(`qoder: model_config for "${i}" not yet known (run a model list fetch or check upstream connectivity)`);j={...b,key:i}}let{messages:k,systemText:l}=function(a){if(!Array.isArray(a)||0===a.length)return{messages:[],systemText:""};let b=[],c=[];for(let d of a){if(!d||"object"!=typeof d)continue;if("system"===d.role){let a=o(d.content);a&&b.push(a);continue}let a={...d};a.content=function(a){if("string"==typeof a)return a;if(null==a)return"";if(!Array.isArray(a))return String(a);let b=[],c=[],d=!1;for(let e of a)if(e&&"object"==typeof e)if("image_url"===e.type&&"string"==typeof e.image_url?.url&&e.image_url.url)b.push({type:"image_url",image_url:{url:e.image_url.url}}),d=!0;else if(e.type===m.R4.IMAGE&&e.source){let a=e.source,c="base64"===a.type&&a.data?`data:${a.media_type||m.BY};base64,${a.data}`:"string"==typeof a.url&&a.url?a.url:null;c&&(b.push({type:"image_url",image_url:{url:c}}),d=!0)}else"string"==typeof e.text&&e.text&&(b.length?b.push({type:"text",text:e.text}):c.push(e.text));return d?(c.length&&b.unshift({type:"text",text:c.join("\n")}),b):c.join("\n")}(d.content),c.push(a)}return{messages:c,systemText:b.join("\n\n")}}(b.messages||[]),r=b.tools,s=!!j.is_reasoning,t=Number(j.max_output_tokens)||0,u=32768;t>0&&(u=t),"number"==typeof b.max_tokens&&b.max_tokens>0&&b.max_tokens<u&&(u=b.max_tokens),"number"==typeof b.max_completion_tokens&&b.max_completion_tokens>0&&b.max_completion_tokens<u&&(u=b.max_completion_tokens);let v=function(a){for(let b=a.length-1;b>=0;b--){let c=a[b];if(c?.role==="user"){if("string"==typeof c.content)return c.content;if(Array.isArray(c.content))return o(c.content)}}return""}(k),w=function(a,...b){let c=(0,g.createHash)("sha256");for(let d of(c.update(a),b))c.update("\0"),c.update(String(d??""));return c.digest("hex").slice(0,16)}("qoder-session",(c.providerSpecificData||{}).userId,i),x=function(a,b,c,d){let e=(0,g.createHash)("sha256");for(let c of(e.update("qoder-record\0"),e.update(String(a)),b))if(c&&"object"==typeof c){if(c.role&&(e.update("\0"),e.update(c.role)),"string"==typeof c.content&&c.content)e.update("\0"),e.update(c.content);else if(Array.isArray(c.content)){e.update("\0");try{e.update(JSON.stringify(c.content))}catch{}}}if(c){e.update("\0");try{e.update(JSON.stringify(c))}catch{}}return e.update(`\0mt=${d}`),e.digest("hex").slice(0,16)}(i,k,r,u);return{qoderKey:i,payload:{request_id:(0,f.A)(),request_set_id:x,chat_record_id:x,session_id:w,stream:!0,chat_task:"FREE_INPUT",is_reply:!0,is_retry:!1,source:1,version:"3",session_type:"qodercli",agent_id:"agent_common",task_id:"common",code_language:"",chat_prompt:"",image_urls:null,aliyun_user_type:"",system:l,messages:k,tools:Array.isArray(r)?r:[],parameters:{max_tokens:u},chat_context:{chatPrompt:"",imageUrls:null,extra:{context:[],modelConfig:{key:i,is_reasoning:s},originalContent:v},features:[],text:v},model_config:j,business:{product:"cli",version:"1.0.0",type:"agent",stage:"start",id:(0,f.A)(),name:p(v,30),begin_at:Date.now()}},modelConfig:j}}function r(a){if(!a||"string"!=typeof a)return!1;if(a.toLowerCase().includes("pricingurl"))return!0;try{let b=String(JSON.parse(a)?.code??"");if("110"===b||"112"===b||"10605"===b)return!0}catch{}return/"code"\s*:\s*"(112|10605)"/.test(a)}async function s(a){let b=new TextDecoder,c=[],d="",e=0,f=!1;for(;;){let g,h=d.indexOf("\n",e);if(-1===h&&!f){let{done:e,value:g}=await a.read();f=e,e?d+=b.decode():(c.push(g),d+=b.decode(g,{stream:!0}));continue}if(e>=d.length)return{isError:!1,chunks:c,upstreamDone:f};-1===h&&(h=d.length);let i=d.slice(e,h).replace(/\r$/,"").trim();if(e=h+1,!i.startsWith("data:"))continue;let j=i.slice(5).trimStart();if("[DONE]"===j)return{isError:!1,chunks:c,upstreamDone:f};try{g=JSON.parse(j)}catch{return{isError:!1,chunks:c,upstreamDone:f}}let k=t(g),l=u(g);if(200!==k)return{isError:!0,isBilling:r(l),statusVal:k,message:l||`upstream status ${k}`};return{isError:!1,chunks:c,upstreamDone:f}}}function t(a){let b=Number(a?.statusCodeValue);return Number.isNaN(b)?200:b}function u(a){return"string"==typeof a?.body?a.body:a?.body!=null?JSON.stringify(a.body):""}async function v(a,b){if(!a.ok||!a.body)return a;let c=a.body.getReader(),d=await s(c);if(d.isError){await c.cancel().catch(()=>{});let a=d.isBilling?k.gx.FORBIDDEN:Number.isInteger(d.statusVal)&&d.statusVal>=k.gx.BAD_REQUEST&&d.statusVal<=599?d.statusVal:k.gx.BAD_GATEWAY;return new Response(JSON.stringify({error:{message:d.message,code:d.statusVal}}),{status:a,headers:{"Content-Type":"application/json"}})}let e=new TextDecoder,f=new TextEncoder,g="",h=!1,i=(a,c)=>{let d,e=a.replace(/\r$/,"").trim();if(!e||!e.startsWith("data:")||h)return;let g=e.slice(5).trimStart();if("[DONE]"===g){c.enqueue(f.encode("data: [DONE]\n\n")),h=!0;return}try{d=JSON.parse(g)}catch{return}let i=t(d),j=u(d);if(200!==i){if(r(j)){let a=JSON.stringify({error:{message:j||`qoder billing block (${i})`,code:"qoder_billing_block",status:k.gx.FORBIDDEN,type:"quota_error"}});c.enqueue(f.encode(`data: ${a}
|
|
3
2
|
|
|
4
|
-
`)),c.enqueue(
|
|
3
|
+
`)),c.enqueue(f.encode("data: [DONE]\n\n")),h=!0;return}let a=j||`upstream status ${i}`,d=JSON.stringify({id:`qoder-error-${Date.now()}`,object:"chat.completion.chunk",created:Math.floor(Date.now()/1e3),model:b,choices:[{index:0,delta:{content:`
|
|
4
|
+
[qoder error ${i}: ${p(a,200)}]`},finish_reason:"stop"}]});c.enqueue(f.encode(`data: ${d}
|
|
5
5
|
|
|
6
|
-
`))},h=new TransformStream({transform(a,b){let d;for(e+=c.decode(a,{stream:!0});-1!==(d=e.indexOf("\n"));){let a=e.slice(0,d);e=e.slice(d+1),g(a,b)}},flush(a){(e+=c.decode()).length>0&&(g(e,a),e=""),f||(a.enqueue(d.encode("data: [DONE]\n\n")),f=!0)}});return new Response(a.body.pipeThrough(h),{status:a.status,statusText:a.statusText,headers:{"Content-Type":"text/event-stream","Cache-Control":"no-cache"}})}(q,`qoder/${l}`),url:r,headers:v,transformedBody:m}:{response:q,url:r,headers:v,transformedBody:m}}async refreshCredentials(){return null}needsRefresh(){return!1}}},9708:(a,b,c)=>{c.d(b,{D:()=>f});var d=c(96179),e=c(35024);class f extends d.L{constructor(){super("ollama-local")}buildUrl(a,b,c=0,d=null){return`${(0,e.Ak)(d)}/api/chat`}}},11655:(a,b,c)=>{c.d(b,{x:()=>q});var d=c(15308),e=c(35024),f=c(75924),g=c(41004),h=c(65377),i=c(8361),j=c(14170),k=c(9024),l=c(14530),m=c(39609),n=c(74010),o=c(55511),p=c.n(o);class q extends d.H{constructor(){super("github",e.xq.github),this.knownCodexModels=new Set}buildUrl(a,b,c=0){return this.config.baseUrl}buildHeaders(a,b=!0){let c=a.copilotToken||a.accessToken;return{Authorization:`Bearer ${c}`,"Content-Type":"application/json","copilot-integration-id":"vscode-chat","editor-version":`vscode/${f.x0.VSCODE_VERSION}`,"editor-plugin-version":`copilot-chat/${f.x0.COPILOT_CHAT_VERSION}`,"user-agent":f.x0.USER_AGENT,"openai-intent":"conversation-panel","x-github-api-version":f.x0.API_VERSION,"x-request-id":p().randomUUID?.()||`${Date.now()}-${Math.random().toString(36).slice(2)}`,"x-vscode-user-agent-library-version":"electron-fetch","X-Initiator":"user","anthropic-version":"2023-06-01",Accept:b?"text/event-stream":"application/json"}}isClaudeModel(a){return/claude/i.test(a||"")}sanitizeMessagesForChatCompletions(a){if(!a?.messages)return a;let b={...a};if(a.response_format&&a.model?.includes("claude")){let b=a.response_format,c="";if("json_schema"===b.type&&b.json_schema?.schema?c="CRITICAL: You must ONLY output raw JSON. Never use markdown code blocks. Never use backticks. Never wrap JSON in triple backticks. Output ONLY the raw JSON object.":"json_object"===b.type&&(c="CRITICAL: You must ONLY output raw JSON. Never use markdown code blocks. Never use backticks."),c){let b=a.messages.findIndex(a=>"system"===a.role);b>=0?a.messages[b].content=c+"\n\n"+a.messages[b].content:a.messages.unshift({role:"system",content:c});let d=a.messages.map((a,b)=>"user"===a.role?b:-1).filter(a=>a>=0).pop();if(d>=0){let b=a.messages[d],c="string"==typeof b.content?b.content:JSON.stringify(b.content);b.content="Respond with ONLY raw JSON (no markdown, no backticks, no code blocks): "+c}}}return b.messages=a.messages.map(a=>{if(!a.content||"string"==typeof a.content)return a;if(Array.isArray(a.content)){let b=a.content.map(a=>{if("text"===a.type||"image_url"===a.type)return a;let b=a.text||a.content||JSON.stringify(a);return{type:"text",text:"string"==typeof b?b:JSON.stringify(b)}}).filter(a=>""!==a.text);return{...a,content:b.length>0?b:null}}return a}),b}requiresMaxCompletionTokens(a){return/gpt-5|o[134]-/i.test(a)}transformRequest(a,b,c,d){let e={...b};return this.requiresMaxCompletionTokens(a)&&void 0!==e.max_tokens&&(e.max_completion_tokens=e.max_tokens,delete e.max_tokens),"none"===e.reasoning_effort&&delete e.reasoning_effort,(0,n.c)("github",a,e),e}supportsResponsesEndpoint(a){let b=(a||"").toLowerCase();return!(b.includes("gemini")||b.includes("claude"))}async execute(a){let{model:b,log:c}=a;if(this.isClaudeModel(b))return c?.debug("GITHUB",`Using /v1/messages route for ${b}`),this.executeWithMessagesEndpoint(a);if(this.knownCodexModels.has(b)&&this.supportsResponsesEndpoint(b))return c?.debug("GITHUB",`Using cached /responses route for ${b}`),this.executeWithResponsesEndpoint(a);let d={...a,body:this.sanitizeMessagesForChatCompletions(a.body)},e=await super.execute({...d,proxyOptions:a.proxyOptions||null});if(e.response.status===g.gx.BAD_REQUEST&&this.supportsResponsesEndpoint(b)){let d=await e.response.clone().text();if(d.includes("not accessible via the /chat/completions endpoint")||d.includes("The requested model is not supported"))return c?.warn("GITHUB",`Model ${b} requires /responses. Switching...`),this.knownCodexModels.add(b),this.executeWithResponsesEndpoint(a)}return e}async executeWithResponsesEndpoint({model:a,body:b,stream:c,credentials:d,signal:e,log:f,proxyOptions:g=null}){let i=this.config.responsesUrl,j=this.buildHeaders(d,c),k=(0,h.openaiToOpenAIResponsesRequest)(a,b,c,d);f?.debug("GITHUB","Sending translated request to /responses");let n=await (0,m.proxyAwareFetch)(i,{method:"POST",headers:j,body:JSON.stringify(k),signal:e},g);return n.ok?{response:(0,l.L)(n,{model:a,stream:c}),url:i,headers:j,transformedBody:k}:{response:n,url:i,headers:j,transformedBody:k}}async executeWithMessagesEndpoint({model:a,body:b,stream:c,credentials:d,signal:e,log:f,proxyOptions:g=null}){let h=this.config.messagesUrl,l=this.buildHeaders(d,c),n=(0,i.GH)(j.h.OPENAI,j.h.CLAUDE,a,b,!0,d,"github"),o=n._toolNameMap;delete n._toolNameMap,f?.debug("GITHUB","Sending translated request to /v1/messages");let p=await (0,m.proxyAwareFetch)(h,{method:"POST",headers:l,body:JSON.stringify(n),signal:e},g);if(!p.ok)return{response:p,url:h,headers:l,transformedBody:n};let q=(0,i.Ws)(j.h.CLAUDE);q.model=a,o&&(q.toolNameMap=o);let r=new TextDecoder,s="",t=(a,b)=>{for(let c of b)a.enqueue(new TextEncoder().encode((0,k.v8)(c,"openai")))},u=new TransformStream({async transform(a,b){let d=(s+=r.decode(a,{stream:!0})).split("\n");for(let a of(s=d.pop()||"",d)){let d=a.trim();if(!d)continue;let e=(0,k.tV)(d);if(e){if(e.done&&!0===c){b.enqueue(new TextEncoder().encode("data: [DONE]\n\n"));continue}t(b,(0,i.Y8)(j.h.CLAUDE,j.h.OPENAI,e,q))}}},flush(a){if(s.trim()){let b=(0,k.tV)(s.trim());b&&!b.done&&t(a,(0,i.Y8)(j.h.CLAUDE,j.h.OPENAI,b,q))}}});return p.body?{response:new Response(p.body.pipeThrough(u),{status:p.status,statusText:p.statusText,headers:p.headers}),url:h,headers:l,transformedBody:n}:{response:new Response("",{status:p.status,headers:p.headers}),url:h,headers:l,transformedBody:n}}async refreshCopilotToken(a,b,c=null){try{let d=await (0,m.proxyAwareFetch)("https://api.github.com/copilot_internal/v2/token",{headers:{Authorization:`token ${a}`,"User-Agent":f.x0.USER_AGENT,"Editor-Version":`vscode/${f.x0.VSCODE_VERSION}`,"Editor-Plugin-Version":`copilot-chat/${f.x0.COPILOT_CHAT_VERSION}`,Accept:"application/json","x-github-api-version":f.x0.API_VERSION}},c);if(!d.ok){let a=await d.text();return b?.error?.("TOKEN",`Copilot token refresh failed: ${d.status} ${a}`),null}let e=await d.json();return b?.info?.("TOKEN","Copilot token refreshed"),{token:e.token,expiresAt:e.expires_at}}catch(a){return b?.error?.("TOKEN",`Copilot refresh error: ${a.message}`),null}}async refreshGitHubToken(a,b,c=null){try{let d={grant_type:"refresh_token",refresh_token:a,client_id:this.config.clientId};this.config.clientSecret&&(d.client_secret=this.config.clientSecret);let e=await (0,m.proxyAwareFetch)(f.NA.github.token,{method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded",Accept:"application/json"},body:new URLSearchParams(d)},c);if(!e.ok)return null;let g=await e.json();return b?.info?.("TOKEN","GitHub token refreshed"),{accessToken:g.access_token,refreshToken:g.refresh_token||a,expiresIn:g.expires_in}}catch(a){return b?.error?.("TOKEN",`GitHub refresh error: ${a.message}`),null}}async refreshCredentials(a,b,c=null){let d=await this.refreshCopilotToken(a.accessToken,b,c);if(!d&&a.refreshToken){let e=await this.refreshGitHubToken(a.refreshToken,b,c);if(e?.accessToken)return(d=await this.refreshCopilotToken(e.accessToken,b,c))?{...e,copilotToken:d.token,copilotTokenExpiresAt:d.expiresAt}:e}return d?{accessToken:a.accessToken,refreshToken:a.refreshToken,copilotToken:d.token,copilotTokenExpiresAt:d.expiresAt}:null}needsRefresh(a){if(!a.copilotToken)return!0;if(a.copilotTokenExpiresAt){let b=a.copilotTokenExpiresAt;if("number"==typeof b&&b<1e12?b*=1e3:"string"==typeof b&&(b=new Date(b).getTime()),b-Date.now()<3e5)return!0}return super.needsRefresh(a)}}},16046:(a,b,c)=>{c.d(b,{Yh:()=>o});var d=c(15308),e=c(35024),f=c(39609),g=c(55511),h=c(21820),i=c.n(h);let j="abcdefghijklmnopqrstuvwxyz0123456789",k="You are MiMoCode, an interactive CLI tool that helps users with software engineering tasks.",l=null,m=0;async function n(a=null){if(l&&Date.now()<m-3e5)return l;let b=await (0,f.proxyAwareFetch)("https://api.xiaomimimo.com/api/free-ai/bootstrap",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({client:function(){let a="unknown-user";try{a=i().userInfo().username}catch{}let b=(i().cpus()[0]?.model||"unknown-cpu").trim(),c=`${i().hostname()}|${i().platform()}|${i().arch()}|${b}|${a}`;return(0,g.createHash)("sha256").update(c).digest("hex")}()})},a);if(!b.ok)throw Error(`MiMo bootstrap failed: ${b.status}`);let c=await b.json();if(!c.jwt)throw Error("MiMo bootstrap returned no JWT");return l=c.jwt,m=function(a){try{let b=JSON.parse(Buffer.from(a.split(".")[1],"base64").toString());if(b.exp)return 1e3*b.exp}catch{}return Date.now()+3e6}(c.jwt),l}class o extends d.H{constructor(){super("mimo-free",e.xq["mimo-free"]),this.sessionId=function(){let a="ses_";for(let b=0;b<24;b++)a+=j[Math.floor(Math.random()*j.length)];return a}()}buildUrl(){return"https://api.xiaomimimo.com/api/free-ai/openai/chat"}buildHeaders(a,b=!0){return{"Content-Type":"application/json","X-Mimo-Source":"mimocode-cli-free","x-session-affinity":this.sessionId,Accept:b?"text/event-stream":"application/json"}}transformRequest(a,b){let c;return{...!Array.isArray(c=b?.messages)||c.some(a=>a?.role==="system"&&"string"==typeof a.content&&a.content.includes(k))?b:{...b,messages:[{role:"system",content:k},...c]},model:"mimo-auto"}}async execute({model:a,body:b,stream:c,credentials:d,signal:e,log:g,proxyOptions:h=null}){let i;try{i=await n(h)}catch(a){throw g?.error?.("AUTH",`MiMo bootstrap failed: ${a.message}`),a}let j=this.buildUrl(),k=this.transformRequest(a,b),o={...this.buildHeaders(d,c),Authorization:`Bearer ${i}`},p=JSON.stringify(k);g?.debug?.("FETCH",`MIMO-FREE → ${j} | body=${p.length}B`);let q=await (0,f.proxyAwareFetch)(j,{method:"POST",headers:o,body:p,signal:e},h);return 401===q.status||403===q.status?(g?.debug?.("AUTH",`MiMo auth failed (${q.status}), re-bootstrapping...`),l=null,m=0,i=await n(h),o.Authorization=`Bearer ${i}`,{response:await (0,f.proxyAwareFetch)(j,{method:"POST",headers:o,body:p,signal:e},h),url:j,headers:o,transformedBody:k}):{response:q,url:j,headers:o,transformedBody:k}}}},19946:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.d(b,{o:()=>u});var e=c(15308),f=c(35024),g=c(41004),h=c(55456),i=c(81756),j=c(73483),k=c(14170),l=c(39609),m=c(74075),n=c.n(m);let a=null;if(!("u">typeof caches&&"object"==typeof caches||"u">typeof EdgeRuntime))try{a=await Promise.resolve().then(c.t.bind(c,73496,23))}catch{}let s="1"===process.env.CURSOR_STREAM_DEBUG,t=(...a)=>{s&&console.log(...a)};function o(a){let b=String(a||"").split("/").pop();return/^composer(?:-|$)/i.test(b)}function p(a){if(!a)return"";let b="</think>",c=a.lastIndexOf(b);return c<0?"":a.slice(c+b.length).trimStart()}function q(a,b){if(a.length>10&&123===a[0]&&34===a[1])try{if(a.toString("utf-8").startsWith('{"error"'))return t("[DECOMPRESS] Detected JSON error, skipping decompression"),a}catch{}if(1===b||2===b||3===b)try{return n().gunzipSync(a)}catch(c){try{return n().inflateSync(a)}catch(d){try{return n().inflateRawSync(a)}catch(e){t(`[DECOMPRESS ERROR] flags=${b}, payloadSize=${a.length}, gzip=${c.message}, deflate=${d.message}, raw=${e.message}`),t("[DECOMPRESS ERROR] First 50 bytes (hex):",a.slice(0,50).toString("hex"))}}}return a}function r(a){let b=a?.error?.details?.[0]?.debug?.details?.title||a?.error?.details?.[0]?.debug?.details?.detail||a?.error?.message||"API Error",c=a?.error?.code==="resource_exhausted";return new Response(JSON.stringify({error:{message:b,type:c?"rate_limit_error":"api_error",code:a?.error?.details?.[0]?.debug?.error||"unknown"}}),{status:c?g.gx.RATE_LIMITED:g.gx.BAD_REQUEST,headers:{"Content-Type":"application/json"}})}class u extends e.H{constructor(){super("cursor",f.xq.cursor)}buildUrl(){return`${this.config.baseUrl}${this.config.chatPath}`}buildHeaders(a){let b=a.accessToken,c=a.providerSpecificData?.machineId,d=a.providerSpecificData?.ghostMode!==!1;if(!c)throw Error("Machine ID is required for Cursor API");return(0,i.JA)(b,c,d)}transformRequest(a,b,c,d){let e=b.messages||[],f=b.tools||[],g=b.reasoning_effort||null,i=d?.rawHeaders?.["user-agent"]||"",j=i.includes("claude-cli")||i.includes("claude-code")||i.includes("Claude Code");return(0,h.yI)(e,a,f,g,j)}async makeFetchRequest(a,b,c,d,e=null){let f=await (0,l.proxyAwareFetch)(a,{method:"POST",headers:b,body:c,signal:d},e);return{status:f.status,headers:Object.fromEntries(f.headers.entries()),body:Buffer.from(await f.arrayBuffer())}}makeHttp2Request(b,c,d,e){if(!a)throw Error("http2 module not available");return new Promise((f,g)=>{let h=new URL(b),i=a.connect(`https://${h.host}`),j=[],k={},l=!1,m=a=>(...b)=>{l||(l=!0,clearTimeout(n),i.close(),a(...b))},n=setTimeout(m(()=>{g(Error("HTTP/2 request timed out"))}),6e4);i.on("error",m(g));let o=i.request({":method":"POST",":path":h.pathname,":authority":h.host,":scheme":"https",...c});if(o.on("response",a=>{k=a}),o.on("data",a=>{j.push(a)}),o.on("end",m(()=>{f({status:k[":status"],headers:k,body:Buffer.concat(j)})})),o.on("error",m(g)),e){let a=m(()=>g(Error("Request aborted")));e.addEventListener("abort",a,{once:!0})}o.write(d),o.end()})}async execute({model:b,body:c,stream:d,credentials:e,signal:f,log:h,proxyOptions:i=null}){let j=this.buildUrl(),k=this.buildHeaders(e),l=this.transformRequest(b,c,d,e);try{let e=i?.enabled===!0||i?.connectionProxyEnabled===!0||!!i?.vercelRelayUrl,g=a&&!e?await this.makeHttp2Request(j,k,l,f):await this.makeFetchRequest(j,k,l,f,i);if(200!==g.status){let a=g.body?.toString()||"Unknown error";return{response:new Response(JSON.stringify({error:{message:`[${g.status}]: ${a}`,type:"invalid_request_error",code:""}}),{status:g.status,headers:{"Content-Type":"application/json"}}),url:j,headers:k,transformedBody:c}}return{response:!1!==d?this.transformProtobufToSSE(g.body,b,c):this.transformProtobufToJSON(g.body,b,c),url:j,headers:k,transformedBody:c}}catch(a){return{response:new Response(JSON.stringify({error:{message:a.message,type:"connection_error",code:""}}),{status:g.gx.SERVER_ERROR,headers:{"Content-Type":"application/json"}}),url:j,headers:k,transformedBody:c}}}transformProtobufToJSON(a,b,c){let d=`chatcmpl-cursor-${Date.now()}`,e=Math.floor(Date.now()/1e3),f=0,i="",l="",m=[],n=new Map,s=new Set,u=0;for(t(`[CURSOR BUFFER] Total length: ${a.length} bytes`);f<a.length;){if(f+5>a.length){t(`[CURSOR BUFFER] Reached end, offset=${f}, remaining=${a.length-f}`);break}let b=a[f],c=a.readUInt32BE(f+1);if(t(`[CURSOR BUFFER] Frame ${u+1}: flags=0x${b.toString(16).padStart(2,"0")}, length=${c}`),f+5+c>a.length){t(`[CURSOR BUFFER] Incomplete frame, offset=${f}, length=${c}, buffer.length=${a.length}`);break}let d=a.slice(f+5,f+5+c);if(f+=5+c,u++,!(d=q(d,b))){t(`[CURSOR BUFFER] Frame ${u}: decompression failed, skipping`);continue}if(d.length>0&&123===d[0])try{let a=d.toString("utf-8");if(a.includes('"error"')){let b=i||n.size>0;if(t(`[CURSOR BUFFER] Error frame (hasContent=${b}): ${a.slice(0,500)}`),b)break;return r(JSON.parse(a))}}catch{}let e=(0,h.CP)(new Uint8Array(d));if(t(`[CURSOR DECODED] Frame ${u}:`,e),e.error){let a=i||n.size>0;if(t(`[CURSOR BUFFER] Decoded error (hasContent=${a}): ${e.error}`),a)break;return new Response(JSON.stringify({error:{message:e.error,type:"rate_limit_error",code:"rate_limited"}}),{status:g.gx.RATE_LIMITED,headers:{"Content-Type":"application/json"}})}if(e.toolCall){let a=e.toolCall;if(n.has(a.id)){let b=n.get(a.id);b.function.arguments+=a.function.arguments,b.isLast=a.isLast}else n.set(a.id,{...a});if(a.isLast){let b=n.get(a.id);s.add(a.id),m.push({id:b.id,type:b.type,function:{name:b.function.name,arguments:b.function.arguments}})}}e.text&&(i+=e.text),e.thinking&&(l+=e.thinking)}let v=o(b)?p(l):"",w=i||v;for(let[a,b]of(t(`[CURSOR BUFFER] Parsed ${u} frames, toolCallsMap size: ${n.size}, finalized toolCalls: ${m.length}`),n.entries()))s.has(a)||(t(`[CURSOR BUFFER] Finalizing incomplete tool call: ${a}, isLast=${b.isLast}`),m.push({id:b.id,type:b.type,function:{name:b.function.name,arguments:b.function.arguments}}));t(`[CURSOR BUFFER] Final toolCalls count: ${m.length}`);let x={role:"assistant",content:w||null};m.length>0&&(x.tool_calls=m);let y=(0,j.OF)(c,w.length,k.h.OPENAI),z={id:d,object:"chat.completion",created:e,model:b,choices:[{index:0,message:x,finish_reason:m.length>0?"tool_calls":"stop"}],usage:y};return new Response(JSON.stringify(z),{status:200,headers:{"Content-Type":"application/json"}})}transformProtobufToSSE(a,b,c){let d=`chatcmpl-cursor-${Date.now()}`,e=Math.floor(Date.now()/1e3),f=[],i=0,l="",m="",n=0,s=[],u=new Map,v=new Set,w=new Set,x=0;for(t(`[CURSOR BUFFER SSE] Total length: ${a.length} bytes`);i<a.length;){if(i+5>a.length){t(`[CURSOR BUFFER SSE] Reached end, offset=${i}, remaining=${a.length-i}`);break}let c=a[i],j=a.readUInt32BE(i+1);if(t(`[CURSOR BUFFER SSE] Frame ${x+1}: flags=0x${c.toString(16).padStart(2,"0")}, length=${j}`),i+5+j>a.length){t(`[CURSOR BUFFER SSE] Incomplete frame, offset=${i}, length=${j}, buffer.length=${a.length}`);break}let k=a.slice(i+5,i+5+j);if(i+=5+j,x++,!(k=q(k,c))){t(`[CURSOR BUFFER SSE] Frame ${x}: decompression failed, skipping`);continue}if(123===k[0])try{let a=k.toString("utf-8");if(a.includes('"error"')){let b=f.length>0||l||u.size>0;if(t(`[CURSOR BUFFER SSE] Error frame (hasContent=${b}): ${a.slice(0,500)}`),b)break;return r(JSON.parse(a))}}catch{}let y=(0,h.CP)(new Uint8Array(k));if(t(`[CURSOR DECODED SSE] Frame ${x}:`,y),y.error){let a=f.length>0||l||u.size>0;if(t(`[CURSOR BUFFER SSE] Decoded error (hasContent=${a}): ${y.error}`),a)break;return new Response(JSON.stringify({error:{message:y.error,type:"rate_limit_error",code:"rate_limited"}}),{status:g.gx.RATE_LIMITED,headers:{"Content-Type":"application/json"}})}if(y.toolCall){let a=y.toolCall;if(0===f.length&&f.push(`data: ${JSON.stringify({id:d,object:"chat.completion.chunk",created:e,model:b,choices:[{index:0,delta:{role:"assistant",content:""},finish_reason:null}]})}
|
|
6
|
+
`)),c.enqueue(f.encode("data: [DONE]\n\n")),h=!0;return}if(!j)return;if("[DONE]"===j){c.enqueue(f.encode("data: [DONE]\n\n")),h=!0;return}let l=j.replace(/\r?\n/g,"");c.enqueue(f.encode(`data: ${l}
|
|
7
|
+
|
|
8
|
+
`))},j=new TransformStream({transform(a,b){let c;for(g+=e.decode(a,{stream:!0});-1!==(c=g.indexOf("\n"));){let a=g.slice(0,c);g=g.slice(c+1),i(a,b)}},flush(a){(g+=e.decode()).length>0&&(i(g,a),g=""),h||(a.enqueue(f.encode("data: [DONE]\n\n")),h=!0)}});return new Response(new ReadableStream({start(a){for(let b of d.chunks)a.enqueue(b);d.upstreamDone&&a.close()},async pull(a){let{done:b,value:d}=await c.read();b?a.close():a.enqueue(d)},cancel:a=>c.cancel(a)}).pipeThrough(j),{status:a.status,statusText:a.statusText,headers:{"Content-Type":"text/event-stream","Cache-Control":"no-cache"}})}class w extends h.H{constructor(){super("qoder",i.xq.qoder)}buildUrl(){return l.KC}async execute({model:a,body:b,stream:c,credentials:f,signal:g,log:h,proxyOptions:i=null}){let l,m,n,o,p=this.buildUrl(),r=f?.providerSpecificData||{};if(!r.userId)return{response:new Response(JSON.stringify({error:{message:"qoder credential is missing userId; reconnect the account"}}),{status:401,headers:{"Content-Type":"application/json"}}),url:p,headers:{},transformedBody:b};if(!f?.accessToken)return{response:new Response(JSON.stringify({error:{message:"qoder credential is missing accessToken; reconnect the account"}}),{status:401,headers:{"Content-Type":"application/json"}}),url:p,headers:{},transformedBody:b};try{({qoderKey:l,payload:m}=await q({model:a,body:b,credentials:f,log:h,proxyOptions:i,signal:g}))}catch(a){return{response:new Response(JSON.stringify({error:{message:a.message}}),{status:400,headers:{"Content-Type":"application/json"}}),url:p,headers:{},transformedBody:b}}let s=function(a){let b=(Buffer.isBuffer(a)?a:"string"==typeof a?Buffer.from(a,"utf8"):Buffer.from(a)).toString("base64"),c=b.length,e=Math.floor(c/3),f=b.slice(c-e)+b.slice(e,c-e)+b.slice(0,e),g=Buffer.alloc(c);for(let a=0;a<c;a++){let b=f.charCodeAt(a);b<128&&d[b]>=0?g[a]=d[b]:g[a]=b}return g.toString("latin1")}(Buffer.from(JSON.stringify(m),"utf8")),t=Buffer.from(s,"latin1");try{n=(0,e.d)(t,p,{userId:r.userId,authToken:f.accessToken,name:f.displayName||"",email:f.email||"",machineId:r.machineId||""})}catch(a){return{response:new Response(JSON.stringify({error:{message:`qoder cosy signing failed: ${a.message}`}}),{status:401,headers:{"Content-Type":"application/json"}}),url:p,headers:{},transformedBody:b}}let u={"Content-Type":"application/json",Accept:"text/event-stream","Cache-Control":"no-cache","X-Model-Key":l,"X-Model-Source":m.model_config&&m.model_config.source||"system","Accept-Encoding":"identity",...n},w=this.config?.timeoutMs||k.pH,x=new AbortController,y=setTimeout(()=>x.abort(Error("fetch connect timeout")),w),z=g?AbortSignal.any([g,x.signal]):x.signal;try{o=await (0,j.proxyAwareFetch)(p,{method:"POST",headers:u,body:t,signal:z},{...i,strictProxy:!0})}catch(a){if(z.aborted)throw z.reason;throw a}finally{clearTimeout(y)}return o.ok?{response:await v(o,`qoder/${l}`),url:p,headers:u,transformedBody:m}:{response:o,url:p,headers:u,transformedBody:m}}async refreshCredentials(){return null}needsRefresh(){return!1}}},9708:(a,b,c)=>{c.d(b,{D:()=>f});var d=c(96179),e=c(35024);class f extends d.L{constructor(){super("ollama-local")}buildUrl(a,b,c=0,d=null){return`${(0,e.Ak)(d)}/api/chat`}}},11655:(a,b,c)=>{c.d(b,{x:()=>q});var d=c(15308),e=c(35024),f=c(75924),g=c(41004),h=c(65377),i=c(8361),j=c(14170),k=c(9024),l=c(14530),m=c(39609),n=c(74010),o=c(55511),p=c.n(o);class q extends d.H{constructor(){super("github",e.xq.github),this.knownCodexModels=new Set}buildUrl(a,b,c=0){return this.config.baseUrl}buildHeaders(a,b=!0){let c=a.copilotToken||a.accessToken;return{Authorization:`Bearer ${c}`,"Content-Type":"application/json","copilot-integration-id":"vscode-chat","editor-version":`vscode/${f.x0.VSCODE_VERSION}`,"editor-plugin-version":`copilot-chat/${f.x0.COPILOT_CHAT_VERSION}`,"user-agent":f.x0.USER_AGENT,"openai-intent":"conversation-panel","x-github-api-version":f.x0.API_VERSION,"x-request-id":p().randomUUID?.()||`${Date.now()}-${Math.random().toString(36).slice(2)}`,"x-vscode-user-agent-library-version":"electron-fetch","X-Initiator":"user","anthropic-version":"2023-06-01",Accept:b?"text/event-stream":"application/json"}}isClaudeModel(a){return/claude/i.test(a||"")}sanitizeMessagesForChatCompletions(a){if(!a?.messages)return a;let b={...a};if(a.response_format&&a.model?.includes("claude")){let b=a.response_format,c="";if("json_schema"===b.type&&b.json_schema?.schema?c="CRITICAL: You must ONLY output raw JSON. Never use markdown code blocks. Never use backticks. Never wrap JSON in triple backticks. Output ONLY the raw JSON object.":"json_object"===b.type&&(c="CRITICAL: You must ONLY output raw JSON. Never use markdown code blocks. Never use backticks."),c){let b=a.messages.findIndex(a=>"system"===a.role);b>=0?a.messages[b].content=c+"\n\n"+a.messages[b].content:a.messages.unshift({role:"system",content:c});let d=a.messages.map((a,b)=>"user"===a.role?b:-1).filter(a=>a>=0).pop();if(d>=0){let b=a.messages[d],c="string"==typeof b.content?b.content:JSON.stringify(b.content);b.content="Respond with ONLY raw JSON (no markdown, no backticks, no code blocks): "+c}}}return b.messages=a.messages.map(a=>{if(!a.content||"string"==typeof a.content)return a;if(Array.isArray(a.content)){let b=a.content.map(a=>{if("text"===a.type||"image_url"===a.type)return a;let b=a.text||a.content||JSON.stringify(a);return{type:"text",text:"string"==typeof b?b:JSON.stringify(b)}}).filter(a=>""!==a.text);return{...a,content:b.length>0?b:null}}return a}),b}requiresMaxCompletionTokens(a){return/gpt-5|o[134]-/i.test(a)}transformRequest(a,b,c,d){let e={...b};return this.requiresMaxCompletionTokens(a)&&void 0!==e.max_tokens&&(e.max_completion_tokens=e.max_tokens,delete e.max_tokens),"none"===e.reasoning_effort&&delete e.reasoning_effort,(0,n.c)("github",a,e),e}supportsResponsesEndpoint(a){let b=(a||"").toLowerCase();return!(b.includes("gemini")||b.includes("claude"))}async execute(a){let{model:b,log:c}=a;if(this.isClaudeModel(b))return c?.debug("GITHUB",`Using /v1/messages route for ${b}`),this.executeWithMessagesEndpoint(a);if(this.knownCodexModels.has(b)&&this.supportsResponsesEndpoint(b))return c?.debug("GITHUB",`Using cached /responses route for ${b}`),this.executeWithResponsesEndpoint(a);let d={...a,body:this.sanitizeMessagesForChatCompletions(a.body)},e=await super.execute({...d,proxyOptions:a.proxyOptions||null});if(e.response.status===g.gx.BAD_REQUEST&&this.supportsResponsesEndpoint(b)){let d=await e.response.clone().text();if(d.includes("not accessible via the /chat/completions endpoint")||d.includes("The requested model is not supported"))return c?.warn("GITHUB",`Model ${b} requires /responses. Switching...`),this.knownCodexModels.add(b),this.executeWithResponsesEndpoint(a)}return e}async executeWithResponsesEndpoint({model:a,body:b,stream:c,credentials:d,signal:e,log:f,proxyOptions:g=null}){let i=this.config.responsesUrl,j=this.buildHeaders(d,c),k=(0,h.openaiToOpenAIResponsesRequest)(a,b,c,d);f?.debug("GITHUB","Sending translated request to /responses");let n=await (0,m.proxyAwareFetch)(i,{method:"POST",headers:j,body:JSON.stringify(k),signal:e},g);return n.ok?{response:(0,l.L)(n,{model:a,stream:c}),url:i,headers:j,transformedBody:k}:{response:n,url:i,headers:j,transformedBody:k}}async executeWithMessagesEndpoint({model:a,body:b,stream:c,credentials:d,signal:e,log:f,proxyOptions:g=null}){let h=this.config.messagesUrl,l=this.buildHeaders(d,c),n=(0,i.GH)(j.h.OPENAI,j.h.CLAUDE,a,b,!0,d,"github"),o=n._toolNameMap;delete n._toolNameMap,f?.debug("GITHUB","Sending translated request to /v1/messages");let p=await (0,m.proxyAwareFetch)(h,{method:"POST",headers:l,body:JSON.stringify(n),signal:e},g);if(!p.ok)return{response:p,url:h,headers:l,transformedBody:n};let q=(0,i.Ws)(j.h.CLAUDE);q.model=a,o&&(q.toolNameMap=o);let r=new TextDecoder,s="",t=(a,b)=>{for(let c of b)a.enqueue(new TextEncoder().encode((0,k.v8)(c,"openai")))},u=new TransformStream({async transform(a,b){let d=(s+=r.decode(a,{stream:!0})).split("\n");for(let a of(s=d.pop()||"",d)){let d=a.trim();if(!d)continue;let e=(0,k.tV)(d);if(e){if(e.done&&!0===c){b.enqueue(new TextEncoder().encode("data: [DONE]\n\n"));continue}t(b,(0,i.Y8)(j.h.CLAUDE,j.h.OPENAI,e,q))}}},flush(a){if(s.trim()){let b=(0,k.tV)(s.trim());b&&!b.done&&t(a,(0,i.Y8)(j.h.CLAUDE,j.h.OPENAI,b,q))}}});return p.body?{response:new Response(p.body.pipeThrough(u),{status:p.status,statusText:p.statusText,headers:p.headers}),url:h,headers:l,transformedBody:n}:{response:new Response("",{status:p.status,headers:p.headers}),url:h,headers:l,transformedBody:n}}async refreshCopilotToken(a,b,c=null){try{let d=await (0,m.proxyAwareFetch)("https://api.github.com/copilot_internal/v2/token",{headers:{Authorization:`token ${a}`,"User-Agent":f.x0.USER_AGENT,"Editor-Version":`vscode/${f.x0.VSCODE_VERSION}`,"Editor-Plugin-Version":`copilot-chat/${f.x0.COPILOT_CHAT_VERSION}`,Accept:"application/json","x-github-api-version":f.x0.API_VERSION}},c);if(!d.ok){let a=await d.text();return b?.error?.("TOKEN",`Copilot token refresh failed: ${d.status} ${a}`),null}let e=await d.json();return b?.info?.("TOKEN","Copilot token refreshed"),{token:e.token,expiresAt:e.expires_at}}catch(a){return b?.error?.("TOKEN",`Copilot refresh error: ${a.message}`),null}}async refreshGitHubToken(a,b,c=null){try{let d={grant_type:"refresh_token",refresh_token:a,client_id:this.config.clientId};this.config.clientSecret&&(d.client_secret=this.config.clientSecret);let e=await (0,m.proxyAwareFetch)(f.NA.github.token,{method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded",Accept:"application/json"},body:new URLSearchParams(d)},c);if(!e.ok)return null;let g=await e.json();return b?.info?.("TOKEN","GitHub token refreshed"),{accessToken:g.access_token,refreshToken:g.refresh_token||a,expiresIn:g.expires_in}}catch(a){return b?.error?.("TOKEN",`GitHub refresh error: ${a.message}`),null}}async refreshCredentials(a,b,c=null){let d=await this.refreshCopilotToken(a.accessToken,b,c);if(!d&&a.refreshToken){let e=await this.refreshGitHubToken(a.refreshToken,b,c);if(e?.accessToken)return(d=await this.refreshCopilotToken(e.accessToken,b,c))?{...e,copilotToken:d.token,copilotTokenExpiresAt:d.expiresAt}:e}return d?{accessToken:a.accessToken,refreshToken:a.refreshToken,copilotToken:d.token,copilotTokenExpiresAt:d.expiresAt}:null}needsRefresh(a){if(!a.copilotToken)return!0;if(a.copilotTokenExpiresAt){let b=a.copilotTokenExpiresAt;if("number"==typeof b&&b<1e12?b*=1e3:"string"==typeof b&&(b=new Date(b).getTime()),b-Date.now()<3e5)return!0}return super.needsRefresh(a)}}},13511:(a,b,c)=>{c.d(b,{B:()=>L});var d=c(15308),e=c(35024),f=c(6382),g=c(94755),h=c(8590),i=c(78959),j=c(66306),k=c(41004);let l=new Set(["assistantResponseEvent","reasoningContentEvent","codeEvent","toolUseEvent","messageStopEvent","metadataEvent","MetadataEvent","contextUsageEvent","meteringEvent","metricsEvent"]),m=new TextEncoder,n=new TextDecoder,o=Uint32Array.from({length:256},(a,b)=>{let c=b;for(let a=0;a<8;a++)c=c>>>1^(1&c?0xedb88320:0);return c>>>0}),p=Object.freeze({tool:"Retry the previous response because its Kiro tool_call wrapper was malformed. If you use the wrapper tool named tool_call, its input must contain a non-empty name and an arguments field.",ellipsis:"Retry the previous response because it ended with only an ellipsis. Return the complete final answer, not only ... or ….",short_final:"Retry the previous response because its final only announced a future action. Complete the check now and return the result or a concrete blocker."}),q=/^(?:(?:(?:現在|接著|接下來|下一步)[,,::\s]*(?:我(?:只)?(?:會|要|將|再)?\s*)?|我只再)(?:補|查|確認|驗證|追(?:查|蹤)?|繼續|檢查|測試)|我(?:會|要|將)(?:再|重新)?(?:補(?:齊|查)?|抓取|查(?:詢)?|確認|驗證|追(?:查|蹤)?|繼續|檢查|測試)|(?:(?:next|now|then)\b[\s,:-]*)?(?:i(?:'ll| will| am going to| need to)|let me)\s+(?:verify|check|confirm|validate|investigate|trace|continue|follow up|test)\b)/iu,r=/^目前證據顯示[\s\S]{1,700}[。.!?;;]\s*最後補查\s+504\s+access\s+log[,,]\s*確認\s+host[//]路徑與是否為集中流量[。.!]?$/iu,s=/^(?:(?:next|now|then)\b[\s,:-]*)?(?:i(?:'ll| will| am going to| need to)|let me)\s+(?:verify|check|confirm|validate|investigate|trace|continue|follow up|test)\b/iu,t=/(?:[:;\n]|[.!?]\s+\S|\b(?:status|checksum|response|deployment)\s+(?:is|are|was|were|matches?|equals?|returned)\b)/iu,u=/^(?:(?:現在|接著|接下來|下一步)[,,::\s]*(?:我(?:只)?(?:會|要|將|再)?\s*)?|我只再|我(?:會|要|將)(?:再|重新)?)(?:補|抓取|查|確認|驗證|追|繼續|檢查|測試)/u,v=/(?:[。!?]\s*\S|(?:版本|狀態|回應|結果|部署|校驗碼)(?:是|為|等於|顯示))/u,w=/(?:請(?:你|先)|你(?:先|需要|可以|提供|確認|批准|允許)|等待(?:你|使用者)|等你|核准|同意|授權|\b(?:after|when|once)\s+you\b|\byour\s+(?:approval|confirmation|permission|input)\b|\bwait(?:ing)?\s+for\s+you\b|\bplease\s+(?:approve|confirm|provide|send)\b)/iu,x=/(?:已(?:經)?完成|完成(?:了|驗證|確認)|修復完成|確認無誤|驗證(?:完成|通過)|測試(?:均)?通過|結論|總結|\b(?:done|completed|fixed|verified|confirmed|passed|in conclusion|summary)\b|\b(?:is|are) complete\b)/iu,y=/(?:顯示|發現|因此|成功|失敗|正常|無錯誤|沒有錯誤|\b(?:found|shows?|showed|because|therefore|succeeded|failed|healthy|green|no errors?)\b)/iu;function z(a){let b=0xffffffff;for(let c of a)b=o[(b^c)&255]^b>>>8;return(0xffffffff^b)>>>0}function A(a,b){let c=Number.parseInt(process.env?.[a]||"",10);return Number.isFinite(c)&&c>0?c:b}function B(a,b){let c=new Uint8Array(b),d=0;for(let b of a)c.set(b,d),d+=b.byteLength;return c}function C(a){let b=Error(a?.message||a||"Request aborted");return b.name="AbortError",b}async function D(a,b,c,d){let e,f;if(b?.aborted)throw C(b.reason);let g=new Promise((a,b)=>{e=setTimeout(()=>b(Error(d)),c)}),h=new Promise((a,c)=>{f=()=>c(C(b.reason)),b?.addEventListener("abort",f,{once:!0})});try{return await Promise.race([a.read(),g,h])}finally{clearTimeout(e),b?.removeEventListener?.("abort",f)}}async function E(a,b,c,d){let e=a?.body?.getReader?.();if(!e)return"";let f=[],g=0;try{for(;g<c;){let{done:a,value:h}=await D(e,b,d,"Kiro retry error body stalled");if(a)break;let i=c-g,j=h.byteLength>i?h.slice(0,i):h;if(f.push(j),g+=j.byteLength,h.byteLength>i)break}}finally{await e.cancel("bounded Kiro retry error body").catch(()=>{})}return n.decode(B(f,g))}function F(a){let b=String(a||"").trim().replace(/([a-z])([A-Z])/g,"$1_$2").toLowerCase().replace(/[\s-]+/g,"_");return["endturn","end_turn","stop","stop_sequence"].includes(b)?"end_turn":["tooluse","tool_use","tool_calls"].includes(b)?"tool_use":["maxtokens","max_tokens","max_output_tokens","length"].includes(b)?"max_tokens":b||null}let G=new Set(["model_context_window_exceeded","max_tokens"]);function H(a,b){return["malformed_model_output","invalid_model_output"].includes(a)?"retryable_protocol_failure":["cancelled","pause_turn","model_context_window_exceeded"].includes(a)?"terminal_incomplete":"refusal"===a||/(?:content.*filter|guardrail|safety|policy|blocked)/u.test(a)?"terminal_refusal":"max_tokens"===a?b?"terminal_incomplete":"length":a&&!["end_turn","tool_use"].includes(a)?"unknown_failure":b||"tool_use"===a?"tool_use":a&&"end_turn"!==a?"unknown_failure":"complete"}function I(a,b){if(!b)return a;if(!a)return b;let c=a=>{let b=H(a,!1);return"terminal_refusal"===b?6:"terminal_incomplete"===b?5:"unknown_failure"===b?4:"retryable_protocol_failure"===b?3:"length"===b?2:1};return c(b)>c(a)?b:a}function J(a){return["...","…"].includes(String(a||"").trim())}function K(a,b,c){return m.encode(`data: ${JSON.stringify({error:{message:b,type:"upstream_error",code:a,...c?{details:c}:{}}})}
|
|
9
|
+
|
|
10
|
+
data: [DONE]
|
|
11
|
+
|
|
12
|
+
`)}class L extends d.H{constructor(){super("kiro",e.xq.kiro)}buildHeaders(a,b=!0){let c={...this.config.headers,"Amz-Sdk-Request":"attempt=1; max=3","Amz-Sdk-Invocation-Id":(0,g.A)(),"x-request-source":"local"},d=a?.providerSpecificData?.authMethod,e="api_key"===d,f=a?.apiKey||(e?a?.accessToken:null);return e&&f?(c.Authorization=`Bearer ${f}`,c.tokentype="API_KEY"):a.accessToken&&(c.Authorization=`Bearer ${a.accessToken}`,"external_idp"===d&&(c.TokenType="EXTERNAL_IDP")),c}getOrderedBaseUrls(a){let b=this.getBaseUrls(),c=a?.providerSpecificData?.authMethod;if("api_key"!==c&&"external_idp"!==c&&"idc"!==c)return b;let d=(a?.providerSpecificData?.region||"us-east-1").trim(),e=b.filter(a=>a.includes("amazonaws.com")).map(a=>d&&"us-east-1"!==d&&a.includes("amazonaws.com")?a.replace(/([a-z]+)\.[a-z0-9-]+\.amazonaws\.com/,`$1.${d}.amazonaws.com`):a),f=b.filter(a=>!a.includes("amazonaws.com"));return e.length>0?[...e,...f]:b}buildUrl(a,b,c=0,d=null){let e=this.getOrderedBaseUrls(d);return e[c]||e[0]||this.config.baseUrl}transformRequest(a,b,c,d){return b}async execute(a){let b=await super.execute(a);return b?.response?.ok&&this.attachIntegrityGate(b,a),b}attachIntegrityGate(a,b){let c,d=new AbortController,e=A("KIRO_TOOL_CALL_REPAIR_BUFFER_MAX_BYTES",8388608),f=A("KIRO_TOOL_CALL_REPAIR_TIMEOUT_MS",k.Z1),g=A("KIRO_TOOL_CALL_REPAIR_TTFT_TIMEOUT_MS",f),h=A("KIRO_TOOL_CALL_REPAIR_STALL_TIMEOUT_MS",f),j=b.credentials?.providerSpecificData?.kiroToolCallRepair!==!1&&"false"!==process.env.KIRO_TOOL_CALL_REPAIR,l=()=>d.abort(b.signal?.reason);b.signal?.addEventListener("abort",l,{once:!0});let n=!0,o=new ReadableStream({start:async f=>{let i=()=>{if(n)try{f.enqueue(m.encode(": kiro-validation\n\n"))}catch{n=!1}};i(),c=setInterval(i,1e4);try{let c=await this.runIntegrityRecovery(a.response,b,{signal:d.signal,maxBytes:e,ttftTimeoutMs:g,stallTimeoutMs:h,repairEnabled:j,log:b.log});if(d.signal.aborted)throw C(d.signal.reason);f.enqueue(c),f.close()}catch(a){n&&"AbortError"===a.name?f.error(a):n&&"AbortError"!==a.name&&(f.enqueue(K("kiro_integrity_gate_failed",a.message||"Kiro integrity validation failed")),f.close())}finally{n=!1,clearInterval(c),b.signal?.removeEventListener?.("abort",l)}},cancel(a){n=!1,clearInterval(c),d.abort(a||"client cancelled")}});a.response=new Response(o,{status:a.response.status,statusText:a.response.statusText,headers:{...i.pb}})}async runIntegrityRecovery(a,b,c){let e=await this.readRecoverableIntegrityAttempt(a,b.model,c,"initial");if("complete"===e.kind)return e.bytes;if("terminal_stop"===e.kind||"upstream_error"===e.kind)return this.integrityFailureSSE(e);if("invalid_tool"===e.kind&&!c.repairEnabled)return K("invalid_kiro_tool_call",e.message,e.diagnostics);let f=["ellipsis","short_final","invalid_tool"].includes(e.kind)?e.kind:null,g=f?function(a,b){let c=structuredClone(a||{}),d=p[b]||"Retry the previous incomplete Kiro response.",e=c.conversationState?.currentMessage?.userInputMessage;if(e){let a="string"==typeof e.content?e.content:"";e.content=a?`${a}
|
|
13
|
+
|
|
14
|
+
${d}`:d}return c}(b.body,"invalid_tool"===f?"tool":f):structuredClone(b.body||{}),h=await d.H.prototype.execute.call(this,{...b,body:g,signal:c.signal});if(!h?.response?.ok){let a="";try{a=await E(h?.response,c.signal,Math.min(c.maxBytes,4096),c.stallTimeoutMs)}catch(a){if("AbortError"===a.name)throw a}return K("kiro_integrity_retry_upstream_error",a||`Kiro integrity retry failed with HTTP ${h?.response?.status||502}`,{status:h?.response?.status||502})}let i=await this.readRecoverableIntegrityAttempt(h.response,b.model,c,"retry");return"complete"===i.kind?i.bytes:"terminal_stop"===i.kind||"upstream_error"===i.kind?this.integrityFailureSSE(i):K("ellipsis"===i.kind?"kiro_ellipsis_retry_failed":"short_final"===i.kind?"kiro_short_final_retry_failed":"invalid_tool"===i.kind?"kiro_tool_call_repair_retry_failed":"kiro_missing_terminal_retry_failed",`Kiro integrity validation failed after one bounded retry: ${i.message||i.kind}`,{attempts:[e.diagnostics,i.diagnostics].filter(Boolean)})}integrityFailureSSE(a){let b=a.diagnostics?.stop_disposition;return K(a.diagnostics?.terminal_provenance==="integrity_buffer_exceeded"?"kiro_integrity_buffer_exceeded":"upstream_error"===a.kind?"kiro_upstream_eventstream_error":"terminal_refusal"===b?"kiro_terminal_refusal":"terminal_incomplete"===b?"kiro_terminal_incomplete":"kiro_unknown_stop_reason",a.message||"Kiro stream ended with a terminal failure",a.diagnostics)}async readRecoverableIntegrityAttempt(a,b,c,d){try{return await this.readIntegrityAttempt(a,b,c,d)}catch(a){if("AbortError"===a.name)throw a;return{kind:"missing_terminal",message:a.message||"Kiro transport read failed",diagnostics:{attempt:d,terminal_provenance:"transport_read_error",transport_state:"upstream_error",stop_reason:null,stop_disposition:"terminal_incomplete",response_state:"no_semantic_output",event_counts:{},incomplete_frame_bytes:0}}}}async readIntegrityAttempt(a,b,c,d){let e,f=this.transformEventStreamToSSE(a,b,{maxToolBytes:Math.max(1,Math.floor(c.maxBytes/2)),log:c.log,onTerminalState:a=>{e=a}}).body.getReader(),g=[],h=0,i=!1,j={content:"",reasoning:"",hasToolCalls:!1,error:null};try{for(;;){let a=i?c.stallTimeoutMs:c.ttftTimeoutMs,b=i?"stalled":"timed out before first chunk",{done:d,value:e}=await D(f,c.signal,a,`Kiro integrity validation ${b}`);if(d)break;if(i=!0,(h+=e.byteLength)>c.maxBytes)return await f.cancel("kiro_integrity_buffer_exceeded").catch(()=>{}),{kind:"terminal_stop",message:`Kiro integrity buffer exceeded ${c.maxBytes} bytes`,diagnostics:{terminal_provenance:"integrity_buffer_exceeded"}};g.push(e);for(let a of n.decode(e).split("\n")){if(!a.startsWith("data: "))continue;let b=a.slice(6).trim();if(b&&"[DONE]"!==b)try{let a=JSON.parse(b);for(let b of(a.error&&(j.error=a.error),a.choices||[])){let a=b.delta||{};"string"==typeof a.content&&(j.content+=a.content),"string"==typeof a.reasoning_content&&(j.reasoning+=a.reasoning_content),a.tool_calls?.length&&(j.hasToolCalls=!0)}}catch{}}}}catch(a){throw await f.cancel(a.message).catch(()=>{}),a}let k={attempt:d,terminal_provenance:e?.terminal_provenance||"missing_terminal_diagnostics",transport_state:e?.transport_state||"unknown",stop_reason:e?.stop_reason||null,stop_disposition:e?.stop_disposition||"terminal_incomplete",response_state:e?.response_state||"no_semantic_output",event_counts:e?.event_counts||{},incomplete_frame_bytes:e?.incomplete_frame_bytes||0};if("retryable_protocol_failure"===k.stop_disposition)return{kind:"invalid_tool_call"===k.terminal_provenance?"invalid_tool":"retryable_stop",message:j.error?.message,diagnostics:k};if("terminal_incomplete"===k.stop_disposition||"terminal_refusal"===k.stop_disposition||"unknown_failure"===k.stop_disposition)return{kind:"upstream_eventstream_error"===k.terminal_provenance?"upstream_error":"integrity_buffer_exceeded"===k.terminal_provenance||["metadata_stop_reason","message_stop_event"].includes(k.terminal_provenance)?"terminal_stop":"missing_terminal",message:j.error?.message,diagnostics:k};if(j.error)return{kind:"missing_terminal",message:j.error.message,diagnostics:k};if(!j.hasToolCalls){let a;if(J(j.content)||!j.content.trim()&&J(j.reasoning))return{kind:"ellipsis",diagnostics:k};if(a=String(j.content||"").trim().replaceAll("’","'"),r.test(a)||!(s.test(a)&&t.test(a)||u.test(a)&&v.test(a))&&a.length>0&&a.length<=800&&q.test(a)&&!w.test(a)&&!x.test(a)&&!y.test(a))return{kind:"short_final",diagnostics:k}}return{kind:"complete",bytes:B(g,h),diagnostics:k}}transformEventStreamToSSE(a,b,c={}){let d,e,g,h=`chatcmpl-${Date.now()}`,k=Math.floor(Date.now()/1e3),o=(0,f.$D)(b).upstream,p=(0,j.nl)("kiro",o).contextWindow||2e5,q={},r={buffer:new Uint8Array(0),chunkIndex:0,toolCounter:0,tools:new Map,bufferedToolBytes:0,hasText:!1,hasReasoning:!1,hasCode:!1,hasToolCalls:!1,sawToolUse:!1,explicitStop:!1,stopReason:null,terminalProvenance:null,transportState:"consuming_response",totalContentLength:0,contextUsagePercentage:0,hasContextUsage:!1,hasMetering:!1,usage:null,toolValidationError:null,validatedFrames:0,finished:!1},s=(a={})=>({terminal_provenance:r.terminalProvenance||"clean_eventstream_eof",transport_state:r.transportState,stop_reason:r.stopReason,stop_disposition:H(r.stopReason,r.hasToolCalls),response_state:r.hasToolCalls?"valid_tool":r.hasText||r.hasReasoning||r.hasCode?"text_reasoning":r.explicitStop?"explicit_stop":"no_semantic_output",event_counts:{...q},incomplete_frame_bytes:r.buffer.byteLength,...a}),t=(a,c=null,d)=>m.encode(`data: ${JSON.stringify({id:h,object:"chat.completion.chunk",created:k,model:b,choices:[{index:0,delta:a,finish_reason:c}],...d?{usage:d}:{}})}
|
|
15
|
+
|
|
16
|
+
`),u=(a,b)=>{0===r.chunkIndex&&(b={role:"assistant",...b}),r.chunkIndex++,a.enqueue(t(b))},v=(a,b,d,e,f={})=>{r.finished=!0,r.terminalProvenance=b,r.transportState=f.transport_state||"corrupt_frame";let g=s({stop_disposition:f.stop_disposition||"terminal_incomplete",...f});c.onTerminalState?.(g),a.enqueue(K(d,e,g))},w=()=>{if(r.bufferedToolBytes<=(c.maxToolBytes||4194304))return;let a=Error("Kiro buffered tool input exceeded the integrity memory bound");throw a.code="KIRO_BUFFER_EXCEEDED",a},x=(a,b)=>{if(void 0!==b){if("string"==typeof b){if(a.inputKind&&"string"!==a.inputKind)throw Error("Kiro tool input changed fragment type");a.inputKind="string",a.inputChunks||=[],a.inputChunks.push(b),r.bufferedToolBytes+=m.encode(b).byteLength}else if(b&&"object"==typeof b&&!Array.isArray(b)){if(a.inputKind&&"object"!==a.inputKind)throw Error("Kiro tool input changed fragment type");a.inputKind="object",r.bufferedToolBytes-=a.inputBytes||0,a.inputObject=b,a.inputBytes=m.encode(JSON.stringify(b)).byteLength,r.bufferedToolBytes+=a.inputBytes}else throw Error("Kiro tool input must be a JSON object");w()}},y=()=>r.hasText||r.hasReasoning||r.hasCode,A=a=>{let b=(a=>{if(!a.inputKind)throw Error("Kiro tool call is missing input");if("object"===a.inputKind)return a.inputObject;try{let b=JSON.parse(a.inputChunks.join(""));if(!b||"object"!=typeof b||Array.isArray(b))throw Error("not an object");return b}catch(a){throw Error(`Kiro tool input must be valid object JSON (${a.message})`)}})(a);if("tool_call"===a.name){if("string"!=typeof b.name||!b.name.trim())throw Error("Invalid Kiro tool_call payload: missing nested MCP tool name");if(!Object.prototype.hasOwnProperty.call(b,"arguments"))throw Error("Invalid Kiro tool_call payload: missing nested MCP tool arguments")}return b},B=(d=!1,e="",g=!1,{split:function(a){let b=e+a;e="";let c="",f="",h=a=>{if(a){if(g){if(!(a=a.replace(/^\n+/u,"")))return;g=!1}c+=a}};for(;b;){let a=d?"</thinking>":"<thinking>",c=b.indexOf(a);if(c<0){let c=function(a,b){for(let c=Math.min(b.length-1,a.length);c>0;c--)if(a.endsWith(b.slice(0,c)))return c;return 0}(b,a),g=c?b.slice(0,b.length-c):b;d?f+=g:h(g),e=c?b.slice(b.length-c):"";break}d?(f+=b.slice(0,c),d=!1,g=!0):(h(b.slice(0,c)),d=!0),b=b.slice(c+a.length)}return{text:c,reasoning:f}},flush:function(){let a=e;if(e="",!a)return{text:"",reasoning:""};if(d)return{text:"",reasoning:a};let b=g?a.replace(/^\n+/u,""):a;return g=!1,{text:b,reasoning:""}},get inThinking(){return d}}),C=(a,b)=>{let c=a.headers[":message-type"];if("error"===c||"exception"===c)return v(b,"upstream_eventstream_error","kiro_upstream_eventstream_error",a.payload?.message||`Kiro upstream sent an EventStream ${c}`,{transport_state:"upstream_error"}),!1;let d=a.headers[":event-type"]||"",e=l.has(d)?d:"other";if(q[e]=(q[e]||0)+1,"assistantResponseEvent"===d&&"string"==typeof a.payload?.content){let{text:c}=B.split(a.payload.content);(c||!r.hasReasoning)&&(r.hasText||=c.length>0,r.totalContentLength+=c.length,u(b,{content:c}))}else if("reasoningContentEvent"===d){let c=a.payload?.reasoningContentEvent||a.payload||{},d="string"==typeof c?c:c.text||c.content||"";d&&(r.hasReasoning=!0,r.totalContentLength+=d.length,u(b,{reasoning_content:d}))}else if("codeEvent"===d&&"string"==typeof a.payload?.content)r.hasCode=!0,r.totalContentLength+=a.payload.content.length,u(b,{content:a.payload.content});else if("toolUseEvent"===d){r.sawToolUse=!0;let b=Array.isArray(a.payload)?a.payload:[a.payload];if(!b[0])throw Error("Kiro toolUseEvent is empty");for(let a of b){let b,c="string"==typeof a?.name?a.name.trim():"";if(!c)throw Error("Kiro toolUseEvent is missing a tool name");if(null==a.toolUseId)b=`call_${k}_${r.tools.size+1}`;else if("string"==typeof a.toolUseId&&a.toolUseId.trim())b=a.toolUseId;else throw Error("Kiro toolUseEvent has an invalid toolUseId");let d=r.tools.get(b);if(d){if(d.name!==c)throw Error("Kiro tool name changed between fragments")}else d={id:b,name:c},r.tools.set(b,d),r.bufferedToolBytes+=m.encode(b).byteLength+m.encode(c).byteLength+32,w();x(d,a.input)}}else if("messageStopEvent"===d){r.explicitStop=!0;let b=F(a.payload?.stopReason??a.payload?.stop_reason)||(r.sawToolUse?"tool_use":"end_turn"),c=I(r.stopReason,b);c!==r.stopReason&&(r.terminalProvenance="message_stop_event"),r.stopReason=c}else if("metadataEvent"===d||"MetadataEvent"===d){let b=a.payload?.metadataEvent||a.payload?.metadata||a.payload,c=F(b?.stopReason??b?.stop_reason);if(c){r.explicitStop=!0;let a=I(r.stopReason,c);a!==r.stopReason&&(r.terminalProvenance="metadata_stop_reason"),r.stopReason=a}}else if("contextUsageEvent"===d){let b=Number(a.payload?.contextUsagePercentage);Number.isFinite(b)&&(r.contextUsagePercentage=b,r.hasContextUsage=!0)}else if("meteringEvent"===d){r.hasMetering=!0;let b=a.payload?.meteringEvent||a.payload||{},c=Number(b.usage);Number.isFinite(c)&&(r.usage={...r.usage||{},kiro_credits:c,kiro_credit_unit:"string"==typeof b.unit?b.unit:"credit"})}else if("metricsEvent"===d){let b=a.payload?.metricsEvent||a.payload||{},c=Number(b.inputTokens)||0,d=Number(b.outputTokens)||0;if(c||d){r.usage={...r.usage||{},prompt_tokens:c,completion_tokens:d,total_tokens:c+d};let a=Number(b.cacheReadInputTokens||b.cache_read_input_tokens)||0,e=Number(b.cacheCreationInputTokens||b.cache_creation_input_tokens)||0;a&&(r.usage.cache_read_input_tokens=a),e&&(r.usage.cache_creation_input_tokens=e)}}return!0},D=(a,b)=>{let d=r.buffer.byteLength+a.byteLength;if(d>(c.maxRawBytes||0x1800000))return v(b,"corrupt_eventstream_frame","kiro_missing_terminal","Kiro EventStream buffered bytes exceed the protocol bound"),!1;if(0===r.buffer.byteLength)r.buffer=a;else{let b=new Uint8Array(d);b.set(r.buffer),b.set(a,r.buffer.byteLength),r.buffer=b}for(;r.buffer.byteLength>=12;){let a,d=new DataView(r.buffer.buffer,r.buffer.byteOffset);if(d.getUint32(8,!1)!==z(r.buffer.subarray(0,8)))return v(b,"corrupt_eventstream_frame","kiro_missing_terminal","Kiro EventStream prelude CRC mismatch"),!1;let e=d.getUint32(0,!1),f=d.getUint32(4,!1);if(e<16||e>0x1800000||f>131072||f>e-16)return v(b,"corrupt_eventstream_frame","kiro_missing_terminal","Kiro EventStream frame bounds are invalid"),!1;if(r.buffer.byteLength<e)break;let g=r.buffer.slice(0,e);r.buffer=r.buffer.slice(e);try{a=function(a){if(!(a instanceof Uint8Array)||a.byteLength<16)throw Error("AWS EventStream frame is shorter than 16 bytes");let b=new DataView(a.buffer,a.byteOffset,a.byteLength),c=b.getUint32(0,!1),d=b.getUint32(4,!1);if(c!==a.byteLength)throw Error("AWS EventStream frame length does not match its prelude");if(c>0x1800000||d>131072||d>c-16)throw Error("AWS EventStream frame bounds are invalid");if(b.getUint32(8,!1)!==z(a.subarray(0,8)))throw Error("AWS EventStream prelude CRC mismatch");if(b.getUint32(c-4,!1)!==z(a.subarray(0,c-4)))throw Error("AWS EventStream message CRC mismatch");let e=Object.create(null),f=new Set,g=12,h=12+d,i=a=>{if(g+a>h)throw Error("AWS EventStream header exceeds its declared bounds")};for(;g<h;){i(1);let c=a[g++];i(c+1);let d=n.decode(a.subarray(g,g+c));if(g+=c,f.has(d))throw Error(`AWS EventStream contains duplicate header: ${d}`);f.add(d);let h=a[g++];if(0===h||1===h)e[d]=0===h;else if(2===h)i(1),e[d]=b.getInt8(g),g+=1;else if(3===h)i(2),e[d]=b.getInt16(g,!1),g+=2;else if(4===h)i(4),e[d]=b.getInt32(g,!1),g+=4;else if(5===h||8===h)i(8),g+=8;else if(6===h||7===h){i(2);let c=b.getUint16(g,!1);g+=2,i(c);let f=a.subarray(g,g+c);e[d]=7===h?n.decode(f):f,g+=c}else if(9===h)i(16),g+=16;else throw Error(`AWS EventStream header ${d} has unknown type ${h}`)}let j=a.subarray(h,c-4);if(0===j.byteLength)return{headers:e,payload:null};let k=n.decode(j);if(!k.trim())return{headers:e,payload:null};try{return{headers:e,payload:JSON.parse(k)}}catch(a){throw Error(`AWS EventStream payload is not valid JSON (${a.message})`)}}(g)}catch(a){return v(b,"corrupt_eventstream_frame","kiro_missing_terminal",a.message),!1}r.transportState="valid_complete_frame",r.validatedFrames++;try{if(!C(a,b))return!1}catch(a){if("KIRO_BUFFER_EXCEEDED"!==a.code){r.toolValidationError||=a.message,c.log?.warn?.("KIRO",`tool fragment rejected, keeping ${r.tools.size} buffered tool(s): ${a.message}`);continue}return v(b,"integrity_buffer_exceeded","kiro_integrity_buffer_exceeded",a.message,{transport_state:r.transportState,stop_disposition:"terminal_incomplete"}),!1}}return!0};if(!a.body){let b=s({terminal_provenance:"missing_response_body",transport_state:"missing_body",stop_disposition:"terminal_incomplete"});return c.onTerminalState?.(b),new Response(K("kiro_missing_terminal","Kiro response did not include an EventStream body",b),{status:a.status,headers:{...i.pb}})}let E=a.body.getReader();return new Response(new ReadableStream({start:async a=>{try{for(;!r.finished;){let{done:b,value:c}=await E.read();if(b)break;let d=r.chunkIndex,e=r.validatedFrames;if(!D(c,a)){await E.cancel("invalid Kiro EventStream").catch(()=>{});break}r.validatedFrames>e&&r.chunkIndex===d&&a.enqueue(m.encode(": kiro-upstream\n\n"))}(a=>{if(r.finished)return;if(r.buffer.byteLength)return v(a,"incomplete_eventstream_frame","kiro_missing_terminal","Kiro EventStream ended with a truncated frame",{transport_state:"incomplete_frame"});r.transportState="clean_eof";let b=H(r.stopReason,r.sawToolUse),d=a=>"terminal_incomplete"===a&&G.has(r.stopReason)&&y();if(d(b)&&c.log?.warn?.("KIRO",`truncated after output (stop_reason=${r.stopReason}); keeping it as length`),!d(b)&&["retryable_protocol_failure","terminal_incomplete","terminal_refusal","unknown_failure"].includes(b)){let c="retryable_protocol_failure"===b?"kiro_retryable_protocol_failure":"terminal_refusal"===b?"kiro_terminal_refusal":"terminal_incomplete"===b?"kiro_terminal_incomplete":"kiro_unknown_stop_reason";v(a,r.terminalProvenance||"metadata_stop_reason",c,`Kiro ended with non-success stop reason: ${r.stopReason}`,{transport_state:r.transportState,stop_disposition:b});return}try{for(let b of r.tools.values()){let d;try{d=A(b)}catch(a){r.toolValidationError||=a.message,c.log?.warn?.("KIRO",`dropping unusable tool call ${b.id} (${b.name}): ${a.message}`);continue}let e=r.toolCounter++;u(a,{tool_calls:[{index:e,id:b.id,type:"function",function:{name:b.name,arguments:""}}]});let f=JSON.stringify(d);u(a,{tool_calls:[{index:e,function:{arguments:f}}]}),r.totalContentLength+=b.name.length+f.length,r.hasToolCalls=!0}if(r.tools.clear(),r.bufferedToolBytes=0,"tool_use"===r.stopReason&&!r.hasToolCalls&&!y())throw Error("Kiro tool_use stop reason did not include a complete tool call")}catch(b){v(a,"invalid_tool_call","invalid_kiro_tool_call",b.message,{transport_state:r.transportState,stop_disposition:"retryable_protocol_failure"});return}if(r.toolValidationError&&!r.hasToolCalls&&!y())return v(a,"invalid_tool_call","invalid_kiro_tool_call",r.toolValidationError,{transport_state:r.transportState,stop_disposition:"retryable_protocol_failure"});if(!(r.hasText||r.hasReasoning||r.hasCode||r.hasToolCalls)&&!r.explicitStop)return v(a,"empty_response_eof","kiro_missing_terminal","Kiro EventStream ended without model output",{transport_state:r.transportState});let e=H(r.stopReason,r.hasToolCalls),f=d(e);if(!f&&["retryable_protocol_failure","terminal_incomplete","terminal_refusal","unknown_failure"].includes(e)){let b="retryable_protocol_failure"===e?"kiro_retryable_protocol_failure":"terminal_refusal"===e?"kiro_terminal_refusal":"terminal_incomplete"===e?"kiro_terminal_incomplete":"kiro_unknown_stop_reason";v(a,r.terminalProvenance||"metadata_stop_reason",b,`Kiro ended with non-success stop reason: ${r.stopReason}`,{transport_state:r.transportState,stop_disposition:e});return}if(r.hasMetering&&r.hasContextUsage&&!r.usage?.total_tokens){let a=r.totalContentLength?Math.max(1,Math.floor(r.totalContentLength/4)):0,b=Math.floor(r.contextUsagePercentage*p/100);r.usage={...r.usage||{},prompt_tokens:b,completion_tokens:a,total_tokens:b+a}}let g=B.flush();g.text&&(r.hasText=!0,r.totalContentLength+=g.text.length,u(a,{content:g.text}));let h=f?"length":r.hasToolCalls?"tool_calls":"length"===e?"length":"stop";a.enqueue(t({},h,r.usage)),a.enqueue(m.encode(i.$U)),r.finished=!0,c.onTerminalState?.(s({terminal_provenance:r.terminalProvenance||"clean_eventstream_eof",transport_state:r.transportState,stop_disposition:f?"length":e}))})(a),a.close()}catch(b){r.finished||v(a,"upstream_read_error","kiro_missing_terminal",b.message||"Kiro EventStream read failed",{transport_state:"upstream_error"}),a.close()}},cancel:a=>E.cancel(a)}),{status:a.status,statusText:a.statusText,headers:{...i.pb}})}async refreshCredentials(a,b,c=null){if(!a.refreshToken)return null;try{return await (0,h.Ql)(a.refreshToken,a.providerSpecificData,b,c)}catch(a){return b?.error?.("TOKEN",`Kiro refresh error: ${a.message}`),null}}}},16046:(a,b,c)=>{c.d(b,{Yh:()=>o});var d=c(15308),e=c(35024),f=c(39609),g=c(55511),h=c(21820),i=c.n(h);let j="abcdefghijklmnopqrstuvwxyz0123456789",k="You are MiMoCode, an interactive CLI tool that helps users with software engineering tasks.",l=null,m=0;async function n(a=null){if(l&&Date.now()<m-3e5)return l;let b=await (0,f.proxyAwareFetch)("https://api.xiaomimimo.com/api/free-ai/bootstrap",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({client:function(){let a="unknown-user";try{a=i().userInfo().username}catch{}let b=(i().cpus()[0]?.model||"unknown-cpu").trim(),c=`${i().hostname()}|${i().platform()}|${i().arch()}|${b}|${a}`;return(0,g.createHash)("sha256").update(c).digest("hex")}()})},a);if(!b.ok)throw Error(`MiMo bootstrap failed: ${b.status}`);let c=await b.json();if(!c.jwt)throw Error("MiMo bootstrap returned no JWT");return l=c.jwt,m=function(a){try{let b=JSON.parse(Buffer.from(a.split(".")[1],"base64").toString());if(b.exp)return 1e3*b.exp}catch{}return Date.now()+3e6}(c.jwt),l}class o extends d.H{constructor(){super("mimo-free",e.xq["mimo-free"]),this.sessionId=function(){let a="ses_";for(let b=0;b<24;b++)a+=j[Math.floor(Math.random()*j.length)];return a}()}buildUrl(){return"https://api.xiaomimimo.com/api/free-ai/openai/chat"}buildHeaders(a,b=!0){return{"Content-Type":"application/json","X-Mimo-Source":"mimocode-cli-free","x-session-affinity":this.sessionId,Accept:b?"text/event-stream":"application/json"}}transformRequest(a,b){let c;return{...!Array.isArray(c=b?.messages)||c.some(a=>a?.role==="system"&&"string"==typeof a.content&&a.content.includes(k))?b:{...b,messages:[{role:"system",content:k},...c]},model:"mimo-auto"}}async execute({model:a,body:b,stream:c,credentials:d,signal:e,log:g,proxyOptions:h=null}){let i;try{i=await n(h)}catch(a){throw g?.error?.("AUTH",`MiMo bootstrap failed: ${a.message}`),a}let j=this.buildUrl(),k=this.transformRequest(a,b),o={...this.buildHeaders(d,c),Authorization:`Bearer ${i}`},p=JSON.stringify(k);g?.debug?.("FETCH",`MIMO-FREE → ${j} | body=${p.length}B`);let q=await (0,f.proxyAwareFetch)(j,{method:"POST",headers:o,body:p,signal:e},h);return 401===q.status||403===q.status?(g?.debug?.("AUTH",`MiMo auth failed (${q.status}), re-bootstrapping...`),l=null,m=0,i=await n(h),o.Authorization=`Bearer ${i}`,{response:await (0,f.proxyAwareFetch)(j,{method:"POST",headers:o,body:p,signal:e},h),url:j,headers:o,transformedBody:k}):{response:q,url:j,headers:o,transformedBody:k}}}},19946:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.d(b,{o:()=>u});var e=c(15308),f=c(35024),g=c(41004),h=c(55456),i=c(81756),j=c(73483),k=c(14170),l=c(39609),m=c(74075),n=c.n(m);let a=null;if(!("u">typeof caches&&"object"==typeof caches||"u">typeof EdgeRuntime))try{a=await Promise.resolve().then(c.t.bind(c,73496,23))}catch{}let s="1"===process.env.CURSOR_STREAM_DEBUG,t=(...a)=>{s&&console.log(...a)};function o(a){let b=String(a||"").split("/").pop();return/^composer(?:-|$)/i.test(b)}function p(a){if(!a)return"";let b="</think>",c=a.lastIndexOf(b);return c<0?"":a.slice(c+b.length).trimStart()}function q(a,b){if(a.length>10&&123===a[0]&&34===a[1])try{if(a.toString("utf-8").startsWith('{"error"'))return t("[DECOMPRESS] Detected JSON error, skipping decompression"),a}catch{}if(1===b||2===b||3===b)try{return n().gunzipSync(a)}catch(c){try{return n().inflateSync(a)}catch(d){try{return n().inflateRawSync(a)}catch(e){t(`[DECOMPRESS ERROR] flags=${b}, payloadSize=${a.length}, gzip=${c.message}, deflate=${d.message}, raw=${e.message}`),t("[DECOMPRESS ERROR] First 50 bytes (hex):",a.slice(0,50).toString("hex"))}}}return a}function r(a){let b=a?.error?.details?.[0]?.debug?.details?.title||a?.error?.details?.[0]?.debug?.details?.detail||a?.error?.message||"API Error",c=a?.error?.code==="resource_exhausted";return new Response(JSON.stringify({error:{message:b,type:c?"rate_limit_error":"api_error",code:a?.error?.details?.[0]?.debug?.error||"unknown"}}),{status:c?g.gx.RATE_LIMITED:g.gx.BAD_REQUEST,headers:{"Content-Type":"application/json"}})}class u extends e.H{constructor(){super("cursor",f.xq.cursor)}buildUrl(){return`${this.config.baseUrl}${this.config.chatPath}`}buildHeaders(a){let b=a.accessToken,c=a.providerSpecificData?.machineId,d=a.providerSpecificData?.ghostMode!==!1;if(!c)throw Error("Machine ID is required for Cursor API");return(0,i.JA)(b,c,d)}transformRequest(a,b,c,d){let e=b.messages||[],f=b.tools||[],g=b.reasoning_effort||null,i=d?.rawHeaders?.["user-agent"]||"",j=i.includes("claude-cli")||i.includes("claude-code")||i.includes("Claude Code");return(0,h.yI)(e,a,f,g,j)}async makeFetchRequest(a,b,c,d,e=null){let f=await (0,l.proxyAwareFetch)(a,{method:"POST",headers:b,body:c,signal:d},e);return{status:f.status,headers:Object.fromEntries(f.headers.entries()),body:Buffer.from(await f.arrayBuffer())}}makeHttp2Request(b,c,d,e){if(!a)throw Error("http2 module not available");return new Promise((f,g)=>{let h=new URL(b),i=a.connect(`https://${h.host}`),j=[],k={},l=!1,m=a=>(...b)=>{l||(l=!0,clearTimeout(n),i.close(),a(...b))},n=setTimeout(m(()=>{g(Error("HTTP/2 request timed out"))}),6e4);i.on("error",m(g));let o=i.request({":method":"POST",":path":h.pathname,":authority":h.host,":scheme":"https",...c});if(o.on("response",a=>{k=a}),o.on("data",a=>{j.push(a)}),o.on("end",m(()=>{f({status:k[":status"],headers:k,body:Buffer.concat(j)})})),o.on("error",m(g)),e){let a=m(()=>g(Error("Request aborted")));e.addEventListener("abort",a,{once:!0})}o.write(d),o.end()})}async execute({model:b,body:c,stream:d,credentials:e,signal:f,log:h,proxyOptions:i=null}){let j=this.buildUrl(),k=this.buildHeaders(e),m=this.transformRequest(b,c,d,e);try{let e=i?.enabled===!0||i?.connectionProxyEnabled===!0||!!i?.vercelRelayUrl||(0,l.d)(i),g=a&&!e?await this.makeHttp2Request(j,k,m,f):await this.makeFetchRequest(j,k,m,f,i);if(200!==g.status){let a=g.body?.toString()||"Unknown error";return{response:new Response(JSON.stringify({error:{message:`[${g.status}]: ${a}`,type:"invalid_request_error",code:""}}),{status:g.status,headers:{"Content-Type":"application/json"}}),url:j,headers:k,transformedBody:c}}return{response:!1!==d?this.transformProtobufToSSE(g.body,b,c):this.transformProtobufToJSON(g.body,b,c),url:j,headers:k,transformedBody:c}}catch(a){return{response:new Response(JSON.stringify({error:{message:a.message,type:"connection_error",code:""}}),{status:g.gx.SERVER_ERROR,headers:{"Content-Type":"application/json"}}),url:j,headers:k,transformedBody:c}}}transformProtobufToJSON(a,b,c){let d=`chatcmpl-cursor-${Date.now()}`,e=Math.floor(Date.now()/1e3),f=0,i="",l="",m=[],n=new Map,s=new Set,u=0;for(t(`[CURSOR BUFFER] Total length: ${a.length} bytes`);f<a.length;){if(f+5>a.length){t(`[CURSOR BUFFER] Reached end, offset=${f}, remaining=${a.length-f}`);break}let b=a[f],c=a.readUInt32BE(f+1);if(t(`[CURSOR BUFFER] Frame ${u+1}: flags=0x${b.toString(16).padStart(2,"0")}, length=${c}`),f+5+c>a.length){t(`[CURSOR BUFFER] Incomplete frame, offset=${f}, length=${c}, buffer.length=${a.length}`);break}let d=a.slice(f+5,f+5+c);if(f+=5+c,u++,!(d=q(d,b))){t(`[CURSOR BUFFER] Frame ${u}: decompression failed, skipping`);continue}if(d.length>0&&123===d[0])try{let a=d.toString("utf-8");if(a.includes('"error"')){let b=i||n.size>0;if(t(`[CURSOR BUFFER] Error frame (hasContent=${b}): ${a.slice(0,500)}`),b)break;return r(JSON.parse(a))}}catch{}let e=(0,h.CP)(new Uint8Array(d));if(t(`[CURSOR DECODED] Frame ${u}:`,e),e.error){let a=i||n.size>0;if(t(`[CURSOR BUFFER] Decoded error (hasContent=${a}): ${e.error}`),a)break;return new Response(JSON.stringify({error:{message:e.error,type:"rate_limit_error",code:"rate_limited"}}),{status:g.gx.RATE_LIMITED,headers:{"Content-Type":"application/json"}})}if(e.toolCall){let a=e.toolCall;if(n.has(a.id)){let b=n.get(a.id);b.function.arguments+=a.function.arguments,b.isLast=a.isLast}else n.set(a.id,{...a});if(a.isLast){let b=n.get(a.id);s.add(a.id),m.push({id:b.id,type:b.type,function:{name:b.function.name,arguments:b.function.arguments}})}}e.text&&(i+=e.text),e.thinking&&(l+=e.thinking)}let v=o(b)?p(l):"",w=i||v;for(let[a,b]of(t(`[CURSOR BUFFER] Parsed ${u} frames, toolCallsMap size: ${n.size}, finalized toolCalls: ${m.length}`),n.entries()))s.has(a)||(t(`[CURSOR BUFFER] Finalizing incomplete tool call: ${a}, isLast=${b.isLast}`),m.push({id:b.id,type:b.type,function:{name:b.function.name,arguments:b.function.arguments}}));t(`[CURSOR BUFFER] Final toolCalls count: ${m.length}`);let x={role:"assistant",content:w||null};m.length>0&&(x.tool_calls=m);let y=(0,j.OF)(c,w.length,k.h.OPENAI),z={id:d,object:"chat.completion",created:e,model:b,choices:[{index:0,message:x,finish_reason:m.length>0?"tool_calls":"stop"}],usage:y};return new Response(JSON.stringify(z),{status:200,headers:{"Content-Type":"application/json"}})}transformProtobufToSSE(a,b,c){let d=`chatcmpl-cursor-${Date.now()}`,e=Math.floor(Date.now()/1e3),f=[],i=0,l="",m="",n=0,s=[],u=new Map,v=new Set,w=new Set,x=0;for(t(`[CURSOR BUFFER SSE] Total length: ${a.length} bytes`);i<a.length;){if(i+5>a.length){t(`[CURSOR BUFFER SSE] Reached end, offset=${i}, remaining=${a.length-i}`);break}let c=a[i],j=a.readUInt32BE(i+1);if(t(`[CURSOR BUFFER SSE] Frame ${x+1}: flags=0x${c.toString(16).padStart(2,"0")}, length=${j}`),i+5+j>a.length){t(`[CURSOR BUFFER SSE] Incomplete frame, offset=${i}, length=${j}, buffer.length=${a.length}`);break}let k=a.slice(i+5,i+5+j);if(i+=5+j,x++,!(k=q(k,c))){t(`[CURSOR BUFFER SSE] Frame ${x}: decompression failed, skipping`);continue}if(123===k[0])try{let a=k.toString("utf-8");if(a.includes('"error"')){let b=f.length>0||l||u.size>0;if(t(`[CURSOR BUFFER SSE] Error frame (hasContent=${b}): ${a.slice(0,500)}`),b)break;return r(JSON.parse(a))}}catch{}let y=(0,h.CP)(new Uint8Array(k));if(t(`[CURSOR DECODED SSE] Frame ${x}:`,y),y.error){let a=f.length>0||l||u.size>0;if(t(`[CURSOR BUFFER SSE] Decoded error (hasContent=${a}): ${y.error}`),a)break;return new Response(JSON.stringify({error:{message:y.error,type:"rate_limit_error",code:"rate_limited"}}),{status:g.gx.RATE_LIMITED,headers:{"Content-Type":"application/json"}})}if(y.toolCall){let a=y.toolCall;if(0===f.length&&f.push(`data: ${JSON.stringify({id:d,object:"chat.completion.chunk",created:e,model:b,choices:[{index:0,delta:{role:"assistant",content:""},finish_reason:null}]})}
|
|
7
17
|
|
|
8
18
|
`),u.has(a.id)){let c=u.get(a.id);c.function.arguments.length,c.function.arguments+=a.function.arguments,c.isLast=a.isLast,a.function.arguments&&(w.add(a.id),f.push(`data: ${JSON.stringify({id:d,object:"chat.completion.chunk",created:e,model:b,choices:[{index:0,delta:{tool_calls:[{index:c.index,id:a.id,type:"function",function:{name:a.function.name,arguments:a.function.arguments}}]},finish_reason:null}]})}
|
|
9
19
|
|
|
@@ -19,7 +29,14 @@
|
|
|
19
29
|
|
|
20
30
|
`);let y=(0,j.OF)(c,l.length,k.h.OPENAI);return f.push(`data: ${JSON.stringify({id:d,object:"chat.completion.chunk",created:e,model:b,choices:[{index:0,delta:{},finish_reason:s.length>0?"tool_calls":"stop"}],usage:y})}
|
|
21
31
|
|
|
22
|
-
`),f.push("data: [DONE]\n\n"),new Response(f.join(""),{status:200,headers:{"Content-Type":"text/event-stream","Cache-Control":"no-cache",Connection:"keep-alive"}})}async refreshCredentials(){return null}}d()}catch(a){d(a)}},1)},19969:(a,b,c)=>{c.d(b,{T:()=>C});var d=c(55511),e=c(15308);let f=`You are Codex, based on GPT-5. You are running as a coding agent in the Codex CLI on a user's computer.
|
|
32
|
+
`),f.push("data: [DONE]\n\n"),new Response(f.join(""),{status:200,headers:{"Content-Type":"text/event-stream","Cache-Control":"no-cache",Connection:"keep-alive"}})}async refreshCredentials(){return null}}d()}catch(a){d(a)}},1)},22376:(a,b,c)=>{c.d(b,{hG:()=>B});var d=c(77598),e=c.n(d),f=c(15308),g=c(35024),h=c(93943),i=c(42654),j=c(44404),k=c(90737),l=c(41004),m=c(80662),n=c(54603);let o=/^(rs|fc|resp|msg)_/,p=new Set(["web_search","x_search","web_search_preview","file_search","image_generation","code_interpreter","mcp","local_shell"]),q=new Set(["model","input","instructions","tools","tool_choice","stream","store","reasoning","include","temperature","top_p","max_output_tokens","parallel_tool_calls","text","metadata","prompt_cache_key"]),r=["low","medium","high","xhigh"],s=/^(?:rs|msg|fc)_[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/i,t={type:"object",properties:{input:{type:"string"}},required:["input"]},u=new Map,v=new WeakMap;function w(a){let b="string"==typeof a?a.trim().toLowerCase():"";return"max"===b?"xhigh":r.includes(b)?b:"high"}function x(a){let b=e().createHash("sha256").update(String(a)).digest("hex"),c="4"+b.slice(13,16),d=(3&parseInt(b[16],16)|8).toString(16)+b.slice(17,20);return`${b.slice(0,8)}-${b.slice(8,12)}-${c}-${d}-${b.slice(20,32)}`}function y(a){return"string"==typeof a?a:void 0===a?"":JSON.stringify(a)}function z(a){return"string"==typeof a&&s.test(a)}function A(a){if(!a||"object"!=typeof a||Array.isArray(a))return a;let{internal_chat_message_metadata_passthrough:b,...c}=a;if("reasoning"===a.type)return z(a.id)&&"string"==typeof a.encrypted_content?c:null;if("custom_tool_call"===a.type){let b=a.call_id||a.id,c="string"==typeof a.name?a.name.trim():"";return b&&c?{type:"function_call",call_id:b,name:c,arguments:JSON.stringify({input:y(a.input??a.arguments)})}:null}if("custom_tool_call_output"===a.type||"function_call_output"===a.type){let b=a.call_id||a.id;return b?{type:"function_call_output",call_id:b,output:y(a.output)}:null}if("function_call"===a.type){let b=a.call_id||a.id,c="string"==typeof a.name?a.name.trim():"";return b&&c?{type:"function_call",...z(a.id)?{id:a.id}:{},call_id:b,name:c,arguments:"string"==typeof a.arguments?a.arguments:JSON.stringify(a.arguments??{}),..."string"==typeof a.status?{status:a.status}:{}}:null}return c}class B extends f.H{constructor(){super("grok-cli",g.xq["grok-cli"]),this._currentSessionId=null,this._currentReqId=null,this._currentTurnIdx=1,this._agentId=null}buildUrl(){return this.config.baseUrl}async refreshCredentials(a,b,c=null){return a?.refreshToken?(0,h.Vq)("grok-cli",a,b,c):null}needsRefresh(a){return(0,h.fp)("grok-cli",a)}buildHeaders(a,b=!0){let c=super.buildHeaders(a,b);for(let[a,b]of Object.entries(this.config.headers||{}))null!=b&&void 0===c[a]&&(c[a]=b);c["x-grok-client-identifier"]=this.config.clientIdentifier||c["x-grok-client-identifier"]||k.rK,c["x-grok-client-version"]=this.config.clientVersion||c["x-grok-client-version"]||k.uG;let d=this._currentSessionId||a?.connectionId||e().randomUUID(),f=this._currentReqId||e().randomUUID();c["x-grok-session-id"]=d,c["x-grok-conv-id"]=d,c["x-grok-req-id"]=f,c["x-grok-turn-idx"]=String(this._currentTurnIdx||1),this._agentId&&(c["x-grok-agent-id"]=this._agentId),this._currentModel&&(c["x-grok-model-override"]=this._currentModel);let g=a?.providerSpecificData||{},h=g.email||a?.email,i=g.userId||a?.userId||a?.providerUserId;return h&&(c["x-email"]=h),i&&(c["x-userid"]=i),c}parseError(a,b){if(402===a.status&&b)try{let a=JSON.parse(b),c=a?.code||"",d=a?.error||a?.message||b;return{status:402,message:"string"==typeof d?d:b,code:"string"==typeof c?c:void 0}}catch{}return super.parseError(a,b)}transformRequest(a,b,c,d){this._currentSessionId=function(a,b){let c=b?.prompt_cache_key||b?.session_id||b?.conversation_id||b?.metadata?.session_id||b?.metadata?.conversation_id;if("string"==typeof c&&c.trim())return x(c.trim());let d=a?.providerSpecificData?.workspaceId;if("string"==typeof d&&d.trim())return x(d.trim());let e=a?.connectionId||a?.id;return e?x(`grok-cli:${e}`):x((0,m.RF)(void 0))}(d,b),this._currentReqId=e().randomUUID(),this._agentId=d?.providerSpecificData?.deviceId||d?.providerSpecificData?.agentId||null;let f=(0,i.m)(b.input);f&&(b.input=f),(!b.input||Array.isArray(b.input)&&0===b.input.length)&&(Array.isArray(b.messages)&&b.messages.length>0?(b.input=b.messages.map(a=>({type:"message",role:a.role||"user",content:"string"==typeof a.content?a.content:JSON.stringify(a.content??"")})),delete b.messages):b.input=[{type:"message",role:"user",content:"..."}]),function(a){if(!Array.isArray(a?.input))return;let b=a.input.map(A).filter(Boolean),c=new Set(b.filter(a=>a?.type==="function_call"&&a.call_id).map(a=>a.call_id));a.input=b.filter(a=>a?.type!=="function_call_output"||c.has(a.call_id))}(b),Array.isArray(b.input)&&(b.input=b.input.filter(a=>{if("string"==typeof a&&o.test(a))return!1;if(a&&"object"==typeof a&&!Array.isArray(a)){if("item_reference"===a.type)return!1;"string"==typeof a.id&&o.test(a.id)&&!z(a.id)&&delete a.id}return!0})),function(a){if(!Array.isArray(a.tools)||0===a.tools.length){delete a.tools,delete a.tool_choice;return}let b=new Set,c=new Set;if(a.tools=a.tools.filter(a=>{if(!a||"object"!=typeof a||Array.isArray(a))return!1;let d="string"==typeof a.type?a.type:"";if("function"!==d){if(p.has(d))return c.add(d),!0;if(!d&&a.function);else if(d&&"string"!=typeof a.name)return!1}if(!("function"===d||""===d||a.function||"string"==typeof a.name)||p.has(d))return p.has(d);let e=a.function&&"object"==typeof a.function&&!Array.isArray(a.function)?a.function:null,f=("string"==typeof a.name?a.name:"string"==typeof e?.name?e.name:"").trim();if(!f)return!1;let g="string"==typeof a.description?a.description:"string"==typeof e?.description?e.description:"",h="custom"===d?t:a.parameters&&"object"==typeof a.parameters&&!Array.isArray(a.parameters)?a.parameters:e?.parameters&&"object"==typeof e.parameters&&!Array.isArray(e.parameters)?e.parameters:{type:"object",properties:{}};for(let b of("object"!==h.type||h.properties||(h={...h,properties:{}}),Object.keys(a)))delete a[b];return a.type="function",a.name=f.slice(0,128),g&&(a.description=g),a.parameters=h,b.add(a.name),!0}),0===a.tools.length){delete a.tools,delete a.tool_choice;return}if(a.tool_choice&&"object"==typeof a.tool_choice&&!Array.isArray(a.tool_choice)){let d="string"==typeof a.tool_choice.type?a.tool_choice.type:"";if("function"===d||"custom"===d){let c=a.tool_choice.name??a.tool_choice.function?.name,d="string"==typeof c?c.trim().slice(0,128):"";d&&b.has(d)?a.tool_choice={type:"function",name:d}:delete a.tool_choice}else c.has(d)||delete a.tool_choice}}(b),this._currentTurnIdx=function(a,b,c=null){let d=function(a){if(!Array.isArray(a))return 1;let b=0;for(let c of a){if(!c||"object"!=typeof c||Array.isArray(c))continue;let a="string"==typeof c.type?c.type:"";"user"!==c.role||a&&"message"!==a||(b+=1)}return Math.max(1,b)}(b);if(!a)return d;if(c&&v.has(c))return v.get(c);let e=Date.now(),f=u.get(a),g=f&&e-f.lastUsed<=l.v1.sessionTtlMs?f.turn:0;f&&u.delete(a);let h=g>0?Math.max(d,g+ +!!c):d;for(;u.size>=5e3;)u.delete(u.keys().next().value);return u.set(a,{turn:h,lastUsed:e}),c&&v.set(c,h),h}(this._currentSessionId,b.input,b),b.stream=!0,b.store=!1;let g=function(a){if(!a||"string"!=typeof a)return null;for(let b of r)if(a.endsWith(`-${b}`))return b;return null}(b.model||a),h=b.model||a;g&&(h=h.replace(RegExp(`-${g}$`),"")),(h=(0,j.kt)("gcli",h)||h)===(b.model||a)&&(h=(0,j.kt)("grok-cli",h)||h),b.model=h,this._currentModel=h;let n=(0,k.Au)(h);if(b.reasoning&&"object"==typeof b.reasoning?(n?b.reasoning.effort=w(b.reasoning.effort||b.reasoning_effort||g):delete b.reasoning.effort,b.reasoning.summary||(b.reasoning.summary="concise")):(b.reasoning={summary:"concise"},n&&(b.reasoning.effort=w(b.reasoning_effort||g))),delete b.reasoning_effort,b.reasoning&&"none"!==b.reasoning.effort){let a=Array.isArray(b.include)?b.include:[];a.includes("reasoning.encrypted_content")||a.push("reasoning.encrypted_content"),b.include=a}if(void 0===b.max_output_tokens){let a=[b.max_completion_tokens,b.max_tokens].find(a=>Number.isFinite(a)&&a>0);void 0!==a&&(b.max_output_tokens=a)}for(let a of(delete b.messages,delete b.max_tokens,delete b.max_completion_tokens,delete b.n,delete b.seed,delete b.logprobs,delete b.top_logprobs,delete b.frequency_penalty,delete b.presence_penalty,delete b.logit_bias,delete b.user,delete b.stream_options,delete b.prompt_cache_retention,delete b.safety_identifier,delete b.previous_response_id,Object.keys(b)))q.has(a)||delete b[a];return b}async execute(a){if(this._agentId||a.credentials?.providerSpecificData?.deviceId)a.credentials?.providerSpecificData?.deviceId&&(this._agentId=a.credentials.providerSpecificData.deviceId);else try{let a=await (0,n.Xj)("grok-cli-agent");this._agentId=[a.slice(0,8),a.slice(8,12),"5"+a.slice(13,16),"a"+a.slice(17,20),a.slice(0,12).padEnd(12,"0")].join("-")}catch{this._agentId=e().randomUUID()}return super.execute(a)}}},23013:(a,b,c)=>{c.d(b,{Ay:()=>y});var d=c(15308),e=c(35024);let f=e.xq["perplexity-web"].baseUrl,g="2.18",h={"pplx-auto":["concise","pplx_pro"],"pplx-sonar":["copilot","experimental"],"pplx-gpt":["copilot","gpt54"],"pplx-gemini":["copilot","gemini31pro_high"],"pplx-sonnet":["copilot","claude46sonnet"],"pplx-opus":["copilot","claude46opus"],"pplx-nemotron":["copilot","nv_nemotron_3_super"]},i={"pplx-gpt":"gpt54_thinking","pplx-sonnet":"claude46sonnetthinking","pplx-opus":"claude46opusthinking"},j=/\[\d+\]/g,k=/<grok:[^>]*>.*?<\/grok:[^>]*>/gs,l=/<grok:[^>]*\/>/g,m=/<[?]xml[^?]*[?]>/g,n=/<\/?response\b[^>]*>/gi,o=/ {2,}/g,p=/\n{3,}/g,q=new Map;function r(a){let b=a.map(a=>`${a.role}:${a.content}`).join("\n"),c=0x811c9dc5;for(let a=0;a<b.length;a++)c^=b.charCodeAt(a),c=0x1000193*c>>>0;return c.toString(16).padStart(8,"0")}function s(a,b,c,d){if(!d)return;let e=r([...a,{role:"user",content:b},{role:"assistant",content:c}]);if(q.set(e,{backendUuid:d,ts:Date.now()}),q.size>200){let a=null,b=1/0;for(let[c,d]of q)d.ts<b&&(b=d.ts,a=c);a&&q.delete(a)}}function t(a,b=!0){let c=a;return c=(c=(c=(c=(c=c.replace(m,"")).replace(j,"")).replace(k,"")).replace(l,"")).replace(n,""),b&&(c=(c=(c=c.replace(o," ")).replace(p,"\n\n")).trim()),c}async function*u(a,b){let c=a.getReader(),d=new TextDecoder,e="",f=[];function g(){if(0===f.length)return null;let a=f.join("\n");f=[];let b=a.trim();if(!b||"[DONE]"===b)return"done";try{return JSON.parse(b)}catch{return null}}try{for(;;){if(b?.aborted)return;let{value:a,done:h}=await c.read();if(h)break;for(e+=d.decode(a,{stream:!0});;){let a=e.indexOf("\n");if(a<0)break;let b=e.slice(0,a);e=e.slice(a+1);let c=b.endsWith("\r")?b.slice(0,-1):b;if(""===c){let a=g();if("done"===a)return;a&&(yield a);continue}if(c.startsWith("data:")&&f.push(c.slice(5).trimStart()),"event: end_of_stream"===c)return}}(e+=d.decode()).trim().startsWith("data:")&&f.push(e.trim().slice(5).trimStart());let a=g();a&&"done"!==a&&(yield a)}finally{c.releaseLock()}}async function*v(a,b){let c="",d=null,e=0,f=new Set;for await(let g of u(a,b)){if(g.error_code||g.error_message)return void(yield{error:g.error_message||`Perplexity error: ${g.error_code}`,done:!0});g.backend_uuid&&(d=g.backend_uuid);let a=g.blocks??[];for(let b of a){let a=b.intended_usage??"";if("pro_search_steps"===a&&b.plan_block?.steps){for(let a of b.plan_block.steps)if("SEARCH_WEB"===a.step_type)for(let b of a.search_web_content?.queries??[]){let a=b.query??"";a&&!f.has(a)&&(f.add(a),yield{thinking:`Searching: ${a}`,backendUuid:d??void 0})}else if("READ_RESULTS"===a.step_type)for(let b of(a.read_results_content?.urls??[]).slice(0,3))b&&!f.has(b)&&(f.add(b),yield{thinking:`Reading: ${b}`,backendUuid:d??void 0})}if("plan"===a&&b.plan_block?.goals)for(let a of b.plan_block.goals){let b=a.description??"";b&&!f.has(b)&&(f.add(b),yield{thinking:b,backendUuid:d??void 0})}if(!a.includes("markdown"))continue;let g=b.markdown_block;if(!g)continue;let h=g.chunks??[];if(0!==h.length)if("DONE"===g.progress)c=h.join("");else{let a=c+h.join("");if(a.length>e){let b=a.slice(e);c=a,e=a.length,yield{delta:b,answer:c,backendUuid:d??void 0}}}}if(0===a.length&&g.text){let a=g.text.trim();if(a.length>e){let b=a.slice(e);c=a,e=a.length,yield{delta:b,answer:c,backendUuid:d??void 0}}}if(g.final||"COMPLETED"===g.status)break}yield{delta:"",answer:c,backendUuid:d??void 0,done:!0}}function w(a){return`data: ${JSON.stringify(a)}
|
|
33
|
+
|
|
34
|
+
`}async function x(a,b,c,d,e,f,g){let h="",i=null,j=[];for await(let b of v(a,g)){if(b.backendUuid&&(i=b.backendUuid),b.error)return new Response(JSON.stringify({error:{message:b.error,type:"upstream_error",code:"PPLX_ERROR"}}),{status:502,headers:{"Content-Type":"application/json"}});if(b.thinking){j.push(b.thinking);continue}if(b.done){h=b.answer||h;break}b.answer&&(h=b.answer)}s(e,f,h=t(h),i);let k=j.length>0?j.join("\n"):void 0,l={role:"assistant",content:h};k&&(l.reasoning_content=k);let m=Math.ceil(f.length/4),n=Math.ceil(h.length/4);return new Response(JSON.stringify({id:c,object:"chat.completion",created:d,model:b,system_fingerprint:null,choices:[{index:0,message:l,finish_reason:"stop",logprobs:null}],usage:{prompt_tokens:m,completion_tokens:n,total_tokens:m+n}}),{status:200,headers:{"Content-Type":"application/json"}})}class y extends d.H{constructor(){super("perplexity-web",e.xq["perplexity-web"])}async execute({model:a,body:b,stream:c,credentials:d,signal:e,log:j}){var k,l,m,n,o;let p,u,y,z,A,B=b?.messages;if(!B||!Array.isArray(B)||0===B.length)return{response:new Response(JSON.stringify({error:{message:"Missing or empty messages array",type:"invalid_request"}}),{status:400,headers:{"Content-Type":"application/json"}}),url:f,headers:{},transformedBody:b};(b?.thinking===!0||b?.reasoning_effort!=null&&"none"!==b.reasoning_effort)&&i[a]?(p="copilot",u=i[a],j?.info?.("PPLX-WEB",`Thinking mode → ${a} using ${u}`)):h[a]?[p,u]=h[a]:(p="copilot",u=a,j?.info?.("PPLX-WEB",`Unmapped model ${a}, using as raw preference`));let C=function(a){let b="",c=[];for(let d of a){let a=String(d.role||"user");"developer"===a&&(a="system");let e="";"string"==typeof d.content?e=d.content:Array.isArray(d.content)&&(e=d.content.filter(a=>"text"===a.type).map(a=>String(a.text||"")).join(" ")),e.trim()&&("system"===a?b+=e+"\n":("user"===a||"assistant"===a)&&c.push({role:a,content:e}))}let d="";return c.length>0&&"user"===c[c.length-1].role&&(d=c.pop().content),{systemMsg:b,history:c,currentMsg:d}}(B),D=function(a){if(0===a.length)return null;let b=r(a),c=q.get(b);return c?Date.now()-c.ts>36e5?(q.delete(b),null):c.backendUuid:null}(C.history);D&&j?.info?.("PPLX-WEB",`Session continue: ${D.slice(0,12)}...`);let E=function(a,b,c){if(b)return a.currentMsg;let d={},e=[];a.systemMsg.trim()&&e.push(a.systemMsg.trim());let f=function(a){if(!Array.isArray(a)||0===a.length)return"";let b=a.map(a=>{let b=a?.function||a||{},c=b.name||"unnamed",d=(b.description||"").split("\n")[0].slice(0,200);return`- ${c}: ${d}`});return`Available tools (reference only, cannot invoke):
|
|
35
|
+
${b.join("\n")}`}(c);f&&e.push(f),e.push("You have built-in web search. Answer questions directly using search results."),d.instructions=e,a.history.length>0&&(d.history=a.history),a.currentMsg?d.query=a.currentMsg:0===a.history.length&&(d.query="");let g=JSON.stringify(d);return g.length>96e3?g.slice(-96e3):g}(C,D,b?.tools);if(!E.trim())return{response:new Response(JSON.stringify({error:{message:"Empty query after processing",type:"invalid_request"}}),{status:400,headers:{"Content-Type":"application/json"}}),url:f,headers:{},transformedBody:b};let F=(k=p,l=u,A="u">typeof Intl?Intl.DateTimeFormat().resolvedOptions().timeZone:"UTC",{query_str:E,params:{query_str:E,search_focus:"internet",mode:k,model_preference:l,sources:["web"],attachments:[],frontend_uuid:crypto.randomUUID(),frontend_context_uuid:crypto.randomUUID(),version:g,language:"en-US",timezone:A,search_recency_filter:null,is_incognito:!0,use_schematized_api:!0,last_backend_uuid:D}}),G={"Content-Type":"application/json",Accept:"text/event-stream",Origin:"https://www.perplexity.ai",Referer:"https://www.perplexity.ai/","User-Agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/130.0.0.0 Safari/537.36","X-App-ApiClient":"default","X-App-ApiVersion":g};d.accessToken?G.Authorization=`Bearer ${d.accessToken}`:d.apiKey&&(G.Cookie=`__Secure-next-auth.session-token=${d.apiKey}`),j?.info?.("PPLX-WEB",`Query to ${a} (pref=${u}, mode=${p}), len=${E.length}`);let H={method:"POST",headers:G,body:JSON.stringify(F)};e&&(H.signal=e);try{y=await fetch(f,H)}catch(a){return j?.error?.("PPLX-WEB",`Fetch failed: ${a.message||String(a)}`),{response:new Response(JSON.stringify({error:{message:`Perplexity connection failed: ${a.message||String(a)}`,type:"upstream_error"}}),{status:502,headers:{"Content-Type":"application/json"}}),url:f,headers:G,transformedBody:F}}if(!y.ok){let a=y.status,b=`Perplexity returned HTTP ${a}`;return 401===a||403===a?b="Perplexity auth failed — session cookie may be expired. Re-paste your __Secure-next-auth.session-token.":429===a&&(b="Perplexity rate limited. Wait a moment and retry."),j?.warn?.("PPLX-WEB",b),{response:new Response(JSON.stringify({error:{message:b,type:"upstream_error",code:`HTTP_${a}`}}),{status:a,headers:{"Content-Type":"application/json"}}),url:f,headers:G,transformedBody:F}}if(!y.body)return{response:new Response(JSON.stringify({error:{message:"Perplexity returned empty response body",type:"upstream_error"}}),{status:502,headers:{"Content-Type":"application/json"}}),url:f,headers:G,transformedBody:F};let I=`chatcmpl-pplx-${crypto.randomUUID().slice(0,12)}`,J=Math.floor(Date.now()/1e3);if(c){let b;z=new Response((m=y.body,n=C.history,o=C.currentMsg,b=new TextEncoder,new ReadableStream({async start(c){try{c.enqueue(b.encode(w({id:I,object:"chat.completion.chunk",created:J,model:a,system_fingerprint:null,choices:[{index:0,delta:{role:"assistant"},finish_reason:null,logprobs:null}]})));let d="",f=null;for await(let g of v(m,e)){if(g.backendUuid&&(f=g.backendUuid),g.error){c.enqueue(b.encode(w({id:I,object:"chat.completion.chunk",created:J,model:a,system_fingerprint:null,choices:[{index:0,delta:{content:`[Error: ${g.error}]`},finish_reason:null,logprobs:null}]})));break}if(g.thinking){c.enqueue(b.encode(w({id:I,object:"chat.completion.chunk",created:J,model:a,system_fingerprint:null,choices:[{index:0,delta:{reasoning_content:g.thinking+"\n"},finish_reason:null,logprobs:null}]})));continue}if(g.done){d=g.answer||d;break}let e=g.delta||"";e&&(e=t(e,!1))&&c.enqueue(b.encode(w({id:I,object:"chat.completion.chunk",created:J,model:a,system_fingerprint:null,choices:[{index:0,delta:{content:e},finish_reason:null,logprobs:null}]}))),g.answer&&(d=g.answer)}c.enqueue(b.encode(w({id:I,object:"chat.completion.chunk",created:J,model:a,system_fingerprint:null,choices:[{index:0,delta:{},finish_reason:"stop",logprobs:null}]}))),c.enqueue(b.encode("data: [DONE]\n\n")),s(n,o,t(d),f)}catch(d){c.enqueue(b.encode(w({id:I,object:"chat.completion.chunk",created:J,model:a,system_fingerprint:null,choices:[{index:0,delta:{content:`[Stream error: ${d.message||String(d)}]`},finish_reason:"stop",logprobs:null}]}))),c.enqueue(b.encode("data: [DONE]\n\n"))}finally{c.close()}}})),{status:200,headers:{"Content-Type":"text/event-stream","Cache-Control":"no-cache","X-Accel-Buffering":"no"}})}else z=await x(y.body,a,I,J,C.history,C.currentMsg,e);return{response:z,url:f,headers:G,transformedBody:F}}}},26878:(a,b,c)=>{c.d(b,{F:()=>f});var d=c(96179),e=c(35024);class f extends d.L{constructor(){super("xiaomi-tokenplan")}buildUrl(a,b,c=0,d=null){let f=(0,e.Yg)(d);return`${f}/chat/completions`}}},32447:(a,b,c)=>{c.d(b,{BL:()=>g});var d=c(96179),e=c(52007);let f=["anthropic_version","anthropic_beta","client_metadata","mcp_servers","stop_sequences","thinking","top_k"];class g extends d.L{constructor(){super("kimchi")}transformRequest(a,b,c,d){let g,h=super.transformRequest(a,b,c,d);if(!h||"object"!=typeof h)return h;for(let a of(!function(a){var b;if(!a?.system||!Array.isArray(a.messages))return;let c=("string"==typeof(b=a.system)?b:Array.isArray(b)?b.map(a=>"string"==typeof a?a:"string"==typeof a?.text?a.text:"").filter(Boolean).join("\n"):"").trim();if(!c)return;let d=a.messages.find(a=>a?.role==="system");d?"string"==typeof d.content?d.content=`${c}
|
|
36
|
+
|
|
37
|
+
${d.content}`:Array.isArray(d.content)&&d.content.unshift({type:"text",text:c}):a.messages.unshift({role:"system",content:c})}(h),f))void 0!==h[a]&&delete h[a];if(delete h.system,g=(0,e.gK)(a),(g?.provider==="anthropic"||g?.upstreamProvider==="anthropic"||/(^|[-_/])(?:claude|anthropic)(?:[-_/]|$)/i.test(String(a||"")))&&(delete h.reasoning_effort,delete h.reasoning,delete h.thinking),Array.isArray(h?.messages))for(let a of h.messages)a&&"object"==typeof a&&(delete a.cache_control,Array.isArray(a.content)&&(a.content=a.content.map(a=>{if(!a||"object"!=typeof a)return a;let{cache_control:b,signature:c,...d}=a;return d})));Array.isArray(h?.tools)&&(h.tools=h.tools.map(a=>{if(!a||"object"!=typeof a)return a;let{cache_control:b,...c}=a;return c}));if(Array.isArray(h?.messages))for(let a of h.messages)a&&"assistant"===a.role&&"string"==typeof a.reasoning_content&&a.reasoning_content.length>8&&delete a.reasoning_content;return h}}},38572:(a,b,c)=>{c.d(b,{$:()=>n});var d=c(15308),e=c(35024);let f=e.xq["grok-web"].baseUrl,g={"grok-3":{grokModel:"grok-3",modelMode:"MODEL_MODE_GROK_3",isThinking:!1},"grok-3-mini":{grokModel:"grok-3",modelMode:"MODEL_MODE_GROK_3_MINI_THINKING",isThinking:!0},"grok-3-thinking":{grokModel:"grok-3",modelMode:"MODEL_MODE_GROK_3_THINKING",isThinking:!0},"grok-4":{grokModel:"grok-4",modelMode:"MODEL_MODE_GROK_4",isThinking:!1},"grok-4-mini":{grokModel:"grok-4-mini",modelMode:"MODEL_MODE_GROK_4_MINI_THINKING",isThinking:!0},"grok-4-thinking":{grokModel:"grok-4",modelMode:"MODEL_MODE_GROK_4_THINKING",isThinking:!0},"grok-4-heavy":{grokModel:"grok-4",modelMode:"MODEL_MODE_HEAVY",isThinking:!0},"grok-4.1-mini":{grokModel:"grok-4-1-thinking-1129",modelMode:"MODEL_MODE_GROK_4_1_MINI_THINKING",isThinking:!0},"grok-4.1-fast":{grokModel:"grok-4-1-thinking-1129",modelMode:"MODEL_MODE_FAST",isThinking:!1},"grok-4.1-expert":{grokModel:"grok-4-1-thinking-1129",modelMode:"MODEL_MODE_EXPERT",isThinking:!0},"grok-4.1-thinking":{grokModel:"grok-4-1-thinking-1129",modelMode:"MODEL_MODE_GROK_4_1_THINKING",isThinking:!0},"grok-4.2":{grokModel:"grok-420",modelMode:"MODEL_MODE_GROK_420",isThinking:!1},"grok-4.20":{grokModel:"grok-420",modelMode:"MODEL_MODE_GROK_420",isThinking:!1},"grok-4.20-beta":{grokModel:"grok-420",modelMode:"MODEL_MODE_GROK_420",isThinking:!1}};function h(a,b=!1){let c=b?"abcdefghijklmnopqrstuvwxyz0123456789":"abcdefghijklmnopqrstuvwxyz",d="";for(let b=0;b<a;b++)d+=c[Math.floor(Math.random()*c.length)];return d}function i(a){let b=new Uint8Array(a);return crypto.getRandomValues(b),Array.from(b,a=>a.toString(16).padStart(2,"0")).join("")}async function*j(a,b){let c=a.getReader(),d=new TextDecoder,e="";try{for(;;){if(b?.aborted)return;let{value:a,done:f}=await c.read();if(f)break;for(e+=d.decode(a,{stream:!0});;){let a=e.indexOf("\n");if(a<0)break;let b=e.slice(0,a).trim();if(e=e.slice(a+1),b)try{yield JSON.parse(b)}catch{}}}let a=(e+=d.decode()).trim();if(a)try{yield JSON.parse(a)}catch{}}finally{c.releaseLock()}}async function*k(a,b,c){let d="",e="",f=!1;for await(let g of j(a,c)){if(g.error)return void(yield{error:g.error.message||`Grok error: ${g.error.code}`,done:!0});let a=g.result?.response;if(a){if(a.llmInfo?.modelHash&&!d&&(d=a.llmInfo.modelHash),a.responseId&&(e=a.responseId),a.modelResponse){let c=a.modelResponse;f&&b&&(c.message&&(yield{thinking:c.message}),f=!1),c.message&&(yield{fullMessage:c.message,fingerprint:d,responseId:e}),c.metadata?.llm_info?.modelHash&&(d=c.metadata.llm_info.modelHash);continue}null!=a.token&&(yield{delta:a.token,fingerprint:d,responseId:e})}}yield{done:!0,fingerprint:d,responseId:e}}function l(a){return`data: ${JSON.stringify(a)}
|
|
38
|
+
|
|
39
|
+
`}async function m(a,b,c,d,e,f){let g="",h="",i=[];for await(let b of k(a,e,f)){if(b.fingerprint&&(h=b.fingerprint),b.error)return new Response(JSON.stringify({error:{message:b.error,type:"upstream_error",code:"GROK_ERROR"}}),{status:502,headers:{"Content-Type":"application/json"}});if(b.thinking){i.push(b.thinking);continue}if(b.done)break;b.fullMessage?g=b.fullMessage:b.delta&&(g+=b.delta)}let j={role:"assistant",content:g};i.length>0&&(j.reasoning_content=i.join("\n"));let l=Math.ceil(g.length/4),m=Math.ceil(g.length/4);return new Response(JSON.stringify({id:c,object:"chat.completion",created:d,model:b,system_fingerprint:h||null,choices:[{index:0,message:j,finish_reason:"stop",logprobs:null}],usage:{prompt_tokens:l,completion_tokens:m,total_tokens:l+m}}),{status:200,headers:{"Content-Type":"application/json"}})}class n extends d.H{constructor(){super("grok-web",e.xq["grok-web"])}async execute({model:a,body:b,stream:c,credentials:d,signal:e,log:j}){let n,o,p=b?.messages;if(!p||!Array.isArray(p)||0===p.length)return{response:new Response(JSON.stringify({error:{message:"Missing or empty messages array",type:"invalid_request"}}),{status:400,headers:{"Content-Type":"application/json"}}),url:f,headers:{},transformedBody:b};let q=g[a];q||j?.info?.("GROK-WEB",`Unmapped model ${a}, defaulting to grok-4.1-fast`);let{grokModel:r,modelMode:s,isThinking:t}=q||g["grok-4.1-fast"],u=function(a){let b=[];for(let c of a){let a=String(c.role||"user");"developer"===a&&(a="system");let d="";"string"==typeof c.content?d=c.content:Array.isArray(c.content)&&(d=c.content.filter(a=>"text"===a.type).map(a=>String(a.text||"")).join(" ")),d.trim()&&b.push({role:a,text:d})}let c=-1;for(let a=b.length-1;a>=0;a--)if("user"===b[a].role){c=a;break}let d=[];for(let a=0;a<b.length;a++){let{role:e,text:f}=b[a];d.push(a===c?f:`${e}: ${f}`)}return d.join("\n\n")}(p);if(!u.trim())return{response:new Response(JSON.stringify({error:{message:"Empty query after processing",type:"invalid_request"}}),{status:400,headers:{"Content-Type":"application/json"}}),url:f,headers:{},transformedBody:b};let v={temporary:!0,modelName:r,modelMode:s,message:u,fileAttachments:[],imageAttachments:[],disableSearch:!1,enableImageGeneration:!1,returnImageBytes:!1,returnRawGrokInXaiRequest:!1,enableImageStreaming:!1,imageGenerationCount:0,forceConcise:!1,toolOverrides:{},enableSideBySide:!0,sendFinalMetadata:!0,isReasoning:!1,disableTextFollowUps:!1,disableMemory:!0,forceSideBySide:!1,isAsyncChat:!1,disableSelfHarmShortCircuit:!1,deviceEnvInfo:{darkModeEnabled:!1,devicePixelRatio:2,screenWidth:2056,screenHeight:1329,viewportWidth:2056,viewportHeight:1083}},w=i(16),x=i(8),y={Accept:"*/*","Accept-Encoding":"gzip, deflate, br, zstd","Accept-Language":"en-US,en;q=0.9",Baggage:"sentry-environment=production,sentry-release=d6add6fb0460641fd482d767a335ef72b9b6abb8,sentry-public_key=b311e0f2690c81f25e2c4cf6d4f7ce1c","Cache-Control":"no-cache","Content-Type":"application/json",Origin:"https://grok.com",Pragma:"no-cache",Referer:"https://grok.com/","Sec-Ch-Ua":'"Google Chrome";v="136", "Chromium";v="136", "Not(A:Brand";v="24"',"Sec-Ch-Ua-Mobile":"?0","Sec-Ch-Ua-Platform":'"macOS"',"Sec-Fetch-Dest":"empty","Sec-Fetch-Mode":"cors","Sec-Fetch-Site":"same-origin","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/136.0.0.0 Safari/537.36","x-statsig-id":btoa(.5>Math.random()?`e:TypeError: Cannot read properties of null (reading 'children["${h(5,!0)}"]')`:`e:TypeError: Cannot read properties of undefined (reading '${h(10)}')`),"x-xai-request-id":crypto.randomUUID(),traceparent:`00-${w}-${x}-00`};if(d.apiKey){let a=d.apiKey;a.startsWith("sso=")&&(a=a.slice(4)),y.Cookie=`sso=${a}`}j?.info?.("GROK-WEB",`Query to ${a} (grok=${r}, mode=${s}), len=${u.length}`);try{n=await fetch(f,{method:"POST",headers:y,body:JSON.stringify(v),signal:e})}catch(a){return j?.error?.("GROK-WEB",`Fetch failed: ${a.message||String(a)}`),{response:new Response(JSON.stringify({error:{message:`Grok connection failed: ${a.message||String(a)}`,type:"upstream_error"}}),{status:502,headers:{"Content-Type":"application/json"}}),url:f,headers:y,transformedBody:v}}if(!n.ok){let a=n.status,b=`Grok returned HTTP ${a}`;return 401===a||403===a?b="Grok auth failed — SSO cookie may be expired. Re-paste your sso cookie value from grok.com.":429===a&&(b="Grok rate limited. Wait a moment and retry, or rotate cookies."),j?.warn?.("GROK-WEB",b),{response:new Response(JSON.stringify({error:{message:b,type:"upstream_error",code:`HTTP_${a}`}}),{status:a,headers:{"Content-Type":"application/json"}}),url:f,headers:y,transformedBody:v}}if(!n.body)return{response:new Response(JSON.stringify({error:{message:"Grok returned empty response body",type:"upstream_error"}}),{status:502,headers:{"Content-Type":"application/json"}}),url:f,headers:y,transformedBody:v};let z=`chatcmpl-grok-${crypto.randomUUID().slice(0,12)}`,A=Math.floor(Date.now()/1e3);if(c){var B;let b;o=new Response((B=n.body,b=new TextEncoder,new ReadableStream({async start(c){try{c.enqueue(b.encode(l({id:z,object:"chat.completion.chunk",created:A,model:a,system_fingerprint:null,choices:[{index:0,delta:{role:"assistant"},finish_reason:null,logprobs:null}]})));let d="";for await(let f of k(B,t,e)){if(f.fingerprint&&(d=f.fingerprint),f.error){c.enqueue(b.encode(l({id:z,object:"chat.completion.chunk",created:A,model:a,system_fingerprint:d||null,choices:[{index:0,delta:{content:`[Error: ${f.error}]`},finish_reason:null,logprobs:null}]})));break}if(f.thinking){c.enqueue(b.encode(l({id:z,object:"chat.completion.chunk",created:A,model:a,system_fingerprint:d||null,choices:[{index:0,delta:{reasoning_content:f.thinking},finish_reason:null,logprobs:null}]})));continue}if(f.done)break;f.delta&&c.enqueue(b.encode(l({id:z,object:"chat.completion.chunk",created:A,model:a,system_fingerprint:d||null,choices:[{index:0,delta:{content:f.delta},finish_reason:null,logprobs:null}]})))}c.enqueue(b.encode(l({id:z,object:"chat.completion.chunk",created:A,model:a,system_fingerprint:d||null,choices:[{index:0,delta:{},finish_reason:"stop",logprobs:null}]}))),c.enqueue(b.encode("data: [DONE]\n\n"))}catch(d){c.enqueue(b.encode(l({id:z,object:"chat.completion.chunk",created:A,model:a,system_fingerprint:null,choices:[{index:0,delta:{content:`[Stream error: ${d.message||String(d)}]`},finish_reason:"stop",logprobs:null}]}))),c.enqueue(b.encode("data: [DONE]\n\n"))}finally{c.close()}}})),{status:200,headers:{"Content-Type":"text/event-stream","Cache-Control":"no-cache","X-Accel-Buffering":"no"}})}else o=await m(n.body,a,z,A,t,e);return{response:o,url:f,headers:y,transformedBody:v}}}},43173:(a,b,c)=>{c.d(b,{T:()=>J});var d=c(55511),e=c(15308);let f=`You are Codex, based on GPT-5. You are running as a coding agent in the Codex CLI on a user's computer.
|
|
23
40
|
|
|
24
41
|
## General
|
|
25
42
|
|
|
@@ -135,24 +152,15 @@ You are producing plain text that will later be styled by the CLI. Follow these
|
|
|
135
152
|
* Optionally include line/column (1‑based): :line[:column] or #Lline[Ccolumn] (column defaults to 1).
|
|
136
153
|
* Do not use URIs like file://, vscode://, or https://.
|
|
137
154
|
* Do not provide range of lines
|
|
138
|
-
* Examples: src/app.ts, src/app.ts:42, b/server/index.js#L10, C:\\repo\\project\\main.rs:12:5`;var g=c(35024),h=c(93943),i=c(42654),j=c(71553),k=c(47774);let l=new Set(["metadata.google.internal","metadata"]);async function m(a){if(!a)return null;let b=a.toLowerCase().replace(/^\[|\]$/g,"");if(l.has(b))return null;try{let b=await (0,j.lookup)(a,{all:!0});if(!b.length||b.some(a=>(function a(b){if(!b)return!0;let c=b.toLowerCase();if(c.startsWith("::ffff:"))return a(c.slice(7));if(c.includes(":"))return!!("::"===c||"::1"===c||c.startsWith("fc")||c.startsWith("fd")||c.startsWith("fe80"));if(c.includes(".")){let[a,b]=c.split(".").map(Number);if(10===a||127===a||169===a&&254===b||172===a&&b>=16&&b<=31||192===a&&168===b||0===a||a>=224)return!0}return!1})(a.address)))return null;return b}catch{return null}}async function n(a,b={}){let c,{signal:d,timeoutMs:e=1e4,maxBytes:f=0x1400000}=b;if(!a||!a.startsWith("http://")&&!a.startsWith("https://"))return null;try{c=new URL(a)}catch{return null}let g=await m(c.hostname);if(!g)return null;let h=new AbortController,i=d?null:setTimeout(()=>h.abort(),e),j=d||h.signal,l=new k.Agent({connect:{lookup:(a,b,c)=>c(null,[{address:g[0].address,family:g[0].family}])}});try{let b=await fetch(a,{signal:j,redirect:"manual",dispatcher:l});if(!b.ok||!b.body)return null;let c=b.body.getReader(),d=[],e=0;for(;;){let{done:a,value:b}=await c.read();if(a)break;if((e+=b.byteLength)>f){try{c.cancel()}catch{}return null}d.push(b)}let g=Buffer.concat(d.map(a=>Buffer.from(a))),h=b.headers.get("Content-Type")||"image/jpeg",i=g.toString("base64");return{url:`data:${h};base64,${i}`,mimeType:h}}catch{return null}finally{i&&clearTimeout(i),l.close().catch(()=>{})}}var o=c(44404),p=c(54603),q=c(41004),r=c(92306);let s=["server_is_overloaded","service_unavailable_error"],t=new Map,u=/^(rs|fc|resp|msg)_/,v=new Set(["image_generation","web_search","web_search_preview","file_search","computer","computer_use_preview","code_interpreter","mcp","local_shell","tool_search"]),w=new Set(["custom"]),x=new Set(["model","input","instructions","tools","tool_choice","stream","store","reasoning","service_tier","include","prompt_cache_key","client_metadata"]),y=null;function z(a){return(0,d.createHash)("sha256").update(a).digest("hex").slice(0,16)}function A(){return`sess_${Date.now().toString(36)}_${Math.random().toString(36).slice(2,9)}`}function B(a){if("string"!=typeof a)return null;let b=a.trim();return!b||b.length>256?null:b}(0,p.Xj)().then(a=>{y=a}),setInterval(()=>{let a=Date.now();for(let[b,c]of t)a-c.lastUsed>36e5&&t.delete(b)},6e5);class C extends e.H{constructor(){super("codex",g.xq.codex),this._currentSessionId=null}buildHeaders(a,b=!0){let c=super.buildHeaders(a,b);c.session_id=this._currentSessionId||a?.connectionId||"default",c.originator||(c.originator="codex_cli_rs");let d=a?.providerSpecificData?.workspaceId;return"string"==typeof d&&d&&!c["chatgpt-account-id"]&&(c["chatgpt-account-id"]=d),c}buildUrl(a,b,c=0,d=null){let e=super.buildUrl(a,b,c,d);return this._isCompact?`${e}/compact`:e}async refreshCredentials(a,b){return a?.refreshToken?(0,h.Vq)("codex",a,b):null}needsRefresh(a){return(0,h.fp)("codex",a)}async prefetchImages(a){if(Array.isArray(a?.input))for(let b of a.input){if(!Array.isArray(b.content))continue;let a=b.content.map(async a=>{if("image_url"!==a.type)return a;let b="string"==typeof a.image_url?a.image_url:a.image_url?.url,c=a.image_url?.detail||"auto";if(!b)return a;if(b.startsWith("data:"))return{type:"input_image",image_url:b,detail:c};let d=await n(b,{timeoutMs:15e3});return{type:"input_image",image_url:d?.url||b,detail:c}});b.content=await Promise.all(a)}}async execute(a){let b=Array.isArray(a.body?.input)?a.body.input.reduce((a,b)=>a+(Array.isArray(b.content)?b.content.filter(a=>"image_url"===a.type).length:0),0):0,c=Array.isArray(a.body?.input)?a.body.input.length:0;if((0,r.s)("CODEX",`execute start | inputItems=${c} | images=${b} | sessionId=${this._currentSessionId||"pending"}`),b>0){let b=Date.now();await this.prefetchImages(a.body),(0,r.s)("CODEX",`prefetchImages done | ${Date.now()-b}ms`)}else await this.prefetchImages(a.body);let d={...q.cI,...this.config.retry},{attempts:e,delayMs:f}=(0,q.DR)(d[503]),g=0;for(;;){let b=await super.execute(a),c=await this._peekSseOverloaded(b.response);if(!c.matched)return c.replacementBody&&(b.response=new Response(c.replacementBody,{status:b.response.status,statusText:b.response.statusText,headers:b.response.headers})),b;if(g>=e)return a.log?.warn?.("RETRY",`CODEX | SSE overloaded "${c.matched}" — retries exhausted (${g}/${e})`),c.replacementBody&&(b.response=new Response(c.replacementBody,{status:b.response.status,statusText:b.response.statusText,headers:b.response.headers})),b;g++,a.log?.debug?.("RETRY",`CODEX | SSE "${c.matched}" retry ${g}/${e} after ${f/1e3}s`),(0,r.s)("CODEX",`SSE overloaded "${c.matched}" → retry ${g}/${e} in ${f}ms`);try{await b.response.body?.cancel?.()}catch{}await new Promise(a=>setTimeout(a,f))}}async _peekSseOverloaded(a){if(!a||!a.ok||!a.body)return{matched:null,replacementBody:null};let b=a.body.getReader(),c=new TextDecoder,d=[],e="",f=null;try{for(;e.length<4096;){let{done:a,value:g}=await b.read();if(a)break;d.push(g),e+=c.decode(g,{stream:!0});let h=s.find(a=>e.includes(a));if(h){f=h;break}}}catch(a){(0,r.s)("CODEX",`peek read error: ${a.message}`)}b.releaseLock();let g=a.body,h=null;return{matched:f,replacementBody:new ReadableStream({start(a){for(let b of d)a.enqueue(b);h=g.getReader()},async pull(a){try{let{done:b,value:c}=await h.read();if(b)return void a.close();a.enqueue(c)}catch(b){a.error(b)}},cancel(a){try{h?.cancel(a)}catch{}}})}}parseError(a,b){if(429===a.status&&b)try{let a=JSON.parse(b),c=a?.error;if(c?.type==="usage_limit_reached"){let a=Date.now(),d=null;if("number"==typeof c.resets_at&&c.resets_at>0){let b=1e3*c.resets_at;b>a&&(d=b)}if(!d&&"number"==typeof c.resets_in_seconds&&c.resets_in_seconds>0&&(d=a+1e3*c.resets_in_seconds),d)return{status:429,message:c.message||b,resetsAtMs:d}}}catch{}return super.parseError(a,b)}transformRequest(a,b,c,d){this._isCompact=!!b._compact,delete b._compact,this._currentSessionId=function(a,b,c){let d=B(a?.prompt_cache_key)||B(a?.session_id)||B(a?.conversation_id);if(d)return d;if(Array.isArray(a?.input)&&a.input.length>0){let b="";for(let c of a.input){if(c?.role!=="assistant")continue;let a=c?"string"==typeof c.content?c.content:Array.isArray(c.content)?c.content.map(a=>a.text||a.output||"").filter(Boolean).join(""):"":"";if(a&&(b+=a).length>=200)break}if(b.length>=50){let a=z((c||"")+b.slice(0,200)),d=t.get(a);if(d)return d.lastUsed=Date.now(),d.sessionId;let e=A();return t.set(a,{sessionId:e,lastUsed:Date.now()}),e}}let e=B(b?.providerSpecificData?.workspaceId);return e||(c?`sess_${z(c)}`:A())}(b,d,y);let e=(0,i.m)(b.input);if(e&&(b.input=e),(!b.input||Array.isArray(b.input)&&0===b.input.length)&&(b.input=[{type:"message",role:"user",content:[{type:"input_text",text:"..."}]}]),Array.isArray(b.input))for(let a of b.input)!(!a||"object"!=typeof a||Array.isArray(a))&&("system"!==a.role||a.type&&"message"!==a.type||(a.role="developer"));Array.isArray(b.input)&&(b.input=b.input.filter(a=>{if("string"==typeof a&&u.test(a))return!1;if(a&&"object"==typeof a&&!Array.isArray(a)){if("item_reference"===a.type)return!1;"string"==typeof a.id&&u.test(a.id)&&delete a.id}return!0})),function(a){if(!Array.isArray(a.tools))return;let b=new Set;if(a.tools=a.tools.filter(a=>{if(!a||"object"!=typeof a||Array.isArray(a))return!1;let c="string"==typeof a.type?a.type:"";if("namespace"===c){if(Array.isArray(a.tools))for(let c of a.tools){let a="string"==typeof c?.name?c.name.trim().slice(0,128):"";a&&b.add(a)}return!0}if("function"!==c)return!!w.has(c)||!!c&&!a.function&&"string"!=typeof a.name&&v.has(c);let d=a.function&&"object"==typeof a.function&&!Array.isArray(a.function)?a.function:null,e=("string"==typeof a.name?a.name:"string"==typeof d?.name?d.name:"").trim();if(!e)return!1;let f="string"==typeof a.description?a.description:"string"==typeof d?.description?d.description:"",g=a.parameters&&"object"==typeof a.parameters&&!Array.isArray(a.parameters)?a.parameters:d?.parameters&&"object"==typeof d.parameters&&!Array.isArray(d.parameters)?d.parameters:{type:"object",properties:{}};for(let b of("object"!==g.type||g.properties||(g={...g,properties:{}}),Object.keys(a)))delete a[b];return a.type="function",a.name=e.slice(0,128),f&&(a.description=f),a.parameters=g,b.add(e),!0}),a.tool_choice&&"object"==typeof a.tool_choice&&!Array.isArray(a.tool_choice)&&"function"===a.tool_choice.type){let c="string"==typeof a.tool_choice.name?a.tool_choice.name.trim():"";c&&b.has(c)||delete a.tool_choice}}(b),b.stream=!0,b.instructions&&""!==b.instructions.trim()||(b.instructions=f),b.store=!1,!b.prompt_cache_key&&this._currentSessionId&&(b.prompt_cache_key=this._currentSessionId),b.model=(0,o.kt)("cx",b.model||a);let g=null;for(let a of["none","low","medium","high","xhigh"])if(b.model.endsWith(`-${a}`)){g=a,b.model=b.model.replace(`-${a}`,"");break}if(b.reasoning)b.reasoning.summary||(b.reasoning.summary="auto");else{let a=b.reasoning_effort||g||"low";b.reasoning={effort:a,summary:"auto"}}for(let a of(delete b.reasoning_effort,b.reasoning&&b.reasoning.effort&&"none"!==b.reasoning.effort&&(b.include=["reasoning.encrypted_content"]),delete b.temperature,delete b.top_p,delete b.frequency_penalty,delete b.presence_penalty,delete b.logprobs,delete b.top_logprobs,delete b.n,delete b.seed,delete b.max_tokens,delete b.max_completion_tokens,delete b.max_output_tokens,delete b.user,delete b.prompt_cache_retention,delete b.metadata,delete b.stream_options,delete b.safety_identifier,delete b.previous_response_id,Object.keys(b)))x.has(a)||delete b[a];return b}}},22376:(a,b,c)=>{c.d(b,{hG:()=>B});var d=c(77598),e=c.n(d),f=c(15308),g=c(35024),h=c(93943),i=c(42654),j=c(44404),k=c(90737),l=c(41004),m=c(80662),n=c(54603);let o=/^(rs|fc|resp|msg)_/,p=new Set(["web_search","x_search","web_search_preview","file_search","image_generation","code_interpreter","mcp","local_shell"]),q=new Set(["model","input","instructions","tools","tool_choice","stream","store","reasoning","include","temperature","top_p","max_output_tokens","parallel_tool_calls","text","metadata","prompt_cache_key"]),r=["low","medium","high","xhigh"],s=/^(?:rs|msg|fc)_[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/i,t={type:"object",properties:{input:{type:"string"}},required:["input"]},u=new Map,v=new WeakMap;function w(a){let b="string"==typeof a?a.trim().toLowerCase():"";return"max"===b?"xhigh":r.includes(b)?b:"high"}function x(a){let b=e().createHash("sha256").update(String(a)).digest("hex"),c="4"+b.slice(13,16),d=(3&parseInt(b[16],16)|8).toString(16)+b.slice(17,20);return`${b.slice(0,8)}-${b.slice(8,12)}-${c}-${d}-${b.slice(20,32)}`}function y(a){return"string"==typeof a?a:void 0===a?"":JSON.stringify(a)}function z(a){return"string"==typeof a&&s.test(a)}function A(a){if(!a||"object"!=typeof a||Array.isArray(a))return a;let{internal_chat_message_metadata_passthrough:b,...c}=a;if("reasoning"===a.type)return z(a.id)&&"string"==typeof a.encrypted_content?c:null;if("custom_tool_call"===a.type){let b=a.call_id||a.id,c="string"==typeof a.name?a.name.trim():"";return b&&c?{type:"function_call",call_id:b,name:c,arguments:JSON.stringify({input:y(a.input??a.arguments)})}:null}if("custom_tool_call_output"===a.type||"function_call_output"===a.type){let b=a.call_id||a.id;return b?{type:"function_call_output",call_id:b,output:y(a.output)}:null}if("function_call"===a.type){let b=a.call_id||a.id,c="string"==typeof a.name?a.name.trim():"";return b&&c?{type:"function_call",...z(a.id)?{id:a.id}:{},call_id:b,name:c,arguments:"string"==typeof a.arguments?a.arguments:JSON.stringify(a.arguments??{}),..."string"==typeof a.status?{status:a.status}:{}}:null}return c}class B extends f.H{constructor(){super("grok-cli",g.xq["grok-cli"]),this._currentSessionId=null,this._currentReqId=null,this._currentTurnIdx=1,this._agentId=null}buildUrl(){return this.config.baseUrl}async refreshCredentials(a,b,c=null){return a?.refreshToken?(0,h.Vq)("grok-cli",a,b,c):null}needsRefresh(a){return(0,h.fp)("grok-cli",a)}buildHeaders(a,b=!0){let c=super.buildHeaders(a,b);for(let[a,b]of Object.entries(this.config.headers||{}))null!=b&&void 0===c[a]&&(c[a]=b);c["x-grok-client-identifier"]=this.config.clientIdentifier||c["x-grok-client-identifier"]||k.rK,c["x-grok-client-version"]=this.config.clientVersion||c["x-grok-client-version"]||k.uG;let d=this._currentSessionId||a?.connectionId||e().randomUUID(),f=this._currentReqId||e().randomUUID();c["x-grok-session-id"]=d,c["x-grok-conv-id"]=d,c["x-grok-req-id"]=f,c["x-grok-turn-idx"]=String(this._currentTurnIdx||1),this._agentId&&(c["x-grok-agent-id"]=this._agentId),this._currentModel&&(c["x-grok-model-override"]=this._currentModel);let g=a?.providerSpecificData||{},h=g.email||a?.email,i=g.userId||a?.userId||a?.providerUserId;return h&&(c["x-email"]=h),i&&(c["x-userid"]=i),c}parseError(a,b){if(402===a.status&&b)try{let a=JSON.parse(b),c=a?.code||"",d=a?.error||a?.message||b;return{status:402,message:"string"==typeof d?d:b,code:"string"==typeof c?c:void 0}}catch{}return super.parseError(a,b)}transformRequest(a,b,c,d){this._currentSessionId=function(a,b){let c=b?.prompt_cache_key||b?.session_id||b?.conversation_id||b?.metadata?.session_id||b?.metadata?.conversation_id;if("string"==typeof c&&c.trim())return x(c.trim());let d=a?.providerSpecificData?.workspaceId;if("string"==typeof d&&d.trim())return x(d.trim());let e=a?.connectionId||a?.id;return e?x(`grok-cli:${e}`):x((0,m.RF)(void 0))}(d,b),this._currentReqId=e().randomUUID(),this._agentId=d?.providerSpecificData?.deviceId||d?.providerSpecificData?.agentId||null;let f=(0,i.m)(b.input);f&&(b.input=f),(!b.input||Array.isArray(b.input)&&0===b.input.length)&&(Array.isArray(b.messages)&&b.messages.length>0?(b.input=b.messages.map(a=>({type:"message",role:a.role||"user",content:"string"==typeof a.content?a.content:JSON.stringify(a.content??"")})),delete b.messages):b.input=[{type:"message",role:"user",content:"..."}]),function(a){if(!Array.isArray(a?.input))return;let b=a.input.map(A).filter(Boolean),c=new Set(b.filter(a=>a?.type==="function_call"&&a.call_id).map(a=>a.call_id));a.input=b.filter(a=>a?.type!=="function_call_output"||c.has(a.call_id))}(b),Array.isArray(b.input)&&(b.input=b.input.filter(a=>{if("string"==typeof a&&o.test(a))return!1;if(a&&"object"==typeof a&&!Array.isArray(a)){if("item_reference"===a.type)return!1;"string"==typeof a.id&&o.test(a.id)&&!z(a.id)&&delete a.id}return!0})),function(a){if(!Array.isArray(a.tools)||0===a.tools.length){delete a.tools,delete a.tool_choice;return}let b=new Set,c=new Set;if(a.tools=a.tools.filter(a=>{if(!a||"object"!=typeof a||Array.isArray(a))return!1;let d="string"==typeof a.type?a.type:"";if("function"!==d){if(p.has(d))return c.add(d),!0;if(!d&&a.function);else if(d&&"string"!=typeof a.name)return!1}if(!("function"===d||""===d||a.function||"string"==typeof a.name)||p.has(d))return p.has(d);let e=a.function&&"object"==typeof a.function&&!Array.isArray(a.function)?a.function:null,f=("string"==typeof a.name?a.name:"string"==typeof e?.name?e.name:"").trim();if(!f)return!1;let g="string"==typeof a.description?a.description:"string"==typeof e?.description?e.description:"",h="custom"===d?t:a.parameters&&"object"==typeof a.parameters&&!Array.isArray(a.parameters)?a.parameters:e?.parameters&&"object"==typeof e.parameters&&!Array.isArray(e.parameters)?e.parameters:{type:"object",properties:{}};for(let b of("object"!==h.type||h.properties||(h={...h,properties:{}}),Object.keys(a)))delete a[b];return a.type="function",a.name=f.slice(0,128),g&&(a.description=g),a.parameters=h,b.add(a.name),!0}),0===a.tools.length){delete a.tools,delete a.tool_choice;return}if(a.tool_choice&&"object"==typeof a.tool_choice&&!Array.isArray(a.tool_choice)){let d="string"==typeof a.tool_choice.type?a.tool_choice.type:"";if("function"===d||"custom"===d){let c=a.tool_choice.name??a.tool_choice.function?.name,d="string"==typeof c?c.trim().slice(0,128):"";d&&b.has(d)?a.tool_choice={type:"function",name:d}:delete a.tool_choice}else c.has(d)||delete a.tool_choice}}(b),this._currentTurnIdx=function(a,b,c=null){let d=function(a){if(!Array.isArray(a))return 1;let b=0;for(let c of a){if(!c||"object"!=typeof c||Array.isArray(c))continue;let a="string"==typeof c.type?c.type:"";"user"!==c.role||a&&"message"!==a||(b+=1)}return Math.max(1,b)}(b);if(!a)return d;if(c&&v.has(c))return v.get(c);let e=Date.now(),f=u.get(a),g=f&&e-f.lastUsed<=l.v1.sessionTtlMs?f.turn:0;f&&u.delete(a);let h=g>0?Math.max(d,g+ +!!c):d;for(;u.size>=5e3;)u.delete(u.keys().next().value);return u.set(a,{turn:h,lastUsed:e}),c&&v.set(c,h),h}(this._currentSessionId,b.input,b),b.stream=!0,b.store=!1;let g=function(a){if(!a||"string"!=typeof a)return null;for(let b of r)if(a.endsWith(`-${b}`))return b;return null}(b.model||a),h=b.model||a;g&&(h=h.replace(RegExp(`-${g}$`),"")),(h=(0,j.kt)("gcli",h)||h)===(b.model||a)&&(h=(0,j.kt)("grok-cli",h)||h),b.model=h,this._currentModel=h;let n=(0,k.Au)(h);if(b.reasoning&&"object"==typeof b.reasoning?(n?b.reasoning.effort=w(b.reasoning.effort||b.reasoning_effort||g):delete b.reasoning.effort,b.reasoning.summary||(b.reasoning.summary="concise")):(b.reasoning={summary:"concise"},n&&(b.reasoning.effort=w(b.reasoning_effort||g))),delete b.reasoning_effort,b.reasoning&&"none"!==b.reasoning.effort){let a=Array.isArray(b.include)?b.include:[];a.includes("reasoning.encrypted_content")||a.push("reasoning.encrypted_content"),b.include=a}for(let a of(delete b.messages,delete b.max_tokens,delete b.max_completion_tokens,delete b.n,delete b.seed,delete b.logprobs,delete b.top_logprobs,delete b.frequency_penalty,delete b.presence_penalty,delete b.logit_bias,delete b.user,delete b.stream_options,delete b.prompt_cache_retention,delete b.safety_identifier,delete b.previous_response_id,Object.keys(b)))q.has(a)||delete b[a];return b}async execute(a){if(this._agentId||a.credentials?.providerSpecificData?.deviceId)a.credentials?.providerSpecificData?.deviceId&&(this._agentId=a.credentials.providerSpecificData.deviceId);else try{let a=await (0,n.Xj)("grok-cli-agent");this._agentId=[a.slice(0,8),a.slice(8,12),"5"+a.slice(13,16),"a"+a.slice(17,20),a.slice(0,12).padEnd(12,"0")].join("-")}catch{this._agentId=e().randomUUID()}return super.execute(a)}}},23013:(a,b,c)=>{c.d(b,{Ay:()=>y});var d=c(15308),e=c(35024);let f=e.xq["perplexity-web"].baseUrl,g="2.18",h={"pplx-auto":["concise","pplx_pro"],"pplx-sonar":["copilot","experimental"],"pplx-gpt":["copilot","gpt54"],"pplx-gemini":["copilot","gemini31pro_high"],"pplx-sonnet":["copilot","claude46sonnet"],"pplx-opus":["copilot","claude46opus"],"pplx-nemotron":["copilot","nv_nemotron_3_super"]},i={"pplx-gpt":"gpt54_thinking","pplx-sonnet":"claude46sonnetthinking","pplx-opus":"claude46opusthinking"},j=/\[\d+\]/g,k=/<grok:[^>]*>.*?<\/grok:[^>]*>/gs,l=/<grok:[^>]*\/>/g,m=/<[?]xml[^?]*[?]>/g,n=/<\/?response\b[^>]*>/gi,o=/ {2,}/g,p=/\n{3,}/g,q=new Map;function r(a){let b=a.map(a=>`${a.role}:${a.content}`).join("\n"),c=0x811c9dc5;for(let a=0;a<b.length;a++)c^=b.charCodeAt(a),c=0x1000193*c>>>0;return c.toString(16).padStart(8,"0")}function s(a,b,c,d){if(!d)return;let e=r([...a,{role:"user",content:b},{role:"assistant",content:c}]);if(q.set(e,{backendUuid:d,ts:Date.now()}),q.size>200){let a=null,b=1/0;for(let[c,d]of q)d.ts<b&&(b=d.ts,a=c);a&&q.delete(a)}}function t(a,b=!0){let c=a;return c=(c=(c=(c=(c=c.replace(m,"")).replace(j,"")).replace(k,"")).replace(l,"")).replace(n,""),b&&(c=(c=(c=c.replace(o," ")).replace(p,"\n\n")).trim()),c}async function*u(a,b){let c=a.getReader(),d=new TextDecoder,e="",f=[];function g(){if(0===f.length)return null;let a=f.join("\n");f=[];let b=a.trim();if(!b||"[DONE]"===b)return"done";try{return JSON.parse(b)}catch{return null}}try{for(;;){if(b?.aborted)return;let{value:a,done:h}=await c.read();if(h)break;for(e+=d.decode(a,{stream:!0});;){let a=e.indexOf("\n");if(a<0)break;let b=e.slice(0,a);e=e.slice(a+1);let c=b.endsWith("\r")?b.slice(0,-1):b;if(""===c){let a=g();if("done"===a)return;a&&(yield a);continue}if(c.startsWith("data:")&&f.push(c.slice(5).trimStart()),"event: end_of_stream"===c)return}}(e+=d.decode()).trim().startsWith("data:")&&f.push(e.trim().slice(5).trimStart());let a=g();a&&"done"!==a&&(yield a)}finally{c.releaseLock()}}async function*v(a,b){let c="",d=null,e=0,f=new Set;for await(let g of u(a,b)){if(g.error_code||g.error_message)return void(yield{error:g.error_message||`Perplexity error: ${g.error_code}`,done:!0});g.backend_uuid&&(d=g.backend_uuid);let a=g.blocks??[];for(let b of a){let a=b.intended_usage??"";if("pro_search_steps"===a&&b.plan_block?.steps){for(let a of b.plan_block.steps)if("SEARCH_WEB"===a.step_type)for(let b of a.search_web_content?.queries??[]){let a=b.query??"";a&&!f.has(a)&&(f.add(a),yield{thinking:`Searching: ${a}`,backendUuid:d??void 0})}else if("READ_RESULTS"===a.step_type)for(let b of(a.read_results_content?.urls??[]).slice(0,3))b&&!f.has(b)&&(f.add(b),yield{thinking:`Reading: ${b}`,backendUuid:d??void 0})}if("plan"===a&&b.plan_block?.goals)for(let a of b.plan_block.goals){let b=a.description??"";b&&!f.has(b)&&(f.add(b),yield{thinking:b,backendUuid:d??void 0})}if(!a.includes("markdown"))continue;let g=b.markdown_block;if(!g)continue;let h=g.chunks??[];if(0!==h.length)if("DONE"===g.progress)c=h.join("");else{let a=c+h.join("");if(a.length>e){let b=a.slice(e);c=a,e=a.length,yield{delta:b,answer:c,backendUuid:d??void 0}}}}if(0===a.length&&g.text){let a=g.text.trim();if(a.length>e){let b=a.slice(e);c=a,e=a.length,yield{delta:b,answer:c,backendUuid:d??void 0}}}if(g.final||"COMPLETED"===g.status)break}yield{delta:"",answer:c,backendUuid:d??void 0,done:!0}}function w(a){return`data: ${JSON.stringify(a)}
|
|
155
|
+
* Examples: src/app.ts, src/app.ts:42, b/server/index.js#L10, C:\\repo\\project\\main.rs:12:5`;var g=c(35024),h=c(93943),i=c(42654),j=c(71553),k=c(47774);let l=new Set(["metadata.google.internal","metadata"]);async function m(a){if(!a)return null;let b=a.toLowerCase().replace(/^\[|\]$/g,"");if(l.has(b))return null;try{let b=await (0,j.lookup)(a,{all:!0});if(!b.length||b.some(a=>(function a(b){if(!b)return!0;let c=b.toLowerCase();if(c.startsWith("::ffff:"))return a(c.slice(7));if(c.includes(":"))return!!("::"===c||"::1"===c||c.startsWith("fc")||c.startsWith("fd")||c.startsWith("fe80"));if(c.includes(".")){let[a,b]=c.split(".").map(Number);if(10===a||127===a||169===a&&254===b||172===a&&b>=16&&b<=31||192===a&&168===b||0===a||a>=224)return!0}return!1})(a.address)))return null;return b}catch{return null}}async function n(a,b={}){let c,{signal:d,timeoutMs:e=1e4,maxBytes:f=0x1400000}=b;if(!a||!a.startsWith("http://")&&!a.startsWith("https://"))return null;try{c=new URL(a)}catch{return null}let g=await m(c.hostname);if(!g)return null;let h=new AbortController,i=d?null:setTimeout(()=>h.abort(),e),j=d||h.signal,l=new k.Agent({connect:{lookup:(a,b,c)=>c(null,[{address:g[0].address,family:g[0].family}])}});try{let b=await fetch(a,{signal:j,redirect:"manual",dispatcher:l});if(!b.ok||!b.body)return null;let c=b.body.getReader(),d=[],e=0;for(;;){let{done:a,value:b}=await c.read();if(a)break;if((e+=b.byteLength)>f){try{c.cancel()}catch{}return null}d.push(b)}let g=Buffer.concat(d.map(a=>Buffer.from(a))),h=b.headers.get("Content-Type")||"image/jpeg",i=g.toString("base64");return{url:`data:${h};base64,${i}`,mimeType:h}}catch{return null}finally{i&&clearTimeout(i),l.close().catch(()=>{})}}var o=c(44404),p=c(54603),q=c(41004),r=c(92306);let s=/(^|[^\\])(\\\\)*\\[pP]\{/;function t(a,b={removed:0}){return function a(b,c){if(Array.isArray(b)){let d=!1,e=b.map(b=>{let e=a(b,c);return e!==b&&(d=!0),e});return d?e:b}if(!b||"object"!=typeof b)return b;let d=!1,e={};for(let[g,h]of Object.entries(b)){var f;if("pattern"===g&&"string"==typeof(f=h)&&s.test(f)){c.removed+=1,d=!0;continue}if("properties"===g&&h&&"object"==typeof h&&!Array.isArray(h)){let b=!1,f={};for(let[d,e]of Object.entries(h)){let g=a(e,c);g!==e&&(b=!0),f[d]=g}b&&(d=!0),e[g]=b?f:h;continue}let b=a(h,c);b!==h&&(d=!0),e[g]=b}return d?e:b}(a,b)}let u=["server_is_overloaded","service_unavailable_error"],v=new Map,w=/^(rs|fc|resp|msg)_/,x=new Set(["none","minimal","off"]);function y(a){return"string"==typeof a&&!!a&&(0,o.SM)("cx").some(b=>b.id===a&&!0===b.responsesLite)}function z(a){return Array.isArray(a)&&a.some(a=>a?.type==="web_search")}function A(a){return`${a?.type}:${a?.name||a?.function?.name||""}`}function B(a){return x.has(a)?"low":a}let C=new Set(["image_generation","web_search","web_search_preview","file_search","computer","computer_use_preview","code_interpreter","mcp","local_shell","tool_search"]),D=new Set(["custom"]),E=new Set(["model","input","instructions","tools","tool_choice","stream","store","reasoning","service_tier","include","prompt_cache_key","client_metadata","parallel_tool_calls"]),F=null;function G(a){return(0,d.createHash)("sha256").update(a).digest("hex").slice(0,16)}function H(){return`sess_${Date.now().toString(36)}_${Math.random().toString(36).slice(2,9)}`}function I(a){if("string"!=typeof a)return null;let b=a.trim();return!b||b.length>256?null:b}(0,p.Xj)().then(a=>{F=a}),setInterval(()=>{let a=Date.now();for(let[b,c]of v)a-c.lastUsed>36e5&&v.delete(b)},6e5);class J extends e.H{constructor(){super("codex",g.xq.codex),this._currentSessionId=null}buildHeaders(a,b=!0,c=null,d=null,e=null){let f=super.buildHeaders(a,b);y(d&&(0,o.kt)("cx",d))&&!z(e?.tools)&&(f["x-openai-internal-codex-responses-lite"]="true"),f.version||(f.version=g.Ch),f.session_id=this._currentSessionId||a?.connectionId||"default",f.originator||(f.originator="codex_cli_rs");let h=a?.providerSpecificData?.workspaceId;return"string"==typeof h&&h&&!f["chatgpt-account-id"]&&(f["chatgpt-account-id"]=h),f}buildUrl(a,b,c=0,d=null){let e=super.buildUrl(a,b,c,d);return this._isCompact?`${e}/compact`:e}async refreshCredentials(a,b){return a?.refreshToken?(0,h.Vq)("codex",a,b):null}needsRefresh(a){return(0,h.fp)("codex",a)}async prefetchImages(a){if(Array.isArray(a?.input))for(let b of a.input){if(!Array.isArray(b.content))continue;let a=b.content.map(async a=>{if("image_url"!==a.type)return a;let b="string"==typeof a.image_url?a.image_url:a.image_url?.url,c=a.image_url?.detail||"auto";if(!b)return a;if(b.startsWith("data:"))return{type:"input_image",image_url:b,detail:c};let d=await n(b,{timeoutMs:15e3});return{type:"input_image",image_url:d?.url||b,detail:c}});b.content=await Promise.all(a)}}async execute(a){let b=Array.isArray(a.body?.input)?a.body.input.reduce((a,b)=>a+(Array.isArray(b.content)?b.content.filter(a=>"image_url"===a.type).length:0),0):0,c=Array.isArray(a.body?.input)?a.body.input.length:0;if((0,r.s)("CODEX",`execute start | inputItems=${c} | images=${b} | sessionId=${this._currentSessionId||"pending"}`),b>0){let b=Date.now();await this.prefetchImages(a.body),(0,r.s)("CODEX",`prefetchImages done | ${Date.now()-b}ms`)}else await this.prefetchImages(a.body);let d={...q.cI,...this.config.retry},{attempts:e,delayMs:f}=(0,q.DR)(d[503]),g=0;for(;;){let b=await super.execute(a),c=await this._peekSseOverloaded(b.response);if(!c.matched)return c.replacementBody&&(b.response=new Response(c.replacementBody,{status:b.response.status,statusText:b.response.statusText,headers:b.response.headers})),b;if(g>=e)return a.log?.warn?.("RETRY",`CODEX | SSE overloaded "${c.matched}" — retries exhausted (${g}/${e})`),c.replacementBody&&(b.response=new Response(c.replacementBody,{status:b.response.status,statusText:b.response.statusText,headers:b.response.headers})),b;g++,a.log?.debug?.("RETRY",`CODEX | SSE "${c.matched}" retry ${g}/${e} after ${f/1e3}s`),(0,r.s)("CODEX",`SSE overloaded "${c.matched}" → retry ${g}/${e} in ${f}ms`);try{await b.response.body?.cancel?.()}catch{}await new Promise(a=>setTimeout(a,f))}}async _peekSseOverloaded(a){if(!a||!a.ok||!a.body)return{matched:null,replacementBody:null};let b=a.body.getReader(),c=new TextDecoder,d=[],e="",f=null;try{for(;e.length<4096;){let{done:a,value:g}=await b.read();if(a)break;d.push(g),e+=c.decode(g,{stream:!0});let h=u.find(a=>e.includes(a));if(h){f=h;break}}}catch(a){(0,r.s)("CODEX",`peek read error: ${a.message}`)}b.releaseLock();let g=a.body,h=null;return{matched:f,replacementBody:new ReadableStream({start(a){for(let b of d)a.enqueue(b);h=g.getReader()},async pull(a){try{let{done:b,value:c}=await h.read();if(b)return void a.close();a.enqueue(c)}catch(b){a.error(b)}},cancel(a){try{h?.cancel(a)}catch{}}})}}parseError(a,b){if(429===a.status&&b)try{let a=JSON.parse(b),c=a?.error;if(c?.type==="usage_limit_reached"){let a=Date.now(),d=null;if("number"==typeof c.resets_at&&c.resets_at>0){let b=1e3*c.resets_at;b>a&&(d=b)}if(!d&&"number"==typeof c.resets_in_seconds&&c.resets_in_seconds>0&&(d=a+1e3*c.resets_in_seconds),d)return{status:429,message:c.message||b,resetsAtMs:d}}}catch{}return super.parseError(a,b)}transformRequest(a,b,c,d){this._isCompact=!!b._compact,delete b._compact,this._currentSessionId=function(a,b,c){let d=I(a?.prompt_cache_key)||I(a?.session_id)||I(a?.conversation_id);if(d)return d;if(Array.isArray(a?.input)&&a.input.length>0){let b="";for(let c of a.input){if(c?.role!=="assistant")continue;let a=c?"string"==typeof c.content?c.content:Array.isArray(c.content)?c.content.map(a=>a.text||a.output||"").filter(Boolean).join(""):"":"";if(a&&(b+=a).length>=200)break}if(b.length>=50){let a=G((c||"")+b.slice(0,200)),d=v.get(a);if(d)return d.lastUsed=Date.now(),d.sessionId;let e=H();return v.set(a,{sessionId:e,lastUsed:Date.now()}),e}}let e=I(b?.providerSpecificData?.workspaceId);return e||(c?`sess_${G(c)}`:H())}(b,d,F);let e=(0,i.m)(b.input);e&&(b.input=e);let g=(0,o.kt)("cx",b.model||a),h=y(g),j=!1;if(h&&Array.isArray(b.input)){let a=b.input.filter(a=>a?.type==="additional_tools"),c=a.flatMap(a=>Array.isArray(a.tools)?a.tools:[]);if(z(b.tools)||z(c)){let d=Array.isArray(b.tools)?[...b.tools]:[],e=new Set(d.map(A));for(let a of c){let b=A(a);e.has(b)||(e.add(b),d.push(a))}b.tools=d,j=a.length>0,b.input=b.input.filter(a=>a?.type!=="additional_tools")}}let k=h&&!z(b.tools);(!b.input||Array.isArray(b.input)&&0===b.input.length)&&(b.input=[{type:"message",role:"user",content:[{type:"input_text",text:"..."}]}]);if(Array.isArray(b.input))for(let a of b.input)!(!a||"object"!=typeof a||Array.isArray(a))&&("system"!==a.role||a.type&&"message"!==a.type||(a.role="developer"));if(!function(a,b=!1){Array.isArray(a.input)&&(a.input=a.input.filter(a=>{if("string"==typeof a&&w.test(a))return!1;if(a&&"object"==typeof a&&!Array.isArray(a)){if("item_reference"===a.type)return!1;let c=b&&"developer"===a.role&&"string"==typeof a.id&&a.id.startsWith("msg_");"string"==typeof a.id&&w.test(a.id)&&!c&&delete a.id}return!0}))}(b,k),!function(a){if(!Array.isArray(a.tools))return;let b=new Set,c={removed:0};if(a.tools=a.tools.filter(a=>{if(!a||"object"!=typeof a||Array.isArray(a))return!1;let d="string"==typeof a.type?a.type:"";if("namespace"===d){if(Array.isArray(a.tools)){for(let c of a.tools){let a="string"==typeof c?.name?c.name.trim().slice(0,128):"";a&&b.add(a)}let d=a.tools.map(a=>{if(!a?.parameters||"object"!=typeof a.parameters)return a;let b=t(a.parameters,c);return b===a.parameters?a:{...a,parameters:b}});d.some((b,c)=>b!==a.tools[c])&&(a.tools=d)}return!0}if("function"!==d)return!!D.has(d)||!!d&&!a.function&&"string"!=typeof a.name&&C.has(d);let e=a.function&&"object"==typeof a.function&&!Array.isArray(a.function)?a.function:null,f=("string"==typeof a.name?a.name:"string"==typeof e?.name?e.name:"").trim();if(!f)return!1;let g="string"==typeof a.description?a.description:"string"==typeof e?.description?e.description:"",h=a.parameters&&"object"==typeof a.parameters&&!Array.isArray(a.parameters)?a.parameters:e?.parameters&&"object"==typeof e.parameters&&!Array.isArray(e.parameters)?e.parameters:{type:"object",properties:{}};"object"!==h.type||h.properties||(h={...h,properties:{}});let i="boolean"==typeof a.strict?a.strict:e?.strict;for(let b of Object.keys(a))delete a[b];return a.type="function",a.name=f.slice(0,128),g&&(a.description=g),a.parameters=t(h,c),"boolean"==typeof i&&(a.strict=i),b.add(f),!0}),c.removed>0&&(0,r.s)("CODEX",`stripped ${c.removed} unsupported tool schema pattern(s)`),a.tool_choice&&"object"==typeof a.tool_choice&&!Array.isArray(a.tool_choice)&&"function"===a.tool_choice.type){let c="string"==typeof a.tool_choice.name?a.tool_choice.name.trim():"";c&&b.has(c)||delete a.tool_choice}}(b),b.stream=!0,k||j||b.instructions&&""!==b.instructions.trim()||(b.instructions=f),b.store=!1,!b.prompt_cache_key&&this._currentSessionId&&(b.prompt_cache_key=this._currentSessionId),b.model=g,k){let a=Array.isArray(b.input)?b.input:[b.input];if(!a.some(a=>a?.type==="additional_tools")){let c="string"==typeof b.instructions&&b.instructions.trim()?b.instructions:f,d=[{type:"additional_tools",role:"developer",tools:Array.isArray(b.tools)?b.tools:[]}];c&&d.push({type:"message",role:"developer",content:[{type:"input_text",text:c}]}),a.unshift(...d)}b.input=a,b.instructions="",b.tools=null,b.tool_choice||="auto",b.parallel_tool_calls=!1}else delete b.parallel_tool_calls;let l=null;for(let a of["none","low","medium","high","xhigh"])if(b.model.endsWith(`-${a}`)){l=a,b.model=b.model.replace(`-${a}`,"");break}if(b.reasoning)k&&b.reasoning.effort&&(b.reasoning.effort=B(b.reasoning.effort)),k||b.reasoning.summary||(b.reasoning.summary="auto");else{let a=b.reasoning_effort||l||(k?"medium":"low"),c=k?B(a):a;b.reasoning=k?{effort:c}:{effort:c,summary:"auto"}}for(let a of(k&&(b.reasoning.context="all_turns"),delete b.reasoning_effort,b.reasoning&&b.reasoning.effort&&"none"!==b.reasoning.effort&&(b.include=["reasoning.encrypted_content"]),delete b.temperature,delete b.top_p,delete b.frequency_penalty,delete b.presence_penalty,delete b.logprobs,delete b.top_logprobs,delete b.n,delete b.seed,delete b.max_tokens,delete b.max_completion_tokens,delete b.max_output_tokens,delete b.user,delete b.prompt_cache_retention,delete b.metadata,delete b.stream_options,delete b.safety_identifier,delete b.previous_response_id,Object.keys(b)))E.has(a)||delete b[a];return b}}},47370:(a,b,c)=>{c.d(b,{BY:()=>d.BY,E5:()=>d.E5,SL:()=>d.SL,Zx:()=>d.Zx,_V:()=>d._V,j$:()=>d.j$,ox:()=>d.ox,rg:()=>d.rg,sZ:()=>d.sZ,uw:()=>d.uw});var d=c(9248)},49059:(a,b,c)=>{c.d(b,{vr:()=>j});var d=c(96179);let e=new Set(["none","off"]),f=["minimal","low","medium","high","xhigh","max"],g=new Map([["glm-5.3",["low","high","max"]],["glm-5.3-flash",["low","high","max"]],["glm-5.2",["high","xhigh"]],["kimi-k2.8-preview",["low","medium","high"]],["hy3",["low","high"]],["hy4-preview",["high"]],["deepseek-v4-pro",["low","high","xhigh"]],["deepseek-v4.1-flash",["low","high","max"]]]),h=/超出频率限制|频率限制|限额|frequency limit/i,i=/(\d{4}-\d{2}-\d{2})[\sT](\d{2}:\d{2}:\d{2})(?:\s*UTC\s*([+-]?[0-9:]+))?/i;class j extends d.L{constructor(){super("codebuddy-cn")}transformRequest(a,b,c,d){let h={...super.transformRequest(a,b,c,d),stream:!0},i=h.reasoning_effort;return!i||e.has(i)?(delete h.reasoning_effort,delete h.reasoning_summary):(h.reasoning_effort=function(a,b){let c=g.get(a);if(!c||c.includes(b))return b;let d=f.indexOf(b);if(-1===d)return b;let e=c.map(a=>({level:a,rank:f.indexOf(a)})).filter(a=>-1!==a.rank).sort((a,b)=>a.rank-b.rank);if(!e.length)return b;let h=e.filter(a=>a.rank<=d);return(h.length?h[h.length-1]:e[0]).level}(a,i),h.reasoning_summary="auto"),h}parseError(a,b){let c=null;try{c=JSON.parse(b||"")}catch{c=null}if(c&&"object"==typeof c){let a=c.msg||c.message||c.error?.message||"";if(6004===c.code||h.test(a))return{status:429,message:a||"CodeBuddy frequency limit (6004)",resetsAtMs:function(a){let b=i.exec(String(a||""));if(!b)return null;let c=new Date(`${b[1]}T${b[2]}${function(a){if(!a)return"+08:00";let b=a.startsWith("-")?"-":"+",[c,d="00"]=a.replace(/^[+-]/,"").split(":");return`${b}${c.padStart(2,"0")}:${d.padStart(2,"0")}`}(b[3])}`);return Number.isNaN(c.getTime())?null:c.getTime()}(a)}}return super.parseError(a,b)}}},54603:(a,b,c)=>{c.d(b,{Xj:()=>q});var d=c(19713),e=c(73024),f=c.n(e),g=c(76760),h=c.n(g),i=c(77598),j=c.n(i),k=c(49120);let l=h().join(k.n,"machine-id"),m=h().join(k.n,"auth"),n=h().join(m,"cli-secret"),o=null,p=null;async function q(a=null){let b=a||process.env.MACHINE_ID_SALT||"endpoint-proxy-salt",c=function(){if(o)return o;try{if(o=f().readFileSync(l,"utf8").trim())return o}catch{}try{o=(0,d.machineIdSync)()}catch{o=j().randomUUID()}try{f().mkdirSync(k.n,{recursive:!0}),f().writeFileSync(l,o,{mode:384})}catch{}return o}(),e="9r-cli-auth"===b?function(){if(p)return p;try{if(p=f().readFileSync(n,"utf8").trim())return p}catch{}p=j().randomBytes(32).toString("hex");try{f().mkdirSync(m,{recursive:!0}),f().writeFileSync(n,p,{mode:384})}catch{}return p}():"";return j().createHash("sha256").update(c+b+e).digest("hex").substring(0,16)}},55330:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.d(b,{SB:()=>C});var e=c(2648),f=c(98625),g=c(95128),h=c(11655),i=c(61433),j=c(8729),k=c(13511),l=c(43173),m=c(19946),n=c(73870),o=c(94515),p=c(95501),q=c(13120),r=c(38572),s=c(23013),t=c(9708),u=c(90926),v=c(26878),w=c(16046),x=c(49059),y=c(32447),z=c(22376),A=c(96179);c(15308);var B=a([m]);m=(B.then?(await B)():B)[0];let D={antigravity:new e.c,"codebuddy-cn":new x.vr,kimchi:new y.BL,"grok-cli":new z.hG,azure:new f.P,"gemini-cli":new g.V,github:new h.x,iflow:new i.r,qoder:new j.DH,kiro:new k.B,codex:new l.T,cursor:new m.o,cu:new m.o,vertex:new n.w("vertex"),"vertex-partner":new n.w("vertex-partner"),qwen:new o.R,opencode:new p.j9,"opencode-go":new q.H_,"grok-web":new r.$,"perplexity-web":new s.Ay,"ollama-local":new t.D,commandcode:new u.Ak,"xiaomi-tokenplan":new v.F,"mimo-free":new w.Yh,mmf:new w.Yh},E=new Map;function C(a){return D[a]?D[a]:(E.has(a)||E.set(a,new A.L(a)),E.get(a))}d()}catch(a){d(a)}})},55456:(a,b,c)=>{c.d(b,{CP:()=>q,yI:()=>n});var d=c(94755),e=c(74075),f=c.n(e);let g="1"===process.env.CURSOR_PROTOBUF_DEBUG,h=(a,...b)=>g&&console.log(`[PROTOBUF:${a}]`,...b);new TextDecoder;let i="1.1.3",j=new Set([1,2,3,9,10,11,27,1,25]);function k(a){let b=[];for(;a>=128;)b.push(127&a|128),a>>>=7;return b.push(127&a),new Uint8Array(b)}function l(a,b,c){let d=k(a<<3|b);if(0===b)return m(d,k(c));if(2===b){let a="string"==typeof c?new TextEncoder().encode(c):c instanceof Uint8Array?c:Buffer.isBuffer(c)?new Uint8Array(c):new Uint8Array(0);return m(d,k(a.length),a)}return new Uint8Array(0)}function m(...a){let b=new Uint8Array(a.reduce((a,b)=>a+b.length,0)),c=0;for(let d of a)b.set(d,c),c+=d.length;return b}function n(a,b,c=[],e=null,g=!1){h("BODY",`Generating: ${a.length} msgs, model=${b}, tools=${c.length}, reasoning=${e||"none"}, forceAgentMode=${g}`);let i=function(a,b,c=[],e=null,f=!1){return l(1,2,function(a,b,c=[],e=null,f=!1){let g,i=c?.length>0,j=i||f,n=[],o=[],p=[];for(let b=0;b<a.length;b++){let c=a[b],d=Array.isArray(c?.tool_calls)&&c.tool_calls.length>0,e=Array.isArray(c?.tool_results)&&c.tool_results.length>0;if(c?.role==="assistant"&&d&&e){h("ENCODE",`normalizing mixed assistant tool payload at msg[${b}] (calls=${c.tool_calls.length}, results=${c.tool_results.length})`),p.push({...c,tool_results:[]});let d=a[b+1],e=d?.role==="assistant"&&Array.isArray(d?.tool_results)&&d.tool_results.length>0,f=new Set(c.tool_results.map(a=>a?.tool_call_id).filter(a=>"string"==typeof a)),g=new Set((d?.tool_results||[]).map(a=>a?.tool_call_id).filter(a=>"string"==typeof a)),i=f.size>0&&f.size===g.size;if(i){for(let a of f)if(!g.has(a)){i=!1;break}}e&&i||p.push({role:"assistant",content:"",tool_results:c.tool_results});continue}p.push(c)}for(let a=0;a<p.length;a++){let b=p[a],c="user"===b.role?1:2,e=(0,d.A)(),f=a===p.length-1;n.push({content:b.content,role:c,messageId:e,isLast:f,hasTools:i,toolResults:b.tool_results||[]}),o.push({messageId:e,role:c})}let q=0;return"medium"===e?q=1:"high"===e&&(q=2),m(...n.map(a=>l(1,2,function(a,b,c,d=!1,e=!1,f=[],g=null){let h=f.length>0;return m(l(1,2,a),l(2,0,b),l(13,2,c),...g?[l(32,2,g)]:[],...h?f.map(a=>l(18,2,function(a){var b;let c,d,e=function(a){let b="string"==typeof a&&a.length>0?a:"tool";if(b.startsWith("mcp__")){let a=b.slice(5),c=a.indexOf("__");if(c>=0){let b=a.slice(0,c)||"custom",d=a.slice(c+2)||"tool";return`mcp_${b}_${d}`}return`mcp_custom_${a||"tool"}`}return b.startsWith("mcp_")?b:`mcp_custom_${b}`}(a.tool_name||a.name||""),f=a.raw_args||"{}",g=a.result_content||a.result||"",{toolCallId:h,modelCallId:i}=(b=a.tool_call_id||"",c="\nmc_",(d=b.indexOf(c))>=0?{toolCallId:b.slice(0,d),modelCallId:b.slice(d+c.length)}:{toolCallId:b,modelCallId:null}),j=a.tool_index||a.index||1,{serverName:k,selectedTool:n}=function(a){if("string"!=typeof a||!a.startsWith("mcp_"))return{serverName:"custom",selectedTool:a||"tool"};let b=a.slice(4),c=b.indexOf("_");return c<0?{serverName:"custom",selectedTool:b||"tool"}:{serverName:b.slice(0,c)||"custom",selectedTool:b.slice(c+1)||"tool"}}(e);return m(l(1,2,h),l(2,2,e),l(3,0,j>0?j:1),...i?[l(12,2,i)]:[],l(5,2,f),l(8,2,function(a,b,c,d,e=1){return m(l(1,0,19),l(28,2,m(l(1,2,c),l(2,2,d))),l(35,2,a),...b?[l(48,2,b)]:[],l(49,0,e>0?e:1))}(h,i,n,g,j)),l(11,2,function(a,b,c,d,e,f,g=1){let h;return m(l(1,0,19),l(27,2,(h=m(l(1,2,c),l(3,2,e),l(4,2,d)),l(1,2,h))),l(3,2,a),l(9,2,b),l(10,2,e),l(48,0,g>0?g:1),...f?[l(49,2,f)]:[])}(h,e,n,k,f,i,j)))}(a))):[],l(29,0,+!!e),l(47,0,e?2:1),...d&&e?[l(51,2,k(1))]:[])}(a.content,a.role,a.messageId,a.isLast,a.hasTools,a.toolResults))),l(2,0,1),l(3,2,new Uint8Array(0)),l(4,0,1),l(5,2,m(l(1,2,b),l(4,2,new Uint8Array(0)))),l(8,2,""),l(13,0,1),l(15,2,(g=m(l(1,2,new Uint8Array(0)),l(2,2,new Uint8Array(0))),m(l(1,2,"cursor\\aisettings"),l(3,2,new Uint8Array(0)),l(6,2,g),l(8,0,1),l(9,0,1)))),l(19,0,1),l(23,2,(0,d.A)()),l(26,2,m(l(1,2,process.platform||"linux"),l(2,2,process.arch||"x64"),l(3,2,process.version||"v20.0.0"),l(4,2,process.cwd?.()||"/"),l(5,2,new Date().toISOString()))),l(27,0,+!!j),...j?[l(29,2,k(1))]:[],...o.map(a=>l(30,2,function(a,b,c=null){return m(l(1,2,a),...c?[l(2,2,c)]:[],l(3,0,b))}(a.messageId,a.role))),...c?.length>0?c.map(a=>{let b,c,d;return l(34,2,(b=a.function?.name||a.name||"",c=a.function?.description||a.description||"",d=a.function?.parameters||a.input_schema||{},m(...b?[l(1,2,b)]:[],...c?[l(2,2,c)]:[],...Object.keys(d).length>0?[l(3,2,JSON.stringify(d))]:[],l(4,2,"custom"))))}):[],l(35,0,0),l(38,0,0),l(46,0,j?2:1),l(47,2,""),l(48,0,+!j),l(49,0,q),l(51,0,0),l(53,0,1),l(54,2,j?"Agent":"Ask"))}(a,b,c,e,f))}(a,b,c,e,g),j=function(a,b=!1){let c=a,d=0;b&&(c=new Uint8Array(f().gzipSync(Buffer.from(a))),d=1);let e=new Uint8Array(5+c.length);return e[0]=d,e[1]=c.length>>24&255,e[2]=c.length>>16&255,e[3]=c.length>>8&255,e[4]=255&c.length,e.set(c,5),e}(i,!1);return h("BODY",`Protobuf=${i.length}B, Framed=${j.length}B`),j}function o(a,b){let c=0,d=0,e=b;for(;e<a.length;){let b=a[e];if(c|=(127&b)<<d,e++,!(128&b))break;d+=7}return[c,e]}function p(a){let b=new Map,c=0;for(;c<a.length;){let[d,e,f,g]=function(a,b){let c;if(b>=a.length)return[null,null,null,b];let[d,e]=o(a,b),f=7&d,g=e;if(0===f)[c,g]=o(a,g);else if(2===f){let[b,d]=o(a,g);c=a.slice(d,d+b),g=d+b}else 1===f?(c=a.slice(g,g+8),g+=8):5===f?(c=a.slice(g,g+4),g+=4):c=null;return[d>>3,f,c,g]}(a,c);if(null===d)break;b.has(d)||b.set(d,[]),b.get(d).push({wireType:e,value:f}),c=g}return b}function q(a){try{let b=p(a);for(let a of b.keys())j.has(a)||h("SCHEMA",`Unknown response field #${a} detected. Schema v${i} may be outdated.`);if(b.has(1)){let a=function(a){let b=p(a),c="",d="",e="",f=!1;if(b.has(3)&&(c=new TextDecoder().decode(b.get(3)[0].value).split("\n")[0]),b.has(9)&&(d=new TextDecoder().decode(b.get(9)[0].value)),b.has(11)&&(f=0!==b.get(11)[0].value),b.has(27))try{let a=p(b.get(27)[0].value);if(a.has(1)){let b=p(a.get(1)[0].value);b.has(1)&&(d=new TextDecoder().decode(b.get(1)[0].value)),b.has(3)&&(e=new TextDecoder().decode(b.get(3)[0].value))}}catch(a){h("EXTRACT",`MCP parse error: ${a.message}`)}return(!e&&b.has(10)&&(e=new TextDecoder().decode(b.get(10)[0].value)),c&&d)?{id:c,type:"function",function:{name:d,arguments:e||"{}"},isLast:f}:null}(b.get(1)[0].value);if(a)return h("EXTRACT",`Tool call: ${a.function.name}`),{text:null,error:null,toolCall:a,thinking:null}}if(b.has(2)){let{text:a,thinking:c}=function(a){let b=p(a),c=null,d=null;if(b.has(1)&&(c=new TextDecoder().decode(b.get(1)[0].value)),b.has(25))try{let a=p(b.get(25)[0].value);a.has(1)&&(d=new TextDecoder().decode(a.get(1)[0].value))}catch(a){h("EXTRACT",`Thinking parse error: ${a.message}`)}return{text:c,thinking:d}}(b.get(2)[0].value);if(a||c)return{text:a,error:null,toolCall:null,thinking:c}}return{text:null,error:null,toolCall:null,thinking:null}}catch(b){return h("EXTRACT",`Decode failed (schema v${i}): ${b.message}`),{text:null,error:null,toolCall:null,thinking:null,raw:Buffer.from(a).toString("base64"),decodeError:b.message}}}},61433:(a,b,c)=>{c.d(b,{r:()=>h});var d=c(55511),e=c.n(d),f=c(15308),g=c(35024);class h extends f.H{constructor(){super("iflow",g.xq.iflow)}generateUUID(){return e().randomUUID()}createIFlowSignature(a,b,c,d){if(!d)return"";let f=`${a}:${b}:${c}`,g=e().createHmac("sha256",d);return g.update(f),g.digest("hex")}buildHeaders(a,b=!0){let c=`session-${this.generateUUID()}`,d=Date.now(),e=this.config.headers["User-Agent"]||"iFlow-Cli",f=a.apiKey||a.accessToken||"",g=this.createIFlowSignature(e,c,d,f),h={"Content-Type":"application/json",...this.config.headers,"session-id":c,"x-iflow-timestamp":d.toString(),"x-iflow-signature":g};return a.apiKey&&(h.Authorization=`Bearer ${a.apiKey}`),b&&(h.Accept="text/event-stream"),h}buildUrl(a,b,c=0,d=null){return this.config.baseUrl}transformRequest(a,b,c,d){return c&&b.messages&&!b.stream_options&&(b.stream_options={include_usage:!0}),b}}},73483:(a,b,c)=>{c.d(b,{Gh:()=>j,IF:()=>m,O9:()=>g,OF:()=>l,WL:()=>h,f5:()=>k,lm:()=>f});var d=c(47370),e=c(14170);let f={reset:"\x1b[0m",red:"\x1b[31m",green:"\x1b[32m",yellow:"\x1b[33m",blue:"\x1b[34m",cyan:"\x1b[36m"};function g(a){if(!a||"object"!=typeof a)return a;let b={...a};return void 0!==b.input_tokens&&(b.input_tokens+=2e3),void 0!==b.prompt_tokens&&(b.prompt_tokens+=2e3),void 0!==b.total_tokens?b.total_tokens+=2e3:void 0!==b.prompt_tokens&&void 0!==b.completion_tokens&&(b.total_tokens=b.prompt_tokens+b.completion_tokens),b}function h(a,b){if(!a||"object"!=typeof a)return a;let c={[e.h.CLAUDE]:["input_tokens","output_tokens","cache_read_input_tokens","cache_creation_input_tokens","estimated"],[e.h.GEMINI]:["promptTokenCount","candidatesTokenCount","totalTokenCount","cachedContentTokenCount","thoughtsTokenCount","estimated"],[e.h.OPENAI_RESPONSES]:["input_tokens","output_tokens","total_tokens","input_tokens_details","output_tokens_details","estimated"],default:["prompt_tokens","completion_tokens","total_tokens","cached_tokens","reasoning_tokens","prompt_tokens_details","completion_tokens_details","estimated"]},d=c[b];b===e.h.GEMINI_CLI||b===e.h.ANTIGRAVITY?d=c[e.h.GEMINI]:b===e.h.OPENAI_RESPONSE?d=c[e.h.OPENAI_RESPONSES]:d||(d=c.default);let f={};for(let b of d)void 0!==a[b]&&(f[b]=a[b]);return f}function i(a){if(!a||"object"!=typeof a||Array.isArray(a))return null;let b={},c=(a,c)=>{if(null==c)return;let d=Number(c);Number.isFinite(d)&&(b[a]=d)};return(c("prompt_tokens",a?.prompt_tokens),c("completion_tokens",a?.completion_tokens),c("total_tokens",a?.total_tokens),c("cache_read_input_tokens",a?.cache_read_input_tokens),c("cache_creation_input_tokens",a?.cache_creation_input_tokens),c("cached_tokens",a?.cached_tokens),c("reasoning_tokens",a?.reasoning_tokens),a?.prompt_tokens_details&&"object"==typeof a.prompt_tokens_details&&(b.prompt_tokens_details=a.prompt_tokens_details),a?.completion_tokens_details&&"object"==typeof a.completion_tokens_details&&(b.completion_tokens_details=a.completion_tokens_details),0===Object.keys(b).length)?null:b}function j(a){if(!a||"object"!=typeof a)return!1;for(let b of["prompt_tokens","completion_tokens","total_tokens","input_tokens","output_tokens","promptTokenCount","candidatesTokenCount"])if("number"==typeof a[b]&&a[b]>0)return!0;return!1}function k(a){if(!a||"object"!=typeof a)return null;if("message_delta"===a.type&&a.usage&&"object"==typeof a.usage)return i({prompt_tokens:a.usage.input_tokens||0,completion_tokens:a.usage.output_tokens||0,cache_read_input_tokens:a.usage.cache_read_input_tokens,cache_creation_input_tokens:a.usage.cache_creation_input_tokens});if(("response.completed"===a.type||"response.done"===a.type)&&a.response?.usage&&"object"==typeof a.response.usage){let b=a.response.usage,c=b.input_tokens_details?.cached_tokens;return i({prompt_tokens:b.input_tokens||b.prompt_tokens||0,completion_tokens:b.output_tokens||b.completion_tokens||0,cached_tokens:c,reasoning_tokens:b.output_tokens_details?.reasoning_tokens,prompt_tokens_details:c?{cached_tokens:c}:void 0})}if(a.usage&&"object"==typeof a.usage&&void 0!==a.usage.prompt_tokens)return i({prompt_tokens:a.usage.prompt_tokens,completion_tokens:a.usage.completion_tokens||0,cached_tokens:a.usage.prompt_tokens_details?.cached_tokens||a.usage.prompt_cache_hit_tokens,reasoning_tokens:a.usage.completion_tokens_details?.reasoning_tokens,prompt_tokens_details:a.usage.prompt_tokens_details,completion_tokens_details:a.usage.completion_tokens_details});let b=a.usageMetadata||a.response?.usageMetadata;return b&&"object"==typeof b?i({prompt_tokens:b.promptTokenCount||0,completion_tokens:b.candidatesTokenCount||0,total_tokens:b.totalTokenCount,cached_tokens:b.cachedContentTokenCount,reasoning_tokens:b.thoughtsTokenCount}):!0===a.done&&"number"==typeof a.prompt_eval_count?i({prompt_tokens:a.prompt_eval_count||0,completion_tokens:a.eval_count||0,total_tokens:(a.prompt_eval_count||0)+(a.eval_count||0),cached_tokens:a.prompt_eval_cached_count||0}):null}function l(a,b,c=e.h.OPENAI){var d,f;return d=function(a){if(!a||"object"!=typeof a)return 0;try{let b=JSON.stringify(a).length;return Math.ceil(b/4)}catch(a){return 0}}(a),f=b&&!(b<=0)?Math.max(1,Math.floor(b/4)):0,c===e.h.CLAUDE?g({input_tokens:d,output_tokens:f,estimated:!0}):g({prompt_tokens:d,completion_tokens:f,total_tokens:d+f,estimated:!0})}function m(a,b,c=null,e=null,g=null){if(!b||"object"!=typeof b)return;let h=a?.toUpperCase()||"UNKNOWN",i=b?.prompt_tokens||b?.input_tokens||0,j=b?.completion_tokens||b?.output_tokens||0,k=e?e.slice(0,8)+"...":"unknown",l=`[${new Date().toLocaleTimeString("en-US",{hour12:!1,hour:"2-digit",minute:"2-digit",second:"2-digit"})}] 📊 ${f.green}[USAGE] ${h} | in=${i} | out=${j} | account=${k}${f.reset}`;b.estimated&&(l+=` ${f.yellow}(estimated)${f.reset}`);let n=b.cache_read_input_tokens||b.cached_tokens||b.prompt_tokens_details?.cached_tokens;n&&(l+=` | cache_read=${n}`);let o=b.cache_creation_input_tokens;o&&(l+=` | cache_create=${o}`);let p=b.reasoning_tokens;p&&(l+=` | reasoning=${p}`),console.log(l);let q={prompt_tokens:i,completion_tokens:j,cache_read_input_tokens:n||0,cache_creation_input_tokens:o||0,reasoning_tokens:p||0};(0,d.sZ)({model:c,provider:a,connectionId:e,tokens:q,apiKey:g||void 0}).catch(()=>{}),(0,d.E5)({model:c,provider:a,connectionId:e,tokens:q,status:"200 OK"}).catch(()=>{})}},73870:(a,b,c)=>{c.d(b,{w:()=>k});var d=c(15308),e=c(35024),f=c(8590),g=c(39609);let h=new Map;function i(a){if("string"!=typeof a)return null;try{let b=JSON.parse(a);if("authorized_user"===b.type&&b.client_id&&b.client_secret&&b.refresh_token)return b;return null}catch{return null}}async function j(a){if(h.has(a))return h.get(a);let b=await fetch(`https://aiplatform.googleapis.com/v1/publishers/google/models/__probe__:generateContent?key=${a}`,{method:"POST",headers:{"Content-Type":"application/json"},body:"{}"}),c=await b.json().catch(()=>null),d=(c?.[0]?.error?.message||c?.error?.message||"").match(/projects\/([^/]+)\//),e=d?.[1]||null;return e&&h.set(a,e),e}class k extends d.H{constructor(a="vertex"){super(a,e.xq[a]||{})}buildUrl(a,b,c=0,d=null){let e=(0,f.Sc)(d?.apiKey),g=i(d?.apiKey),h=!!e||!!g||!!d?.accessToken,j=h?null:d?.apiKey,k=e?.project_id||g?.quota_project_id||d?.providerSpecificData?.projectId;if("vertex-partner"===this.provider){if(!k)throw Error("Vertex partner models require a project_id. Add it in providerSpecificData or use Service Account JSON.");let a=`https://aiplatform.googleapis.com/v1/projects/${k}/locations/global/endpoints/openapi/chat/completions`;return j?`${a}?key=${j}`:a}let l=b?"streamGenerateContent":"generateContent";if(h){if(!k)throw Error("Vertex OAuth/ADC requires a project_id. Add quota_project_id to your ADC JSON or set providerSpecificData.projectId.");let c=d?.providerSpecificData?.location||"us-central1",e=`https://aiplatform.googleapis.com/v1/projects/${k}/locations/${c}/publishers/google/models/${a}:${l}`;return b&&(e+="?alt=sse"),e}let m=`https://aiplatform.googleapis.com/v1/publishers/google/models/${a}:${l}`;return b&&(m+="?alt=sse"),j&&(m+=b?`&key=${j}`:`?key=${j}`),m}buildHeaders(a,b=!0){let c={"Content-Type":"application/json"};return a.accessToken&&(c.Authorization=`Bearer ${a.accessToken}`),b&&(c.Accept="text/event-stream"),c}async refreshCredentials(a,b){let c=(0,f.Sc)(a?.apiKey);if(!c)return null;let d=await (0,f.pb)(c,b);return d?{accessToken:d.accessToken,expiresAt:d.expiresAt}:null}async execute({model:a,body:b,stream:c,credentials:d,signal:e,log:h,proxyOptions:k=null}){let l=(0,f.Sc)(d?.apiKey),m=i(d?.apiKey);if(l){let a=await (0,f.pb)(l,h);if(!a?.accessToken)throw Error("Vertex: failed to mint access token from Service Account JSON");d.accessToken=a.accessToken}if(m){let a=await (0,f.I9)(m.refresh_token,m.client_id,m.client_secret,h);if(!a?.accessToken)throw Error("Vertex: failed to refresh access token from ADC JSON (authorized_user)");d.accessToken=a.accessToken}if("vertex-partner"===this.provider&&!l&&!m&&!d?.providerSpecificData?.projectId){let a=await j(d.apiKey);if(!a)throw Error("Vertex: could not resolve project_id from API key. Please add it manually in provider settings.");h?.debug?.("VERTEX",`Resolved project_id: ${a}`),d.providerSpecificData={...d.providerSpecificData,projectId:a}}let n=this.buildUrl(a,c,0,d),o=this.buildHeaders(d,c),p=this.transformRequest(a,b,c,d);return{response:await (0,g.proxyAwareFetch)(n,{method:"POST",headers:o,body:JSON.stringify(p),signal:e},k),url:n,headers:o,transformedBody:p}}}},74010:(a,b,c)=>{c.d(b,{c:()=>f});let d=["reasoning_content","reasoning","reasoning_details"],e=[{match:/claude/i,drop:["temperature"]},{provider:"github",match:/gpt-5\.4/i,drop:["temperature"]},{provider:"github",match:a=>/claude/i.test(a)&&!/claude.*(opus|sonnet).*4[.\-]6/i.test(a),drop:["thinking","reasoning_effort"]},{provider:"groq",dropMessageFields:d},{provider:"mistral",dropMessageFields:d},{provider:"cerebras",dropMessageFields:d}];function f(a,b,c){if(!b||!c||"object"!=typeof c)return c;for(let d of e)if((!d.provider||d.provider===a)&&(!d.match||("function"==typeof d.match?d.match(b):d.match.test(b)))){for(let a of d.drop||[])void 0!==c[a]&&delete c[a];Array.isArray(d.dropMessageFields)&&Array.isArray(c.messages)&&(c.messages=function(a,b){let c=!1,d=a.map(a=>a&&"assistant"===a.role&&b.some(b=>void 0!==a[b])?(c=!0,Object.fromEntries(Object.entries(a).filter(([a])=>!b.includes(a)))):a);return c?d:a}(c.messages,d.dropMessageFields))}return c}},81756:(a,b,c)=>{c.d(b,{JA:()=>h});var d=c(55511),e=c.n(d),f=c(85081);function g(a,b=""){return e().createHash("sha256").update(a+b).digest("hex")}function h(a,b=null,c=!0){let d=a.includes("::")?a.split("::")[1]:a,i=b||g(d,"machineId"),j=(0,f.Ay)(d,f.Ay.DNS),k=g(d),l=function(a){let b=Math.floor(Date.now()/1e6),c=new Uint8Array([b>>40&255,b>>32&255,b>>24&255,b>>16&255,b>>8&255,255&b]),d=165;for(let a=0;a<c.length;a++)c[a]=(c[a]^d)+a%256&255,d=c[a];let e="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_",f="";for(let a=0;a<c.length;a+=3){let b=c[a],d=a+1<c.length?c[a+1]:0,g=a+2<c.length?c[a+2]:0;f+=e[b>>2],f+=e[(3&b)<<4|d>>4],a+1<c.length&&(f+=e[(15&d)<<2|g>>6]),a+2<c.length&&(f+=e[63&g])}return`${f}${a}`}(i),m="linux";"u">typeof process&&("win32"===process.platform?m="windows":"darwin"===process.platform&&(m="macos"));let n="x64";return"u">typeof process&&"arm64"===process.arch&&(n="aarch64"),{authorization:`Bearer ${d}`,"connect-accept-encoding":"gzip","connect-protocol-version":"1","content-type":"application/connect+proto","user-agent":"connect-es/1.6.1","x-amzn-trace-id":`Root=${e().randomUUID()}`,"x-client-key":k,"x-cursor-checksum":l,"x-cursor-client-version":"3.1.0","x-cursor-client-type":"ide","x-cursor-client-os":m,"x-cursor-client-arch":n,"x-cursor-client-device-type":"desktop","x-cursor-config-version":e().randomUUID(),"x-cursor-timezone":Intl.DateTimeFormat().resolvedOptions().timeZone||"UTC","x-ghost-mode":c?"true":"false","x-request-id":e().randomUUID(),"x-session-id":j}}},90926:(a,b,c)=>{c.d(b,{Ak:()=>i});var d=c(55511),e=c(15308),f=c(35024),g=c(47723);let h=new Set([502,503,504]);class i extends e.H{constructor(){super("commandcode",f.xq.commandcode)}transformRequest(a,b,c,d){return b.stream=!0,b}buildHeaders(a,b=!0){let c={"Content-Type":"application/json",...this.config.headers||{},"x-session-id":(0,d.randomUUID)()},e=a?.apiKey||a?.accessToken;return e&&(c.Authorization=`Bearer ${e}`),b&&(c.Accept="text/event-stream"),c}async execute(a){for(let b=0;;b++){let c=await super.execute(a);if(!c?.response?.ok||!c.response.body)return c;let d=await j(c.response,a.model);if(!(!d.ok&&h.has(d.status))||b>=2)return{...c,response:d};a.log?.debug?.("RETRY",`CommandCode stream verdict ${d.status}, retry ${b+1}/2`),await new Promise(a=>setTimeout(a,1e3*(b+1)))}}parseError(a,b){let c=null;try{c=JSON.parse(b||"{}")}catch{c=null}let d=c?.error||c,e=d?.message||c?.message||b||a.statusText;return{status:Number(d?.code||d?.statusCode||a.status)||a.status,message:e||`CommandCode upstream error: ${a.status}`}}}async function j(a,b){var c,d;let e,f=a.body.getReader(),h=new TextDecoder,i="",j=[],k=null;try{for(;;){let{value:a,done:b}=await f.read();if(b){let a=i.trim();if(a)try{let b=a.startsWith("data:")?a.slice(5).trim():a,c=JSON.parse(b);c?.type==="error"&&(k=c)}catch{}break}j.push(a);let c=(i+=h.decode(a,{stream:!0})).split("\n");i=c.pop()||"";let d=!1;for(let a of c){let b,c=a.trim();if(!c)continue;let e=c.startsWith("data:")?c.slice(5).trim():c;if(!e||"[DONE]"===e){d=!0;break}try{b=JSON.parse(e)}catch{continue}if(b?.type==="error"){k=b,d=!0;break}if(b?.type==="text-delta"||b?.type==="reasoning-delta"||b?.type==="tool-input-start"||b?.type==="tool-call"||b?.type==="finish"||b?.type==="finish-step"){d=!0;break}}if(d)break}}catch{try{f.releaseLock()}catch{}return a}if(k){try{await f.cancel()}catch{}let{statusCode:a,message:b,type:c}=function(a){if(!a||"object"!=typeof a)return{statusCode:503,message:"CommandCode upstream error",type:"server_error"};let b=a.error??a.message??"unknown",c="",d=null,e="server_error";if("object"==typeof b&&null!==b?(c=b.message||b.error||JSON.stringify(b),b.statusCode&&Number.isInteger(Number(b.statusCode))?d=Number(b.statusCode):b.status&&Number.isInteger(Number(b.status))&&(d=Number(b.status)),b.type&&(e=b.type)):c="string"==typeof b?b:JSON.stringify(b),a.statusCode&&Number.isInteger(Number(a.statusCode))&&(d=Number(a.statusCode)),!d||d<400||d>599){let a=c.toLowerCase();a.includes("rate limit")||a.includes("too many requests")?(d=429,e="rate_limit_error"):a.includes("unauthorized")||a.includes("invalid api key")||a.includes("authentication")?(d=401,e="authentication_error"):a.includes("payment required")||a.includes("billing")?(d=402,e="billing_error"):a.includes("quota")||a.includes("forbidden")||a.includes("permission")?(d=403,e="permission_error"):a.includes("not found")?(d=404,e="invalid_request_error"):a.includes("unavailable")||a.includes("overloaded")||a.includes("server error")?(d=503,e="server_error"):d=503}return{statusCode:d,message:c,type:e}}(k);return new Response(JSON.stringify({error:{message:`[CommandCode error: ${b}]`,type:c,code:a}}),{status:a,statusText:503===a?"Service Unavailable":429===a?"Too Many Requests":"Bad Gateway",headers:{"Content-Type":"application/json","Access-Control-Allow-Origin":"*"}})}return function(a,b,c=null){let d=new TextDecoder,e=new TextEncoder,f="",h={model:b},i=(a,b)=>{if(a)for(let c of Array.isArray(a)?a:[a])null!=c&&b.enqueue(e.encode(`data: ${JSON.stringify(c)}
|
|
139
156
|
|
|
140
|
-
`}async function x(a,b,c,d,e,f,g){let h="",i=null,j=[];for await(let b of v(a,g)){if(b.backendUuid&&(i=b.backendUuid),b.error)return new Response(JSON.stringify({error:{message:b.error,type:"upstream_error",code:"PPLX_ERROR"}}),{status:502,headers:{"Content-Type":"application/json"}});if(b.thinking){j.push(b.thinking);continue}if(b.done){h=b.answer||h;break}b.answer&&(h=b.answer)}s(e,f,h=t(h),i);let k=j.length>0?j.join("\n"):void 0,l={role:"assistant",content:h};k&&(l.reasoning_content=k);let m=Math.ceil(f.length/4),n=Math.ceil(h.length/4);return new Response(JSON.stringify({id:c,object:"chat.completion",created:d,model:b,system_fingerprint:null,choices:[{index:0,message:l,finish_reason:"stop",logprobs:null}],usage:{prompt_tokens:m,completion_tokens:n,total_tokens:m+n}}),{status:200,headers:{"Content-Type":"application/json"}})}class y extends d.H{constructor(){super("perplexity-web",e.xq["perplexity-web"])}async execute({model:a,body:b,stream:c,credentials:d,signal:e,log:j}){var k,l,m,n,o;let p,u,y,z,A,B=b?.messages;if(!B||!Array.isArray(B)||0===B.length)return{response:new Response(JSON.stringify({error:{message:"Missing or empty messages array",type:"invalid_request"}}),{status:400,headers:{"Content-Type":"application/json"}}),url:f,headers:{},transformedBody:b};(b?.thinking===!0||b?.reasoning_effort!=null&&"none"!==b.reasoning_effort)&&i[a]?(p="copilot",u=i[a],j?.info?.("PPLX-WEB",`Thinking mode → ${a} using ${u}`)):h[a]?[p,u]=h[a]:(p="copilot",u=a,j?.info?.("PPLX-WEB",`Unmapped model ${a}, using as raw preference`));let C=function(a){let b="",c=[];for(let d of a){let a=String(d.role||"user");"developer"===a&&(a="system");let e="";"string"==typeof d.content?e=d.content:Array.isArray(d.content)&&(e=d.content.filter(a=>"text"===a.type).map(a=>String(a.text||"")).join(" ")),e.trim()&&("system"===a?b+=e+"\n":("user"===a||"assistant"===a)&&c.push({role:a,content:e}))}let d="";return c.length>0&&"user"===c[c.length-1].role&&(d=c.pop().content),{systemMsg:b,history:c,currentMsg:d}}(B),D=function(a){if(0===a.length)return null;let b=r(a),c=q.get(b);return c?Date.now()-c.ts>36e5?(q.delete(b),null):c.backendUuid:null}(C.history);D&&j?.info?.("PPLX-WEB",`Session continue: ${D.slice(0,12)}...`);let E=function(a,b,c){if(b)return a.currentMsg;let d={},e=[];a.systemMsg.trim()&&e.push(a.systemMsg.trim());let f=function(a){if(!Array.isArray(a)||0===a.length)return"";let b=a.map(a=>{let b=a?.function||a||{},c=b.name||"unnamed",d=(b.description||"").split("\n")[0].slice(0,200);return`- ${c}: ${d}`});return`Available tools (reference only, cannot invoke):
|
|
141
|
-
${b.join("\n")}`}(c);f&&e.push(f),e.push("You have built-in web search. Answer questions directly using search results."),d.instructions=e,a.history.length>0&&(d.history=a.history),a.currentMsg?d.query=a.currentMsg:0===a.history.length&&(d.query="");let g=JSON.stringify(d);return g.length>96e3?g.slice(-96e3):g}(C,D,b?.tools);if(!E.trim())return{response:new Response(JSON.stringify({error:{message:"Empty query after processing",type:"invalid_request"}}),{status:400,headers:{"Content-Type":"application/json"}}),url:f,headers:{},transformedBody:b};let F=(k=p,l=u,A="u">typeof Intl?Intl.DateTimeFormat().resolvedOptions().timeZone:"UTC",{query_str:E,params:{query_str:E,search_focus:"internet",mode:k,model_preference:l,sources:["web"],attachments:[],frontend_uuid:crypto.randomUUID(),frontend_context_uuid:crypto.randomUUID(),version:g,language:"en-US",timezone:A,search_recency_filter:null,is_incognito:!0,use_schematized_api:!0,last_backend_uuid:D}}),G={"Content-Type":"application/json",Accept:"text/event-stream",Origin:"https://www.perplexity.ai",Referer:"https://www.perplexity.ai/","User-Agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/130.0.0.0 Safari/537.36","X-App-ApiClient":"default","X-App-ApiVersion":g};d.accessToken?G.Authorization=`Bearer ${d.accessToken}`:d.apiKey&&(G.Cookie=`__Secure-next-auth.session-token=${d.apiKey}`),j?.info?.("PPLX-WEB",`Query to ${a} (pref=${u}, mode=${p}), len=${E.length}`);let H={method:"POST",headers:G,body:JSON.stringify(F)};e&&(H.signal=e);try{y=await fetch(f,H)}catch(a){return j?.error?.("PPLX-WEB",`Fetch failed: ${a.message||String(a)}`),{response:new Response(JSON.stringify({error:{message:`Perplexity connection failed: ${a.message||String(a)}`,type:"upstream_error"}}),{status:502,headers:{"Content-Type":"application/json"}}),url:f,headers:G,transformedBody:F}}if(!y.ok){let a=y.status,b=`Perplexity returned HTTP ${a}`;return 401===a||403===a?b="Perplexity auth failed — session cookie may be expired. Re-paste your __Secure-next-auth.session-token.":429===a&&(b="Perplexity rate limited. Wait a moment and retry."),j?.warn?.("PPLX-WEB",b),{response:new Response(JSON.stringify({error:{message:b,type:"upstream_error",code:`HTTP_${a}`}}),{status:a,headers:{"Content-Type":"application/json"}}),url:f,headers:G,transformedBody:F}}if(!y.body)return{response:new Response(JSON.stringify({error:{message:"Perplexity returned empty response body",type:"upstream_error"}}),{status:502,headers:{"Content-Type":"application/json"}}),url:f,headers:G,transformedBody:F};let I=`chatcmpl-pplx-${crypto.randomUUID().slice(0,12)}`,J=Math.floor(Date.now()/1e3);if(c){let b;z=new Response((m=y.body,n=C.history,o=C.currentMsg,b=new TextEncoder,new ReadableStream({async start(c){try{c.enqueue(b.encode(w({id:I,object:"chat.completion.chunk",created:J,model:a,system_fingerprint:null,choices:[{index:0,delta:{role:"assistant"},finish_reason:null,logprobs:null}]})));let d="",f=null;for await(let g of v(m,e)){if(g.backendUuid&&(f=g.backendUuid),g.error){c.enqueue(b.encode(w({id:I,object:"chat.completion.chunk",created:J,model:a,system_fingerprint:null,choices:[{index:0,delta:{content:`[Error: ${g.error}]`},finish_reason:null,logprobs:null}]})));break}if(g.thinking){c.enqueue(b.encode(w({id:I,object:"chat.completion.chunk",created:J,model:a,system_fingerprint:null,choices:[{index:0,delta:{reasoning_content:g.thinking+"\n"},finish_reason:null,logprobs:null}]})));continue}if(g.done){d=g.answer||d;break}let e=g.delta||"";e&&(e=t(e,!1))&&c.enqueue(b.encode(w({id:I,object:"chat.completion.chunk",created:J,model:a,system_fingerprint:null,choices:[{index:0,delta:{content:e},finish_reason:null,logprobs:null}]}))),g.answer&&(d=g.answer)}c.enqueue(b.encode(w({id:I,object:"chat.completion.chunk",created:J,model:a,system_fingerprint:null,choices:[{index:0,delta:{},finish_reason:"stop",logprobs:null}]}))),c.enqueue(b.encode("data: [DONE]\n\n")),s(n,o,t(d),f)}catch(d){c.enqueue(b.encode(w({id:I,object:"chat.completion.chunk",created:J,model:a,system_fingerprint:null,choices:[{index:0,delta:{content:`[Stream error: ${d.message||String(d)}]`},finish_reason:"stop",logprobs:null}]}))),c.enqueue(b.encode("data: [DONE]\n\n"))}finally{c.close()}}})),{status:200,headers:{"Content-Type":"text/event-stream","Cache-Control":"no-cache","X-Accel-Buffering":"no"}})}else z=await x(y.body,a,I,J,C.history,C.currentMsg,e);return{response:z,url:f,headers:G,transformedBody:F}}}},26878:(a,b,c)=>{c.d(b,{F:()=>f});var d=c(96179),e=c(35024);class f extends d.L{constructor(){super("xiaomi-tokenplan")}buildUrl(a,b,c=0,d=null){let f=(0,e.Yg)(d);return`${f}/chat/completions`}}},28681:(a,b,c)=>{c.d(b,{B:()=>K});var d=c(15308),e=c(35024),f=c(6382),g=c(94755),h=c(8590);let i={"Content-Type":"text/event-stream","Cache-Control":"no-cache",Connection:"keep-alive"};var j=c(66306),k=c(41004);let l=new Set(["assistantResponseEvent","reasoningContentEvent","codeEvent","toolUseEvent","messageStopEvent","metadataEvent","MetadataEvent","contextUsageEvent","meteringEvent","metricsEvent"]),m=new TextEncoder,n=new TextDecoder,o=Uint32Array.from({length:256},(a,b)=>{let c=b;for(let a=0;a<8;a++)c=c>>>1^(1&c?0xedb88320:0);return c>>>0}),p=Object.freeze({tool:"Retry the previous response because its Kiro tool_call wrapper was malformed. If you use the wrapper tool named tool_call, its input must contain a non-empty name and an arguments field.",ellipsis:"Retry the previous response because it ended with only an ellipsis. Return the complete final answer, not only ... or ….",short_final:"Retry the previous response because its final only announced a future action. Complete the check now and return the result or a concrete blocker."}),q=/^(?:(?:(?:現在|接著|接下來|下一步)[,,::\s]*(?:我(?:只)?(?:會|要|將|再)?\s*)?|我只再)(?:補|查|確認|驗證|追(?:查|蹤)?|繼續|檢查|測試)|我(?:會|要|將)(?:再|重新)?(?:補(?:齊|查)?|抓取|查(?:詢)?|確認|驗證|追(?:查|蹤)?|繼續|檢查|測試)|(?:(?:next|now|then)\b[\s,:-]*)?(?:i(?:'ll| will| am going to| need to)|let me)\s+(?:verify|check|confirm|validate|investigate|trace|continue|follow up|test)\b)/iu,r=/^目前證據顯示[\s\S]{1,700}[。.!?;;]\s*最後補查\s+504\s+access\s+log[,,]\s*確認\s+host[//]路徑與是否為集中流量[。.!]?$/iu,s=/^(?:(?:next|now|then)\b[\s,:-]*)?(?:i(?:'ll| will| am going to| need to)|let me)\s+(?:verify|check|confirm|validate|investigate|trace|continue|follow up|test)\b/iu,t=/(?:[:;\n]|[.!?]\s+\S|\b(?:status|checksum|response|deployment)\s+(?:is|are|was|were|matches?|equals?|returned)\b)/iu,u=/^(?:(?:現在|接著|接下來|下一步)[,,::\s]*(?:我(?:只)?(?:會|要|將|再)?\s*)?|我只再|我(?:會|要|將)(?:再|重新)?)(?:補|抓取|查|確認|驗證|追|繼續|檢查|測試)/u,v=/(?:[。!?]\s*\S|(?:版本|狀態|回應|結果|部署|校驗碼)(?:是|為|等於|顯示))/u,w=/(?:請(?:你|先)|你(?:先|需要|可以|提供|確認|批准|允許)|等待(?:你|使用者)|等你|核准|同意|授權|\b(?:after|when|once)\s+you\b|\byour\s+(?:approval|confirmation|permission|input)\b|\bwait(?:ing)?\s+for\s+you\b|\bplease\s+(?:approve|confirm|provide|send)\b)/iu,x=/(?:已(?:經)?完成|完成(?:了|驗證|確認)|修復完成|確認無誤|驗證(?:完成|通過)|測試(?:均)?通過|結論|總結|\b(?:done|completed|fixed|verified|confirmed|passed|in conclusion|summary)\b|\b(?:is|are) complete\b)/iu,y=/(?:顯示|發現|因此|成功|失敗|正常|無錯誤|沒有錯誤|\b(?:found|shows?|showed|because|therefore|succeeded|failed|healthy|green|no errors?)\b)/iu;function z(a){let b=0xffffffff;for(let c of a)b=o[(b^c)&255]^b>>>8;return(0xffffffff^b)>>>0}function A(a,b){let c=Number.parseInt(process.env?.[a]||"",10);return Number.isFinite(c)&&c>0?c:b}function B(a,b){let c=new Uint8Array(b),d=0;for(let b of a)c.set(b,d),d+=b.byteLength;return c}function C(a){let b=Error(a?.message||a||"Request aborted");return b.name="AbortError",b}async function D(a,b,c,d){let e,f;if(b?.aborted)throw C(b.reason);let g=new Promise((a,b)=>{e=setTimeout(()=>b(Error(d)),c)}),h=new Promise((a,c)=>{f=()=>c(C(b.reason)),b?.addEventListener("abort",f,{once:!0})});try{return await Promise.race([a.read(),g,h])}finally{clearTimeout(e),b?.removeEventListener?.("abort",f)}}async function E(a,b,c,d){let e=a?.body?.getReader?.();if(!e)return"";let f=[],g=0;try{for(;g<c;){let{done:a,value:h}=await D(e,b,d,"Kiro retry error body stalled");if(a)break;let i=c-g,j=h.byteLength>i?h.slice(0,i):h;if(f.push(j),g+=j.byteLength,h.byteLength>i)break}}finally{await e.cancel("bounded Kiro retry error body").catch(()=>{})}return n.decode(B(f,g))}function F(a){let b=String(a||"").trim().replace(/([a-z])([A-Z])/g,"$1_$2").toLowerCase().replace(/[\s-]+/g,"_");return["endturn","end_turn","stop","stop_sequence"].includes(b)?"end_turn":["tooluse","tool_use","tool_calls"].includes(b)?"tool_use":["maxtokens","max_tokens","max_output_tokens","length"].includes(b)?"max_tokens":b||null}function G(a,b){return["malformed_model_output","invalid_model_output"].includes(a)?"retryable_protocol_failure":["cancelled","pause_turn","model_context_window_exceeded"].includes(a)?"terminal_incomplete":"refusal"===a||/(?:content.*filter|guardrail|safety|policy|blocked)/u.test(a)?"terminal_refusal":"max_tokens"===a?b?"terminal_incomplete":"length":a&&!["end_turn","tool_use"].includes(a)?"unknown_failure":b||"tool_use"===a?"tool_use":a&&"end_turn"!==a?"unknown_failure":"complete"}function H(a,b){if(!b)return a;if(!a)return b;let c=a=>{let b=G(a,!1);return"terminal_refusal"===b?6:"terminal_incomplete"===b?5:"unknown_failure"===b?4:"retryable_protocol_failure"===b?3:"length"===b?2:1};return c(b)>c(a)?b:a}function I(a){return["...","…"].includes(String(a||"").trim())}function J(a,b,c){return m.encode(`data: ${JSON.stringify({error:{message:b,type:"upstream_error",code:a,...c?{details:c}:{}}})}
|
|
142
|
-
|
|
143
|
-
data: [DONE]
|
|
157
|
+
`))},j=new TransformStream({transform(a,b){let c=(f+=d.decode(a,{stream:!0})).split("\n");for(let a of(f=c.pop()||"",c)){let c=a.trim();c&&i((0,g.convertCommandCodeToOpenAI)(c,h),b)}},flush(a){let b=f.trim();b&&i((0,g.convertCommandCodeToOpenAI)(b,h),a),a.enqueue(e.encode("data: [DONE]\n\n"))}});return new Response(a.pipeThrough(j),{status:c?.status||200,statusText:c?.statusText||"OK",headers:function(a){let b=new Headers;if(a?.headers)for(let[c,d]of a.headers.entries())b.set(c,d);return b.set("Content-Type","text/event-stream"),b.set("Cache-Control","no-cache"),b.set("Connection","keep-alive"),b}(c)})}((c=j,d=f,e=!1,new ReadableStream({async pull(a){if(!e)for(let b of(e=!0,c))a.enqueue(b);try{let{value:b,done:c}=await d.read();c?a.close():a.enqueue(b)}catch(b){a.error(b)}},async cancel(a){try{await d.cancel(a)}catch{}}})),b,a)}},94515:(a,b,c)=>{c.d(b,{R:()=>i});var d=c(96179),e=c(35024),f=c(75924);let g="QwenCode/0.12.3 (linux; x64)",h={role:"system",content:[{type:"text",text:"",cache_control:{type:"ephemeral"}}]};class i extends d.L{constructor(){super("qwen")}buildUrl(a,b,c=0,d=null){let e=d?.providerSpecificData?.resourceUrl,f=e?e.replace(/^https?:\/\//,"").replace(/\/$/,""):"portal.qwen.ai";return`https://${f}/v1/chat/completions`}buildHeaders(a,b=!0){return function(a,b=!0){let c=a?.apiKey||a?.accessToken||"",d={"Content-Type":"application/json",Authorization:`Bearer ${c}`,"User-Agent":g,"X-DashScope-AuthType":"qwen-oauth","X-DashScope-CacheControl":"enable","X-DashScope-UserAgent":g,"X-Stainless-Arch":"x64","X-Stainless-Lang":"js","X-Stainless-Os":"Linux","X-Stainless-Package-Version":"5.11.0","X-Stainless-Retry-Count":"1","X-Stainless-Runtime":"node","X-Stainless-Runtime-Version":"v18.19.1",Connection:"keep-alive","Accept-Language":"*","Sec-Fetch-Mode":"cors"};return d.Accept=b?"text/event-stream":"application/json",d}(a,b)}transformRequest(a,b,c,d){let e=b&&"object"==typeof b?{...b}:b;c&&e?.messages&&!e.stream_options&&!e.thinking&&!e.enable_thinking&&!1!==e.stream&&(e.stream_options={include_usage:!0});var f=e=function(a){let b;if(!0!==(b=a?.thinking)&&a?.enable_thinking!==!0&&("object"!=typeof b||null===b||Array.isArray(b)||"enabled"!==b.type))return a;let c=a.tool_choice;return"required"!==c&&("object"!=typeof c||null===c)?a:{...a,tool_choice:"auto"}}(e);if(!f||"object"!=typeof f)return f;let g={...f};return Array.isArray(g.messages)?g.messages=[h,...g.messages]:g.messages=[h],g}async refreshCredentials(a,b){if(!a?.refreshToken)return null;try{let c=await fetch(f.NA.qwen.token,{method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded",Accept:"application/json"},body:new URLSearchParams({grant_type:"refresh_token",refresh_token:a.refreshToken,client_id:e.xq.qwen.clientId})});if(!c.ok)return null;let d=await c.json();return b?.info?.("TOKEN","qwen refreshed"),{accessToken:d.access_token,refreshToken:d.refresh_token||a.refreshToken,expiresIn:d.expires_in,providerSpecificData:{...a.providerSpecificData||{},...d.resource_url?{resourceUrl:d.resource_url}:{}}}}catch(a){return b?.error?.("TOKEN",`qwen refresh error: ${a.message}`),null}}}},95128:(a,b,c)=>{c.d(b,{V:()=>g});var d=c(15308),e=c(35024),f=c(75924);class g extends d.H{constructor(){super("gemini-cli",e.xq["gemini-cli"])}buildUrl(a,b,c=0){return`${this.config.baseUrl}:${b?"streamGenerateContent?alt=sse":"generateContent"}`}buildHeaders(a,b=!0){return{"Content-Type":"application/json",Authorization:`Bearer ${a.accessToken}`,"User-Agent":(0,f.sX)(this._currentModel),"X-Goog-Api-Client":f.go,Accept:b?"text/event-stream":"application/json"}}transformRequest(a,b,c,d){return(this._currentModel=a,b&&b.request&&b.model)?b:{project:d?.projectId||b?.project,model:a,request:b}}parseError(a,b){let c=super.parseError(a,b);if(429!==a.status||!b)return c;try{let a=JSON.parse(b),d=a?.error?.details;if(Array.isArray(d)){for(let a of d)if(a?.["@type"]==="type.googleapis.com/google.rpc.RetryInfo"&&a?.retryDelay){c.retryAfter=a.retryDelay;let b=function(a){if("string"==typeof a){let b=a.trim().match(/^(\d+(?:\.\d+)?)s$/);return b&&Math.ceil(1e3*parseFloat(b[1]))||null}if(a&&"object"==typeof a){let b=1e3*Number(a.seconds||0)+Math.ceil(Number(a.nanos||0)/1e6);return Number.isFinite(b)&&b>0?b:null}return null}(a.retryDelay);b&&(c.resetsAtMs=Date.now()+b);break}}}catch{}return c}async refreshCredentials(a,b){if(!a.refreshToken)return null;try{let c=await fetch(f.NA.google.token,{method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded",Accept:"application/json"},body:new URLSearchParams({grant_type:"refresh_token",refresh_token:a.refreshToken,client_id:this.config.clientId,client_secret:this.config.clientSecret})});if(!c.ok)return null;let d=await c.json();return b?.info?.("TOKEN","Gemini CLI refreshed"),{accessToken:d.access_token,refreshToken:d.refresh_token||a.refreshToken,expiresIn:d.expires_in,projectId:a.projectId}}catch(a){return b?.error?.("TOKEN",`Gemini CLI refresh error: ${a.message}`),null}}}},95501:(a,b,c)=>{c.d(b,{j9:()=>D});var d=c(77598),e=c.n(d),f=c(15308),g=c(35024),h=c(86724);let i=["read","shell"];Object.freeze(["responses","chat","claude"]);let j={read:{description:"Read the contents of a file or directory. Supports text files, images, and PDFs. Images and PDFs are presented directly to the model. Each text line is prefixed by its 1-based line number as <line>: <content>. The prefix is for reference and is not part of the file content. Directory entries are returned one per line. Use offset and limit to read large files or directories in sections. Prefer one larger read over many small slices, and use grep to find specific content in large files.",parameters:{type:"object",properties:{path:{type:"string",description:"File or directory to read"},offset:{type:"integer",minimum:0,description:"The line or directory entry to start reading from (1-based)"},limit:{type:"integer",minimum:0,description:"The maximum number of lines or directory entries to read (defaults to and capped at 2000)"}},required:["path"],additionalProperties:!1}},shell:{description:"Execute a shell command and return its output. Commands run on Linux using bash. Quote file paths containing spaces or special characters. Prefer dedicated tools over shell commands when possible. When output is large, the full result is saved to a file and a truncated preview is returned. Rely on automatic truncation unless filtering the output is more useful. Commands accept an optional timeout, background commands have no timeout by default. Background commands return immediately, and you will be notified when they complete.",parameters:{type:"object",properties:{command:{type:"string",description:"Shell command string to execute"},workdir:{type:"string",description:"Working directory to execute the command in. Defaults to the current working directory. When possible, avoid changing directories in the command and set the working directory here instead."},timeout:{type:"integer",minimum:0,description:"Timeout in milliseconds. Set to 0 to disable the timeout. Defaults to 120000 for foreground commands. Background commands have no timeout by default."},background:{type:"boolean",description:"Run the command in the background and return immediately (useful for dev servers and long-running builds). You do not need to use '&' at the end of the command when using this parameter. You will be notified when it completes. DO NOT poll for completion."}},required:["command"],additionalProperties:!1}}},k=new WeakMap;function l(a){let b=String(a??"").trim();return i.includes(b)?b:""}function m(a){if(!a||"object"!=typeof a||Array.isArray(a))return"";if("string"==typeof a.name&&a.name.trim())return a.name.trim();let b=a.function;return b&&"object"==typeof b&&!Array.isArray(b)&&"string"==typeof b.name?b.name.trim():""}function n(a){let b=a?.function;return b&&"object"==typeof b&&!Array.isArray(b)?b:null}function o(a){return new Map([...a].map(([a,b])=>[b,a]))}function p(a,b="chat"){if(!a||"object"!=typeof a)return new Map;let{tools:c,map:d}=function(a,b){let c=new Map;if(!Array.isArray(a)||0===a.length)return{tools:a,map:c};let d=new Set(a.map(m)),e=new Set,f=[];for(let g of a){if(!g||"object"!=typeof g||Array.isArray(g)){f.push(g);continue}let a=l(m(g));if(!a){f.push(g);continue}if(e.has(a))continue;if(e.add(a),function(a,b,c){let d=a&&(n(a)||a),e=j[b],f="claude"===c?d?.input_schema:d?.parameters;return!!d&&d.description===e.description&&JSON.stringify(f)===JSON.stringify(e.parameters)}(g,a,b)){f.push(g);continue}let h=`${a}_client`;for(let b=2;d.has(h);b++)h=`${a}_client${b}`;d.add(h),c.set(h,a),f.push(function(a,b){let c=n(a);return c?{...a,function:{...c,name:b}}:{...a,name:b}}(g,h))}return{tools:f,map:c}}(a.tools,b);a.tools=Array.isArray(c)?c:[];let e=function(a,b){let c=[];if(!Array.isArray(a))return c;for(let d of i){if(a.some(a=>l(m(a))===d))continue;let{description:e,parameters:f}=j[d];"responses"===b?a.push({type:"function",name:d,description:e,parameters:f,strict:!1}):"claude"===b?a.push({name:d,description:e,input_schema:f}):a.push({type:"function",function:{name:d,description:e,parameters:f}}),c.push(d)}return c}(a.tools,b);return!function(a,b){if(!a||"object"!=typeof a||!b?.size)return;let c=a.tool_choice;if(!c||"object"!=typeof c||Array.isArray(c))return;let d=o(b);if("string"==typeof c.name){let b=d.get(c.name.trim());b&&(a.tool_choice={...c,name:b});return}let e=c.function;if(e&&"object"==typeof e&&!Array.isArray(e)&&"string"==typeof e.name){let b=d.get(e.name.trim());b&&(a.tool_choice={...c,function:{...e,name:b}})}}(a,d),!function(a,b){if(!a||"object"!=typeof a||!b?.size)return;let c=o(b);Array.isArray(a.input)&&(a.input=a.input.map(a=>a?.type==="function_call"&&c.has(a.name)?{...a,name:c.get(a.name)}:a)),Array.isArray(a.messages)&&(a.messages=a.messages.map(a=>{if(Array.isArray(a?.content)){let b=a.content.map(a=>a?.type==="tool_use"&&c.has(a.name)?{...a,name:c.get(a.name)}:a);a={...a,content:b}}return Array.isArray(a?.tool_calls)?{...a,tool_calls:a.tool_calls.map(a=>c.has(a?.function?.name)?{...a,function:{...a.function,name:c.get(a.function.name)}}:a)}:a}))}(a,d),e.length&&function(a,b,c){let d=c.map(a=>`\`${a}\``).join(" or "),e=c.length>1?`Do not call the ${d} tools; they are placeholders that do nothing. Use the other tools you have been given instead.`:`Do not call the ${d} tool; it is a placeholder that does nothing. Use the other tools you have been given instead.`;if("responses"===b){a.instructions="string"==typeof a.instructions&&a.instructions.trim()?`${a.instructions}
|
|
144
158
|
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
${h}`:h,g):structuredClone(b.body||{}),l=await d.H.prototype.execute.call(this,{...b,body:k,signal:c.signal});if(!l?.response?.ok){let a="";try{a=await E(l?.response,c.signal,Math.min(c.maxBytes,4096),c.stallTimeoutMs)}catch(a){if("AbortError"===a.name)throw a}return J("kiro_integrity_retry_upstream_error",a||`Kiro integrity retry failed with HTTP ${l?.response?.status||502}`,{status:l?.response?.status||502})}let m=await this.readRecoverableIntegrityAttempt(l.response,b.model,c,"retry");return"complete"===m.kind?m.bytes:"terminal_stop"===m.kind||"upstream_error"===m.kind?this.integrityFailureSSE(m):J("ellipsis"===m.kind?"kiro_ellipsis_retry_failed":"short_final"===m.kind?"kiro_short_final_retry_failed":"invalid_tool"===m.kind?"kiro_tool_call_repair_retry_failed":"kiro_missing_terminal_retry_failed",`Kiro integrity validation failed after one bounded retry: ${m.message||m.kind}`,{attempts:[i.diagnostics,m.diagnostics].filter(Boolean)})}integrityFailureSSE(a){let b=a.diagnostics?.stop_disposition;return J(a.diagnostics?.terminal_provenance==="integrity_buffer_exceeded"?"kiro_integrity_buffer_exceeded":"upstream_error"===a.kind?"kiro_upstream_eventstream_error":"terminal_refusal"===b?"kiro_terminal_refusal":"terminal_incomplete"===b?"kiro_terminal_incomplete":"kiro_unknown_stop_reason",a.message||"Kiro stream ended with a terminal failure",a.diagnostics)}async readRecoverableIntegrityAttempt(a,b,c,d){try{return await this.readIntegrityAttempt(a,b,c,d)}catch(a){if("AbortError"===a.name)throw a;return{kind:"missing_terminal",message:a.message||"Kiro transport read failed",diagnostics:{attempt:d,terminal_provenance:"transport_read_error",transport_state:"upstream_error",stop_reason:null,stop_disposition:"terminal_incomplete",response_state:"no_semantic_output",event_counts:{},incomplete_frame_bytes:0}}}}async readIntegrityAttempt(a,b,c,d){let e,f=this.transformEventStreamToSSE(a,b,{maxToolBytes:Math.max(1,Math.floor(c.maxBytes/2)),onTerminalState:a=>{e=a}}).body.getReader(),g=[],h=0,i=!1,j={content:"",reasoning:"",hasToolCalls:!1,error:null};try{for(;;){let a=i?c.stallTimeoutMs:c.ttftTimeoutMs,b=i?"stalled":"timed out before first chunk",{done:d,value:e}=await D(f,c.signal,a,`Kiro integrity validation ${b}`);if(d)break;if(i=!0,(h+=e.byteLength)>c.maxBytes)return await f.cancel("kiro_integrity_buffer_exceeded").catch(()=>{}),{kind:"terminal_stop",message:`Kiro integrity buffer exceeded ${c.maxBytes} bytes`,diagnostics:{terminal_provenance:"integrity_buffer_exceeded"}};g.push(e);for(let a of n.decode(e).split("\n")){if(!a.startsWith("data: "))continue;let b=a.slice(6).trim();if(b&&"[DONE]"!==b)try{let a=JSON.parse(b);for(let b of(a.error&&(j.error=a.error),a.choices||[])){let a=b.delta||{};"string"==typeof a.content&&(j.content+=a.content),"string"==typeof a.reasoning_content&&(j.reasoning+=a.reasoning_content),a.tool_calls?.length&&(j.hasToolCalls=!0)}}catch{}}}}catch(a){throw await f.cancel(a.message).catch(()=>{}),a}let k={attempt:d,terminal_provenance:e?.terminal_provenance||"missing_terminal_diagnostics",transport_state:e?.transport_state||"unknown",stop_reason:e?.stop_reason||null,stop_disposition:e?.stop_disposition||"terminal_incomplete",response_state:e?.response_state||"no_semantic_output",event_counts:e?.event_counts||{},incomplete_frame_bytes:e?.incomplete_frame_bytes||0};if("retryable_protocol_failure"===k.stop_disposition)return{kind:"invalid_tool_call"===k.terminal_provenance?"invalid_tool":"retryable_stop",message:j.error?.message,diagnostics:k};if("terminal_incomplete"===k.stop_disposition||"terminal_refusal"===k.stop_disposition||"unknown_failure"===k.stop_disposition)return{kind:"upstream_eventstream_error"===k.terminal_provenance?"upstream_error":"integrity_buffer_exceeded"===k.terminal_provenance||["metadata_stop_reason","message_stop_event"].includes(k.terminal_provenance)?"terminal_stop":"missing_terminal",message:j.error?.message,diagnostics:k};if(j.error)return{kind:"missing_terminal",message:j.error.message,diagnostics:k};if(!j.hasToolCalls){let a;if(I(j.content)||!j.content.trim()&&I(j.reasoning))return{kind:"ellipsis",diagnostics:k};if(a=String(j.content||"").trim().replaceAll("’","'"),r.test(a)||!(s.test(a)&&t.test(a)||u.test(a)&&v.test(a))&&a.length>0&&a.length<=800&&q.test(a)&&!w.test(a)&&!x.test(a)&&!y.test(a))return{kind:"short_final",diagnostics:k}}return{kind:"complete",bytes:B(g,h),diagnostics:k}}transformEventStreamToSSE(a,b,c={}){let d,e,g,h=`chatcmpl-${Date.now()}`,k=Math.floor(Date.now()/1e3),o=(0,f.$D)(b).upstream,p=(0,j.nl)("kiro",o).contextWindow||2e5,q={},r={buffer:new Uint8Array(0),chunkIndex:0,toolCounter:0,tools:new Map,bufferedToolBytes:0,hasText:!1,hasReasoning:!1,hasCode:!1,hasToolCalls:!1,sawToolUse:!1,explicitStop:!1,stopReason:null,terminalProvenance:null,transportState:"consuming_response",totalContentLength:0,contextUsagePercentage:0,hasContextUsage:!1,hasMetering:!1,usage:null,toolValidationError:null,validatedFrames:0,finished:!1},s=(a={})=>({terminal_provenance:r.terminalProvenance||"clean_eventstream_eof",transport_state:r.transportState,stop_reason:r.stopReason,stop_disposition:G(r.stopReason,r.hasToolCalls),response_state:r.hasToolCalls?"valid_tool":r.hasText||r.hasReasoning||r.hasCode?"text_reasoning":r.explicitStop?"explicit_stop":"no_semantic_output",event_counts:{...q},incomplete_frame_bytes:r.buffer.byteLength,...a}),t=(a,c=null,d)=>m.encode(`data: ${JSON.stringify({id:h,object:"chat.completion.chunk",created:k,model:b,choices:[{index:0,delta:a,finish_reason:c}],...d?{usage:d}:{}})}
|
|
148
|
-
|
|
149
|
-
`),u=(a,b)=>{0===r.chunkIndex&&(b={role:"assistant",...b}),r.chunkIndex++,a.enqueue(t(b))},v=(a,b,d,e,f={})=>{r.finished=!0,r.terminalProvenance=b,r.transportState=f.transport_state||"corrupt_frame";let g=s({stop_disposition:f.stop_disposition||"terminal_incomplete",...f});c.onTerminalState?.(g),a.enqueue(J(d,e,g))},w=()=>{if(r.bufferedToolBytes<=(c.maxToolBytes||4194304))return;let a=Error("Kiro buffered tool input exceeded the integrity memory bound");throw a.code="KIRO_BUFFER_EXCEEDED",a},x=(a,b)=>{if(void 0!==b){if("string"==typeof b){if(a.inputKind&&"string"!==a.inputKind)throw Error("Kiro tool input changed fragment type");a.inputKind="string",a.inputChunks||=[],a.inputChunks.push(b),r.bufferedToolBytes+=m.encode(b).byteLength}else if(b&&"object"==typeof b&&!Array.isArray(b)){if(a.inputKind&&"object"!==a.inputKind)throw Error("Kiro tool input changed fragment type");a.inputKind="object",r.bufferedToolBytes-=a.inputBytes||0,a.inputObject=b,a.inputBytes=m.encode(JSON.stringify(b)).byteLength,r.bufferedToolBytes+=a.inputBytes}else throw Error("Kiro tool input must be a JSON object");w()}},y=a=>{if(!a.inputKind)throw Error("Kiro tool call is missing input");if("object"===a.inputKind)return a.inputObject;try{let b=JSON.parse(a.inputChunks.join(""));if(!b||"object"!=typeof b||Array.isArray(b))throw Error("not an object");return b}catch(a){throw Error(`Kiro tool input must be valid object JSON (${a.message})`)}},A=(d=!1,e="",g=!1,{split:function(a){let b=e+a;e="";let c="",f="",h=a=>{if(a){if(g){if(!(a=a.replace(/^\n+/u,"")))return;g=!1}c+=a}};for(;b;){let a=d?"</thinking>":"<thinking>",c=b.indexOf(a);if(c<0){let c=function(a,b){for(let c=Math.min(b.length-1,a.length);c>0;c--)if(a.endsWith(b.slice(0,c)))return c;return 0}(b,a),g=c?b.slice(0,b.length-c):b;d?f+=g:h(g),e=c?b.slice(b.length-c):"";break}d?(f+=b.slice(0,c),d=!1,g=!0):(h(b.slice(0,c)),d=!0),b=b.slice(c+a.length)}return{text:c,reasoning:f}},flush:function(){let a=e;if(e="",!a)return{text:"",reasoning:""};if(d)return{text:"",reasoning:a};let b=g?a.replace(/^\n+/u,""):a;return g=!1,{text:b,reasoning:""}},get inThinking(){return d}}),B=(a,b)=>{let c=a.headers[":message-type"];if("error"===c||"exception"===c)return v(b,"upstream_eventstream_error","kiro_upstream_eventstream_error",a.payload?.message||`Kiro upstream sent an EventStream ${c}`,{transport_state:"upstream_error"}),!1;let d=a.headers[":event-type"]||"",e=l.has(d)?d:"other";if(q[e]=(q[e]||0)+1,"assistantResponseEvent"===d&&"string"==typeof a.payload?.content){let{text:c}=A.split(a.payload.content);(c||!r.hasReasoning)&&(r.hasText||=c.length>0,r.totalContentLength+=c.length,u(b,{content:c}))}else if("reasoningContentEvent"===d){let c=a.payload?.reasoningContentEvent||a.payload||{},d="string"==typeof c?c:c.text||c.content||"";d&&(r.hasReasoning=!0,r.totalContentLength+=d.length,u(b,{reasoning_content:d}))}else if("codeEvent"===d&&"string"==typeof a.payload?.content)r.hasCode=!0,r.totalContentLength+=a.payload.content.length,u(b,{content:a.payload.content});else if("toolUseEvent"===d){if(r.sawToolUse=!0,r.toolValidationError)return!0;let b=Array.isArray(a.payload)?a.payload:[a.payload];if(!b[0])throw Error("Kiro toolUseEvent is empty");for(let a of b){let b,c="string"==typeof a?.name?a.name.trim():"";if(!c)throw Error("Kiro toolUseEvent is missing a tool name");if(null==a.toolUseId)b=`call_${k}_${r.tools.size+1}`;else if("string"==typeof a.toolUseId&&a.toolUseId.trim())b=a.toolUseId;else throw Error("Kiro toolUseEvent has an invalid toolUseId");let d=r.tools.get(b);if(d){if(d.name!==c)throw Error("Kiro tool name changed between fragments")}else d={id:b,name:c},r.tools.set(b,d),r.bufferedToolBytes+=m.encode(b).byteLength+m.encode(c).byteLength+32,w();x(d,a.input)}}else if("messageStopEvent"===d){r.explicitStop=!0;let b=F(a.payload?.stopReason??a.payload?.stop_reason)||(r.sawToolUse?"tool_use":"end_turn"),c=H(r.stopReason,b);c!==r.stopReason&&(r.terminalProvenance="message_stop_event"),r.stopReason=c}else if("metadataEvent"===d||"MetadataEvent"===d){let b=a.payload?.metadataEvent||a.payload?.metadata||a.payload,c=F(b?.stopReason??b?.stop_reason);if(c){r.explicitStop=!0;let a=H(r.stopReason,c);a!==r.stopReason&&(r.terminalProvenance="metadata_stop_reason"),r.stopReason=a}}else if("contextUsageEvent"===d){let b=Number(a.payload?.contextUsagePercentage);Number.isFinite(b)&&(r.contextUsagePercentage=b,r.hasContextUsage=!0)}else if("meteringEvent"===d){r.hasMetering=!0;let b=a.payload?.meteringEvent||a.payload||{},c=Number(b.usage);Number.isFinite(c)&&(r.usage={...r.usage||{},kiro_credits:c,kiro_credit_unit:"string"==typeof b.unit?b.unit:"credit"})}else if("metricsEvent"===d){let b=a.payload?.metricsEvent||a.payload||{},c=Number(b.inputTokens)||0,d=Number(b.outputTokens)||0;if(c||d){r.usage={...r.usage||{},prompt_tokens:c,completion_tokens:d,total_tokens:c+d};let a=Number(b.cacheReadInputTokens||b.cache_read_input_tokens)||0,e=Number(b.cacheCreationInputTokens||b.cache_creation_input_tokens)||0;a&&(r.usage.cache_read_input_tokens=a),e&&(r.usage.cache_creation_input_tokens=e)}}return!0},C=(a,b)=>{let d=r.buffer.byteLength+a.byteLength;if(d>(c.maxRawBytes||0x1800000))return v(b,"corrupt_eventstream_frame","kiro_missing_terminal","Kiro EventStream buffered bytes exceed the protocol bound"),!1;if(0===r.buffer.byteLength)r.buffer=a;else{let b=new Uint8Array(d);b.set(r.buffer),b.set(a,r.buffer.byteLength),r.buffer=b}for(;r.buffer.byteLength>=12;){let a,c=new DataView(r.buffer.buffer,r.buffer.byteOffset);if(c.getUint32(8,!1)!==z(r.buffer.subarray(0,8)))return v(b,"corrupt_eventstream_frame","kiro_missing_terminal","Kiro EventStream prelude CRC mismatch"),!1;let d=c.getUint32(0,!1),e=c.getUint32(4,!1);if(d<16||d>0x1800000||e>131072||e>d-16)return v(b,"corrupt_eventstream_frame","kiro_missing_terminal","Kiro EventStream frame bounds are invalid"),!1;if(r.buffer.byteLength<d)break;let f=r.buffer.slice(0,d);r.buffer=r.buffer.slice(d);try{a=function(a){if(!(a instanceof Uint8Array)||a.byteLength<16)throw Error("AWS EventStream frame is shorter than 16 bytes");let b=new DataView(a.buffer,a.byteOffset,a.byteLength),c=b.getUint32(0,!1),d=b.getUint32(4,!1);if(c!==a.byteLength)throw Error("AWS EventStream frame length does not match its prelude");if(c>0x1800000||d>131072||d>c-16)throw Error("AWS EventStream frame bounds are invalid");if(b.getUint32(8,!1)!==z(a.subarray(0,8)))throw Error("AWS EventStream prelude CRC mismatch");if(b.getUint32(c-4,!1)!==z(a.subarray(0,c-4)))throw Error("AWS EventStream message CRC mismatch");let e=Object.create(null),f=new Set,g=12,h=12+d,i=a=>{if(g+a>h)throw Error("AWS EventStream header exceeds its declared bounds")};for(;g<h;){i(1);let c=a[g++];i(c+1);let d=n.decode(a.subarray(g,g+c));if(g+=c,f.has(d))throw Error(`AWS EventStream contains duplicate header: ${d}`);f.add(d);let h=a[g++];if(0===h||1===h)e[d]=0===h;else if(2===h)i(1),e[d]=b.getInt8(g),g+=1;else if(3===h)i(2),e[d]=b.getInt16(g,!1),g+=2;else if(4===h)i(4),e[d]=b.getInt32(g,!1),g+=4;else if(5===h||8===h)i(8),g+=8;else if(6===h||7===h){i(2);let c=b.getUint16(g,!1);g+=2,i(c);let f=a.subarray(g,g+c);e[d]=7===h?n.decode(f):f,g+=c}else if(9===h)i(16),g+=16;else throw Error(`AWS EventStream header ${d} has unknown type ${h}`)}let j=a.subarray(h,c-4);if(0===j.byteLength)return{headers:e,payload:null};let k=n.decode(j);if(!k.trim())return{headers:e,payload:null};try{return{headers:e,payload:JSON.parse(k)}}catch(a){throw Error(`AWS EventStream payload is not valid JSON (${a.message})`)}}(f)}catch(a){return v(b,"corrupt_eventstream_frame","kiro_missing_terminal",a.message),!1}r.transportState="valid_complete_frame",r.validatedFrames++;try{if(!B(a,b))return!1}catch(a){if("KIRO_BUFFER_EXCEEDED"!==a.code){r.toolValidationError||=a.message,r.tools.clear(),r.bufferedToolBytes=0;continue}return v(b,"integrity_buffer_exceeded","kiro_integrity_buffer_exceeded",a.message,{transport_state:r.transportState,stop_disposition:"terminal_incomplete"}),!1}}return!0};if(!a.body){let b=s({terminal_provenance:"missing_response_body",transport_state:"missing_body",stop_disposition:"terminal_incomplete"});return c.onTerminalState?.(b),new Response(J("kiro_missing_terminal","Kiro response did not include an EventStream body",b),{status:a.status,headers:{...i}})}let D=a.body.getReader();return new Response(new ReadableStream({start:async a=>{try{for(;!r.finished;){let{done:b,value:c}=await D.read();if(b)break;let d=r.chunkIndex,e=r.validatedFrames;if(!C(c,a)){await D.cancel("invalid Kiro EventStream").catch(()=>{});break}r.validatedFrames>e&&r.chunkIndex===d&&a.enqueue(m.encode(": kiro-upstream\n\n"))}(a=>{if(r.finished)return;if(r.buffer.byteLength)return v(a,"incomplete_eventstream_frame","kiro_missing_terminal","Kiro EventStream ended with a truncated frame",{transport_state:"incomplete_frame"});r.transportState="clean_eof";let b=G(r.stopReason,r.sawToolUse);if(["retryable_protocol_failure","terminal_incomplete","terminal_refusal","unknown_failure"].includes(b))return v(a,r.terminalProvenance||"metadata_stop_reason","retryable_protocol_failure"===b?"kiro_retryable_protocol_failure":"terminal_refusal"===b?"kiro_terminal_refusal":"terminal_incomplete"===b?"kiro_terminal_incomplete":"kiro_unknown_stop_reason",`Kiro ended with non-success stop reason: ${r.stopReason}`,{transport_state:r.transportState,stop_disposition:b});if(r.toolValidationError)return v(a,"invalid_tool_call","invalid_kiro_tool_call",r.toolValidationError,{transport_state:r.transportState,stop_disposition:"retryable_protocol_failure"});try{for(let b of r.tools.values()){let c=y(b);if("tool_call"===b.name){if("string"!=typeof c.name||!c.name.trim())throw Error("Invalid Kiro tool_call payload: missing nested MCP tool name");if(!Object.prototype.hasOwnProperty.call(c,"arguments"))throw Error("Invalid Kiro tool_call payload: missing nested MCP tool arguments")}let d=r.toolCounter++;u(a,{tool_calls:[{index:d,id:b.id,type:"function",function:{name:b.name,arguments:""}}]}),u(a,{tool_calls:[{index:d,function:{arguments:JSON.stringify(c)}}]}),r.hasToolCalls=!0}if(r.tools.clear(),r.bufferedToolBytes=0,"tool_use"===r.stopReason&&!r.hasToolCalls)throw Error("Kiro tool_use stop reason did not include a complete tool call")}catch(b){v(a,"invalid_tool_call","invalid_kiro_tool_call",b.message,{transport_state:r.transportState,stop_disposition:"retryable_protocol_failure"});return}if(!(r.hasText||r.hasReasoning||r.hasCode||r.hasToolCalls)&&!r.explicitStop)return v(a,"empty_response_eof","kiro_missing_terminal","Kiro EventStream ended without model output",{transport_state:r.transportState});let d=G(r.stopReason,r.hasToolCalls);if(["retryable_protocol_failure","terminal_incomplete","terminal_refusal","unknown_failure"].includes(d)){let b="retryable_protocol_failure"===d?"kiro_retryable_protocol_failure":"terminal_refusal"===d?"kiro_terminal_refusal":"terminal_incomplete"===d?"kiro_terminal_incomplete":"kiro_unknown_stop_reason";v(a,r.terminalProvenance||"metadata_stop_reason",b,`Kiro ended with non-success stop reason: ${r.stopReason}`,{transport_state:r.transportState,stop_disposition:d});return}if(r.hasMetering&&r.hasContextUsage&&!r.usage?.total_tokens){let a=r.totalContentLength?Math.max(1,Math.floor(r.totalContentLength/4)):0,b=Math.floor(r.contextUsagePercentage*p/100);r.usage={...r.usage||{},prompt_tokens:b,completion_tokens:a,total_tokens:b+a}}let e=A.flush();e.text&&(r.hasText=!0,r.totalContentLength+=e.text.length,u(a,{content:e.text}));let f=r.hasToolCalls?"tool_calls":"length"===d?"length":"stop";a.enqueue(t({},f,r.usage)),a.enqueue(m.encode("data: [DONE]\n\n")),r.finished=!0,c.onTerminalState?.(s({terminal_provenance:r.terminalProvenance||"clean_eventstream_eof",transport_state:r.transportState,stop_disposition:d}))})(a),a.close()}catch(b){r.finished||v(a,"upstream_read_error","kiro_missing_terminal",b.message||"Kiro EventStream read failed",{transport_state:"upstream_error"}),a.close()}},cancel:a=>D.cancel(a)}),{status:a.status,statusText:a.statusText,headers:{...i}})}async refreshCredentials(a,b,c=null){if(!a.refreshToken)return null;try{return await (0,h.Ql)(a.refreshToken,a.providerSpecificData,b,c)}catch(a){return b?.error?.("TOKEN",`Kiro refresh error: ${a.message}`),null}}}},32447:(a,b,c)=>{c.d(b,{BL:()=>g});var d=c(96179),e=c(52007);let f=["anthropic_version","anthropic_beta","client_metadata","mcp_servers","stop_sequences","thinking","top_k"];class g extends d.L{constructor(){super("kimchi")}transformRequest(a,b,c,d){let g,h=super.transformRequest(a,b,c,d);if(!h||"object"!=typeof h)return h;for(let a of(!function(a){var b;if(!a?.system||!Array.isArray(a.messages))return;let c=("string"==typeof(b=a.system)?b:Array.isArray(b)?b.map(a=>"string"==typeof a?a:"string"==typeof a?.text?a.text:"").filter(Boolean).join("\n"):"").trim();if(!c)return;let d=a.messages.find(a=>a?.role==="system");d?"string"==typeof d.content?d.content=`${c}
|
|
150
|
-
|
|
151
|
-
${d.content}`:Array.isArray(d.content)&&d.content.unshift({type:"text",text:c}):a.messages.unshift({role:"system",content:c})}(h),f))void 0!==h[a]&&delete h[a];if(delete h.system,g=(0,e.gK)(a),(g?.provider==="anthropic"||g?.upstreamProvider==="anthropic"||/(^|[-_/])(?:claude|anthropic)(?:[-_/]|$)/i.test(String(a||"")))&&(delete h.reasoning_effort,delete h.reasoning,delete h.thinking),Array.isArray(h?.messages))for(let a of h.messages)a&&"object"==typeof a&&(delete a.cache_control,Array.isArray(a.content)&&(a.content=a.content.map(a=>{if(!a||"object"!=typeof a)return a;let{cache_control:b,signature:c,...d}=a;return d})));Array.isArray(h?.tools)&&(h.tools=h.tools.map(a=>{if(!a||"object"!=typeof a)return a;let{cache_control:b,...c}=a;return c}));if(Array.isArray(h?.messages))for(let a of h.messages)a&&"assistant"===a.role&&"string"==typeof a.reasoning_content&&a.reasoning_content.length>8&&delete a.reasoning_content;return h}}},38572:(a,b,c)=>{c.d(b,{$:()=>n});var d=c(15308),e=c(35024);let f=e.xq["grok-web"].baseUrl,g={"grok-3":{grokModel:"grok-3",modelMode:"MODEL_MODE_GROK_3",isThinking:!1},"grok-3-mini":{grokModel:"grok-3",modelMode:"MODEL_MODE_GROK_3_MINI_THINKING",isThinking:!0},"grok-3-thinking":{grokModel:"grok-3",modelMode:"MODEL_MODE_GROK_3_THINKING",isThinking:!0},"grok-4":{grokModel:"grok-4",modelMode:"MODEL_MODE_GROK_4",isThinking:!1},"grok-4-mini":{grokModel:"grok-4-mini",modelMode:"MODEL_MODE_GROK_4_MINI_THINKING",isThinking:!0},"grok-4-thinking":{grokModel:"grok-4",modelMode:"MODEL_MODE_GROK_4_THINKING",isThinking:!0},"grok-4-heavy":{grokModel:"grok-4",modelMode:"MODEL_MODE_HEAVY",isThinking:!0},"grok-4.1-mini":{grokModel:"grok-4-1-thinking-1129",modelMode:"MODEL_MODE_GROK_4_1_MINI_THINKING",isThinking:!0},"grok-4.1-fast":{grokModel:"grok-4-1-thinking-1129",modelMode:"MODEL_MODE_FAST",isThinking:!1},"grok-4.1-expert":{grokModel:"grok-4-1-thinking-1129",modelMode:"MODEL_MODE_EXPERT",isThinking:!0},"grok-4.1-thinking":{grokModel:"grok-4-1-thinking-1129",modelMode:"MODEL_MODE_GROK_4_1_THINKING",isThinking:!0},"grok-4.2":{grokModel:"grok-420",modelMode:"MODEL_MODE_GROK_420",isThinking:!1},"grok-4.20":{grokModel:"grok-420",modelMode:"MODEL_MODE_GROK_420",isThinking:!1},"grok-4.20-beta":{grokModel:"grok-420",modelMode:"MODEL_MODE_GROK_420",isThinking:!1}};function h(a,b=!1){let c=b?"abcdefghijklmnopqrstuvwxyz0123456789":"abcdefghijklmnopqrstuvwxyz",d="";for(let b=0;b<a;b++)d+=c[Math.floor(Math.random()*c.length)];return d}function i(a){let b=new Uint8Array(a);return crypto.getRandomValues(b),Array.from(b,a=>a.toString(16).padStart(2,"0")).join("")}async function*j(a,b){let c=a.getReader(),d=new TextDecoder,e="";try{for(;;){if(b?.aborted)return;let{value:a,done:f}=await c.read();if(f)break;for(e+=d.decode(a,{stream:!0});;){let a=e.indexOf("\n");if(a<0)break;let b=e.slice(0,a).trim();if(e=e.slice(a+1),b)try{yield JSON.parse(b)}catch{}}}let a=(e+=d.decode()).trim();if(a)try{yield JSON.parse(a)}catch{}}finally{c.releaseLock()}}async function*k(a,b,c){let d="",e="",f=!1;for await(let g of j(a,c)){if(g.error)return void(yield{error:g.error.message||`Grok error: ${g.error.code}`,done:!0});let a=g.result?.response;if(a){if(a.llmInfo?.modelHash&&!d&&(d=a.llmInfo.modelHash),a.responseId&&(e=a.responseId),a.modelResponse){let c=a.modelResponse;f&&b&&(c.message&&(yield{thinking:c.message}),f=!1),c.message&&(yield{fullMessage:c.message,fingerprint:d,responseId:e}),c.metadata?.llm_info?.modelHash&&(d=c.metadata.llm_info.modelHash);continue}null!=a.token&&(yield{delta:a.token,fingerprint:d,responseId:e})}}yield{done:!0,fingerprint:d,responseId:e}}function l(a){return`data: ${JSON.stringify(a)}
|
|
159
|
+
${e}`:e;return}if("claude"===b||void 0!==a.system)return Array.isArray(a.system)?a.system=[...a.system,{type:"text",text:e}]:"string"==typeof a.system&&a.system.trim()?a.system=`${a.system}
|
|
152
160
|
|
|
153
|
-
`}async function m(a,b,c,d,e,f){let g="",h="",i=[];for await(let b of k(a,e,f)){if(b.fingerprint&&(h=b.fingerprint),b.error)return new Response(JSON.stringify({error:{message:b.error,type:"upstream_error",code:"GROK_ERROR"}}),{status:502,headers:{"Content-Type":"application/json"}});if(b.thinking){i.push(b.thinking);continue}if(b.done)break;b.fullMessage?g=b.fullMessage:b.delta&&(g+=b.delta)}let j={role:"assistant",content:g};i.length>0&&(j.reasoning_content=i.join("\n"));let l=Math.ceil(g.length/4),m=Math.ceil(g.length/4);return new Response(JSON.stringify({id:c,object:"chat.completion",created:d,model:b,system_fingerprint:h||null,choices:[{index:0,message:j,finish_reason:"stop",logprobs:null}],usage:{prompt_tokens:l,completion_tokens:m,total_tokens:l+m}}),{status:200,headers:{"Content-Type":"application/json"}})}class n extends d.H{constructor(){super("grok-web",e.xq["grok-web"])}async execute({model:a,body:b,stream:c,credentials:d,signal:e,log:j}){let n,o,p=b?.messages;if(!p||!Array.isArray(p)||0===p.length)return{response:new Response(JSON.stringify({error:{message:"Missing or empty messages array",type:"invalid_request"}}),{status:400,headers:{"Content-Type":"application/json"}}),url:f,headers:{},transformedBody:b};let q=g[a];q||j?.info?.("GROK-WEB",`Unmapped model ${a}, defaulting to grok-4.1-fast`);let{grokModel:r,modelMode:s,isThinking:t}=q||g["grok-4.1-fast"],u=function(a){let b=[];for(let c of a){let a=String(c.role||"user");"developer"===a&&(a="system");let d="";"string"==typeof c.content?d=c.content:Array.isArray(c.content)&&(d=c.content.filter(a=>"text"===a.type).map(a=>String(a.text||"")).join(" ")),d.trim()&&b.push({role:a,text:d})}let c=-1;for(let a=b.length-1;a>=0;a--)if("user"===b[a].role){c=a;break}let d=[];for(let a=0;a<b.length;a++){let{role:e,text:f}=b[a];d.push(a===c?f:`${e}: ${f}`)}return d.join("\n\n")}(p);if(!u.trim())return{response:new Response(JSON.stringify({error:{message:"Empty query after processing",type:"invalid_request"}}),{status:400,headers:{"Content-Type":"application/json"}}),url:f,headers:{},transformedBody:b};let v={temporary:!0,modelName:r,modelMode:s,message:u,fileAttachments:[],imageAttachments:[],disableSearch:!1,enableImageGeneration:!1,returnImageBytes:!1,returnRawGrokInXaiRequest:!1,enableImageStreaming:!1,imageGenerationCount:0,forceConcise:!1,toolOverrides:{},enableSideBySide:!0,sendFinalMetadata:!0,isReasoning:!1,disableTextFollowUps:!1,disableMemory:!0,forceSideBySide:!1,isAsyncChat:!1,disableSelfHarmShortCircuit:!1,deviceEnvInfo:{darkModeEnabled:!1,devicePixelRatio:2,screenWidth:2056,screenHeight:1329,viewportWidth:2056,viewportHeight:1083}},w=i(16),x=i(8),y={Accept:"*/*","Accept-Encoding":"gzip, deflate, br, zstd","Accept-Language":"en-US,en;q=0.9",Baggage:"sentry-environment=production,sentry-release=d6add6fb0460641fd482d767a335ef72b9b6abb8,sentry-public_key=b311e0f2690c81f25e2c4cf6d4f7ce1c","Cache-Control":"no-cache","Content-Type":"application/json",Origin:"https://grok.com",Pragma:"no-cache",Referer:"https://grok.com/","Sec-Ch-Ua":'"Google Chrome";v="136", "Chromium";v="136", "Not(A:Brand";v="24"',"Sec-Ch-Ua-Mobile":"?0","Sec-Ch-Ua-Platform":'"macOS"',"Sec-Fetch-Dest":"empty","Sec-Fetch-Mode":"cors","Sec-Fetch-Site":"same-origin","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/136.0.0.0 Safari/537.36","x-statsig-id":btoa(.5>Math.random()?`e:TypeError: Cannot read properties of null (reading 'children["${h(5,!0)}"]')`:`e:TypeError: Cannot read properties of undefined (reading '${h(10)}')`),"x-xai-request-id":crypto.randomUUID(),traceparent:`00-${w}-${x}-00`};if(d.apiKey){let a=d.apiKey;a.startsWith("sso=")&&(a=a.slice(4)),y.Cookie=`sso=${a}`}j?.info?.("GROK-WEB",`Query to ${a} (grok=${r}, mode=${s}), len=${u.length}`);try{n=await fetch(f,{method:"POST",headers:y,body:JSON.stringify(v),signal:e})}catch(a){return j?.error?.("GROK-WEB",`Fetch failed: ${a.message||String(a)}`),{response:new Response(JSON.stringify({error:{message:`Grok connection failed: ${a.message||String(a)}`,type:"upstream_error"}}),{status:502,headers:{"Content-Type":"application/json"}}),url:f,headers:y,transformedBody:v}}if(!n.ok){let a=n.status,b=`Grok returned HTTP ${a}`;return 401===a||403===a?b="Grok auth failed — SSO cookie may be expired. Re-paste your sso cookie value from grok.com.":429===a&&(b="Grok rate limited. Wait a moment and retry, or rotate cookies."),j?.warn?.("GROK-WEB",b),{response:new Response(JSON.stringify({error:{message:b,type:"upstream_error",code:`HTTP_${a}`}}),{status:a,headers:{"Content-Type":"application/json"}}),url:f,headers:y,transformedBody:v}}if(!n.body)return{response:new Response(JSON.stringify({error:{message:"Grok returned empty response body",type:"upstream_error"}}),{status:502,headers:{"Content-Type":"application/json"}}),url:f,headers:y,transformedBody:v};let z=`chatcmpl-grok-${crypto.randomUUID().slice(0,12)}`,A=Math.floor(Date.now()/1e3);if(c){var B;let b;o=new Response((B=n.body,b=new TextEncoder,new ReadableStream({async start(c){try{c.enqueue(b.encode(l({id:z,object:"chat.completion.chunk",created:A,model:a,system_fingerprint:null,choices:[{index:0,delta:{role:"assistant"},finish_reason:null,logprobs:null}]})));let d="";for await(let f of k(B,t,e)){if(f.fingerprint&&(d=f.fingerprint),f.error){c.enqueue(b.encode(l({id:z,object:"chat.completion.chunk",created:A,model:a,system_fingerprint:d||null,choices:[{index:0,delta:{content:`[Error: ${f.error}]`},finish_reason:null,logprobs:null}]})));break}if(f.thinking){c.enqueue(b.encode(l({id:z,object:"chat.completion.chunk",created:A,model:a,system_fingerprint:d||null,choices:[{index:0,delta:{reasoning_content:f.thinking},finish_reason:null,logprobs:null}]})));continue}if(f.done)break;f.delta&&c.enqueue(b.encode(l({id:z,object:"chat.completion.chunk",created:A,model:a,system_fingerprint:d||null,choices:[{index:0,delta:{content:f.delta},finish_reason:null,logprobs:null}]})))}c.enqueue(b.encode(l({id:z,object:"chat.completion.chunk",created:A,model:a,system_fingerprint:d||null,choices:[{index:0,delta:{},finish_reason:"stop",logprobs:null}]}))),c.enqueue(b.encode("data: [DONE]\n\n"))}catch(d){c.enqueue(b.encode(l({id:z,object:"chat.completion.chunk",created:A,model:a,system_fingerprint:null,choices:[{index:0,delta:{content:`[Stream error: ${d.message||String(d)}]`},finish_reason:"stop",logprobs:null}]}))),c.enqueue(b.encode("data: [DONE]\n\n"))}finally{c.close()}}})),{status:200,headers:{"Content-Type":"text/event-stream","Cache-Control":"no-cache","X-Accel-Buffering":"no"}})}else o=await m(n.body,a,z,A,t,e);return{response:o,url:f,headers:y,transformedBody:v}}}},47370:(a,b,c)=>{c.d(b,{BY:()=>d.BY,E5:()=>d.E5,SL:()=>d.SL,Zx:()=>d.Zx,_V:()=>d._V,j$:()=>d.j$,ox:()=>d.ox,rg:()=>d.rg,sZ:()=>d.sZ,uw:()=>d.uw});var d=c(9248)},49059:(a,b,c)=>{c.d(b,{v:()=>f});var d=c(96179);let e=new Set(["none","off"]);class f extends d.L{constructor(){super("codebuddy-cn")}transformRequest(a,b,c,d){let f=super.transformRequest(a,b,c,d);f.stream=!0;let g=f.reasoning_effort;return e.has(g)?delete f.reasoning_effort:(g||(f.reasoning_effort="medium"),f.reasoning_summary="auto"),f}}},54603:(a,b,c)=>{c.d(b,{Xj:()=>q});var d=c(19713),e=c(73024),f=c.n(e),g=c(76760),h=c.n(g),i=c(77598),j=c.n(i),k=c(49120);let l=h().join(k.n,"machine-id"),m=h().join(k.n,"auth"),n=h().join(m,"cli-secret"),o=null,p=null;async function q(a=null){let b=a||process.env.MACHINE_ID_SALT||"endpoint-proxy-salt",c=function(){if(o)return o;try{if(o=f().readFileSync(l,"utf8").trim())return o}catch{}try{o=(0,d.machineIdSync)()}catch{o=j().randomUUID()}try{f().mkdirSync(k.n,{recursive:!0}),f().writeFileSync(l,o,{mode:384})}catch{}return o}(),e="9r-cli-auth"===b?function(){if(p)return p;try{if(p=f().readFileSync(n,"utf8").trim())return p}catch{}p=j().randomBytes(32).toString("hex");try{f().mkdirSync(m,{recursive:!0}),f().writeFileSync(n,p,{mode:384})}catch{}return p}():"";return j().createHash("sha256").update(c+b+e).digest("hex").substring(0,16)}},55330:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.d(b,{SB:()=>C});var e=c(2648),f=c(98625),g=c(95128),h=c(11655),i=c(61433),j=c(8729),k=c(28681),l=c(19969),m=c(19946),n=c(73870),o=c(94515),p=c(4493),q=c(13120),r=c(38572),s=c(23013),t=c(9708),u=c(90926),v=c(26878),w=c(16046),x=c(49059),y=c(32447),z=c(22376),A=c(96179);c(15308);var B=a([m]);m=(B.then?(await B)():B)[0];let D={antigravity:new e.c,"codebuddy-cn":new x.v,kimchi:new y.BL,"grok-cli":new z.hG,azure:new f.P,"gemini-cli":new g.V,github:new h.x,iflow:new i.r,qoder:new j.DH,kiro:new k.B,codex:new l.T,cursor:new m.o,cu:new m.o,vertex:new n.w("vertex"),"vertex-partner":new n.w("vertex-partner"),qwen:new o.R,opencode:new p.j,"opencode-go":new q.H_,"grok-web":new r.$,"perplexity-web":new s.Ay,"ollama-local":new t.D,commandcode:new u.Ak,"xiaomi-tokenplan":new v.F,"mimo-free":new w.Yh,mmf:new w.Yh},E=new Map;function C(a){return D[a]?D[a]:(E.has(a)||E.set(a,new A.L(a)),E.get(a))}d()}catch(a){d(a)}})},55456:(a,b,c)=>{c.d(b,{CP:()=>q,yI:()=>n});var d=c(94755),e=c(74075),f=c.n(e);let g="1"===process.env.CURSOR_PROTOBUF_DEBUG,h=(a,...b)=>g&&console.log(`[PROTOBUF:${a}]`,...b);new TextDecoder;let i="1.1.3",j=new Set([1,2,3,9,10,11,27,1,25]);function k(a){let b=[];for(;a>=128;)b.push(127&a|128),a>>>=7;return b.push(127&a),new Uint8Array(b)}function l(a,b,c){let d=k(a<<3|b);if(0===b)return m(d,k(c));if(2===b){let a="string"==typeof c?new TextEncoder().encode(c):c instanceof Uint8Array?c:Buffer.isBuffer(c)?new Uint8Array(c):new Uint8Array(0);return m(d,k(a.length),a)}return new Uint8Array(0)}function m(...a){let b=new Uint8Array(a.reduce((a,b)=>a+b.length,0)),c=0;for(let d of a)b.set(d,c),c+=d.length;return b}function n(a,b,c=[],e=null,g=!1){h("BODY",`Generating: ${a.length} msgs, model=${b}, tools=${c.length}, reasoning=${e||"none"}, forceAgentMode=${g}`);let i=function(a,b,c=[],e=null,f=!1){return l(1,2,function(a,b,c=[],e=null,f=!1){let g,i=c?.length>0,j=i||f,n=[],o=[],p=[];for(let b=0;b<a.length;b++){let c=a[b],d=Array.isArray(c?.tool_calls)&&c.tool_calls.length>0,e=Array.isArray(c?.tool_results)&&c.tool_results.length>0;if(c?.role==="assistant"&&d&&e){h("ENCODE",`normalizing mixed assistant tool payload at msg[${b}] (calls=${c.tool_calls.length}, results=${c.tool_results.length})`),p.push({...c,tool_results:[]});let d=a[b+1],e=d?.role==="assistant"&&Array.isArray(d?.tool_results)&&d.tool_results.length>0,f=new Set(c.tool_results.map(a=>a?.tool_call_id).filter(a=>"string"==typeof a)),g=new Set((d?.tool_results||[]).map(a=>a?.tool_call_id).filter(a=>"string"==typeof a)),i=f.size>0&&f.size===g.size;if(i){for(let a of f)if(!g.has(a)){i=!1;break}}e&&i||p.push({role:"assistant",content:"",tool_results:c.tool_results});continue}p.push(c)}for(let a=0;a<p.length;a++){let b=p[a],c="user"===b.role?1:2,e=(0,d.A)(),f=a===p.length-1;n.push({content:b.content,role:c,messageId:e,isLast:f,hasTools:i,toolResults:b.tool_results||[]}),o.push({messageId:e,role:c})}let q=0;return"medium"===e?q=1:"high"===e&&(q=2),m(...n.map(a=>l(1,2,function(a,b,c,d=!1,e=!1,f=[],g=null){let h=f.length>0;return m(l(1,2,a),l(2,0,b),l(13,2,c),...g?[l(32,2,g)]:[],...h?f.map(a=>l(18,2,function(a){var b;let c,d,e=function(a){let b="string"==typeof a&&a.length>0?a:"tool";if(b.startsWith("mcp__")){let a=b.slice(5),c=a.indexOf("__");if(c>=0){let b=a.slice(0,c)||"custom",d=a.slice(c+2)||"tool";return`mcp_${b}_${d}`}return`mcp_custom_${a||"tool"}`}return b.startsWith("mcp_")?b:`mcp_custom_${b}`}(a.tool_name||a.name||""),f=a.raw_args||"{}",g=a.result_content||a.result||"",{toolCallId:h,modelCallId:i}=(b=a.tool_call_id||"",c="\nmc_",(d=b.indexOf(c))>=0?{toolCallId:b.slice(0,d),modelCallId:b.slice(d+c.length)}:{toolCallId:b,modelCallId:null}),j=a.tool_index||a.index||1,{serverName:k,selectedTool:n}=function(a){if("string"!=typeof a||!a.startsWith("mcp_"))return{serverName:"custom",selectedTool:a||"tool"};let b=a.slice(4),c=b.indexOf("_");return c<0?{serverName:"custom",selectedTool:b||"tool"}:{serverName:b.slice(0,c)||"custom",selectedTool:b.slice(c+1)||"tool"}}(e);return m(l(1,2,h),l(2,2,e),l(3,0,j>0?j:1),...i?[l(12,2,i)]:[],l(5,2,f),l(8,2,function(a,b,c,d,e=1){return m(l(1,0,19),l(28,2,m(l(1,2,c),l(2,2,d))),l(35,2,a),...b?[l(48,2,b)]:[],l(49,0,e>0?e:1))}(h,i,n,g,j)),l(11,2,function(a,b,c,d,e,f,g=1){let h;return m(l(1,0,19),l(27,2,(h=m(l(1,2,c),l(3,2,e),l(4,2,d)),l(1,2,h))),l(3,2,a),l(9,2,b),l(10,2,e),l(48,0,g>0?g:1),...f?[l(49,2,f)]:[])}(h,e,n,k,f,i,j)))}(a))):[],l(29,0,+!!e),l(47,0,e?2:1),...d&&e?[l(51,2,k(1))]:[])}(a.content,a.role,a.messageId,a.isLast,a.hasTools,a.toolResults))),l(2,0,1),l(3,2,new Uint8Array(0)),l(4,0,1),l(5,2,m(l(1,2,b),l(4,2,new Uint8Array(0)))),l(8,2,""),l(13,0,1),l(15,2,(g=m(l(1,2,new Uint8Array(0)),l(2,2,new Uint8Array(0))),m(l(1,2,"cursor\\aisettings"),l(3,2,new Uint8Array(0)),l(6,2,g),l(8,0,1),l(9,0,1)))),l(19,0,1),l(23,2,(0,d.A)()),l(26,2,m(l(1,2,process.platform||"linux"),l(2,2,process.arch||"x64"),l(3,2,process.version||"v20.0.0"),l(4,2,process.cwd?.()||"/"),l(5,2,new Date().toISOString()))),l(27,0,+!!j),...j?[l(29,2,k(1))]:[],...o.map(a=>l(30,2,function(a,b,c=null){return m(l(1,2,a),...c?[l(2,2,c)]:[],l(3,0,b))}(a.messageId,a.role))),...c?.length>0?c.map(a=>{let b,c,d;return l(34,2,(b=a.function?.name||a.name||"",c=a.function?.description||a.description||"",d=a.function?.parameters||a.input_schema||{},m(...b?[l(1,2,b)]:[],...c?[l(2,2,c)]:[],...Object.keys(d).length>0?[l(3,2,JSON.stringify(d))]:[],l(4,2,"custom"))))}):[],l(35,0,0),l(38,0,0),l(46,0,j?2:1),l(47,2,""),l(48,0,+!j),l(49,0,q),l(51,0,0),l(53,0,1),l(54,2,j?"Agent":"Ask"))}(a,b,c,e,f))}(a,b,c,e,g),j=function(a,b=!1){let c=a,d=0;b&&(c=new Uint8Array(f().gzipSync(Buffer.from(a))),d=1);let e=new Uint8Array(5+c.length);return e[0]=d,e[1]=c.length>>24&255,e[2]=c.length>>16&255,e[3]=c.length>>8&255,e[4]=255&c.length,e.set(c,5),e}(i,!1);return h("BODY",`Protobuf=${i.length}B, Framed=${j.length}B`),j}function o(a,b){let c=0,d=0,e=b;for(;e<a.length;){let b=a[e];if(c|=(127&b)<<d,e++,!(128&b))break;d+=7}return[c,e]}function p(a){let b=new Map,c=0;for(;c<a.length;){let[d,e,f,g]=function(a,b){let c;if(b>=a.length)return[null,null,null,b];let[d,e]=o(a,b),f=7&d,g=e;if(0===f)[c,g]=o(a,g);else if(2===f){let[b,d]=o(a,g);c=a.slice(d,d+b),g=d+b}else 1===f?(c=a.slice(g,g+8),g+=8):5===f?(c=a.slice(g,g+4),g+=4):c=null;return[d>>3,f,c,g]}(a,c);if(null===d)break;b.has(d)||b.set(d,[]),b.get(d).push({wireType:e,value:f}),c=g}return b}function q(a){try{let b=p(a);for(let a of b.keys())j.has(a)||h("SCHEMA",`Unknown response field #${a} detected. Schema v${i} may be outdated.`);if(b.has(1)){let a=function(a){let b=p(a),c="",d="",e="",f=!1;if(b.has(3)&&(c=new TextDecoder().decode(b.get(3)[0].value).split("\n")[0]),b.has(9)&&(d=new TextDecoder().decode(b.get(9)[0].value)),b.has(11)&&(f=0!==b.get(11)[0].value),b.has(27))try{let a=p(b.get(27)[0].value);if(a.has(1)){let b=p(a.get(1)[0].value);b.has(1)&&(d=new TextDecoder().decode(b.get(1)[0].value)),b.has(3)&&(e=new TextDecoder().decode(b.get(3)[0].value))}}catch(a){h("EXTRACT",`MCP parse error: ${a.message}`)}return(!e&&b.has(10)&&(e=new TextDecoder().decode(b.get(10)[0].value)),c&&d)?{id:c,type:"function",function:{name:d,arguments:e||"{}"},isLast:f}:null}(b.get(1)[0].value);if(a)return h("EXTRACT",`Tool call: ${a.function.name}`),{text:null,error:null,toolCall:a,thinking:null}}if(b.has(2)){let{text:a,thinking:c}=function(a){let b=p(a),c=null,d=null;if(b.has(1)&&(c=new TextDecoder().decode(b.get(1)[0].value)),b.has(25))try{let a=p(b.get(25)[0].value);a.has(1)&&(d=new TextDecoder().decode(a.get(1)[0].value))}catch(a){h("EXTRACT",`Thinking parse error: ${a.message}`)}return{text:c,thinking:d}}(b.get(2)[0].value);if(a||c)return{text:a,error:null,toolCall:null,thinking:c}}return{text:null,error:null,toolCall:null,thinking:null}}catch(b){return h("EXTRACT",`Decode failed (schema v${i}): ${b.message}`),{text:null,error:null,toolCall:null,thinking:null,raw:Buffer.from(a).toString("base64"),decodeError:b.message}}}},61433:(a,b,c)=>{c.d(b,{r:()=>h});var d=c(55511),e=c.n(d),f=c(15308),g=c(35024);class h extends f.H{constructor(){super("iflow",g.xq.iflow)}generateUUID(){return e().randomUUID()}createIFlowSignature(a,b,c,d){if(!d)return"";let f=`${a}:${b}:${c}`,g=e().createHmac("sha256",d);return g.update(f),g.digest("hex")}buildHeaders(a,b=!0){let c=`session-${this.generateUUID()}`,d=Date.now(),e=this.config.headers["User-Agent"]||"iFlow-Cli",f=a.apiKey||a.accessToken||"",g=this.createIFlowSignature(e,c,d,f),h={"Content-Type":"application/json",...this.config.headers,"session-id":c,"x-iflow-timestamp":d.toString(),"x-iflow-signature":g};return a.apiKey&&(h.Authorization=`Bearer ${a.apiKey}`),b&&(h.Accept="text/event-stream"),h}buildUrl(a,b,c=0,d=null){return this.config.baseUrl}transformRequest(a,b,c,d){return c&&b.messages&&!b.stream_options&&(b.stream_options={include_usage:!0}),b}}},73483:(a,b,c)=>{c.d(b,{Gh:()=>j,IF:()=>m,O9:()=>g,OF:()=>l,WL:()=>h,f5:()=>k,lm:()=>f});var d=c(47370),e=c(14170);let f={reset:"\x1b[0m",red:"\x1b[31m",green:"\x1b[32m",yellow:"\x1b[33m",blue:"\x1b[34m",cyan:"\x1b[36m"};function g(a){if(!a||"object"!=typeof a)return a;let b={...a};return void 0!==b.input_tokens&&(b.input_tokens+=2e3),void 0!==b.prompt_tokens&&(b.prompt_tokens+=2e3),void 0!==b.total_tokens?b.total_tokens+=2e3:void 0!==b.prompt_tokens&&void 0!==b.completion_tokens&&(b.total_tokens=b.prompt_tokens+b.completion_tokens),b}function h(a,b){if(!a||"object"!=typeof a)return a;let c={[e.h.CLAUDE]:["input_tokens","output_tokens","cache_read_input_tokens","cache_creation_input_tokens","estimated"],[e.h.GEMINI]:["promptTokenCount","candidatesTokenCount","totalTokenCount","cachedContentTokenCount","thoughtsTokenCount","estimated"],[e.h.OPENAI_RESPONSES]:["input_tokens","output_tokens","total_tokens","input_tokens_details","output_tokens_details","estimated"],default:["prompt_tokens","completion_tokens","total_tokens","cached_tokens","reasoning_tokens","prompt_tokens_details","completion_tokens_details","estimated"]},d=c[b];b===e.h.GEMINI_CLI||b===e.h.ANTIGRAVITY?d=c[e.h.GEMINI]:b===e.h.OPENAI_RESPONSE?d=c[e.h.OPENAI_RESPONSES]:d||(d=c.default);let f={};for(let b of d)void 0!==a[b]&&(f[b]=a[b]);return f}function i(a){if(!a||"object"!=typeof a||Array.isArray(a))return null;let b={},c=(a,c)=>{if(null==c)return;let d=Number(c);Number.isFinite(d)&&(b[a]=d)};return(c("prompt_tokens",a?.prompt_tokens),c("completion_tokens",a?.completion_tokens),c("total_tokens",a?.total_tokens),c("cache_read_input_tokens",a?.cache_read_input_tokens),c("cache_creation_input_tokens",a?.cache_creation_input_tokens),c("cached_tokens",a?.cached_tokens),c("reasoning_tokens",a?.reasoning_tokens),a?.prompt_tokens_details&&"object"==typeof a.prompt_tokens_details&&(b.prompt_tokens_details=a.prompt_tokens_details),a?.completion_tokens_details&&"object"==typeof a.completion_tokens_details&&(b.completion_tokens_details=a.completion_tokens_details),0===Object.keys(b).length)?null:b}function j(a){if(!a||"object"!=typeof a)return!1;for(let b of["prompt_tokens","completion_tokens","total_tokens","input_tokens","output_tokens","promptTokenCount","candidatesTokenCount"])if("number"==typeof a[b]&&a[b]>0)return!0;return!1}function k(a){if(!a||"object"!=typeof a)return null;if("message_delta"===a.type&&a.usage&&"object"==typeof a.usage)return i({prompt_tokens:a.usage.input_tokens||0,completion_tokens:a.usage.output_tokens||0,cache_read_input_tokens:a.usage.cache_read_input_tokens,cache_creation_input_tokens:a.usage.cache_creation_input_tokens});if(("response.completed"===a.type||"response.done"===a.type)&&a.response?.usage&&"object"==typeof a.response.usage){let b=a.response.usage,c=b.input_tokens_details?.cached_tokens;return i({prompt_tokens:b.input_tokens||b.prompt_tokens||0,completion_tokens:b.output_tokens||b.completion_tokens||0,cached_tokens:c,reasoning_tokens:b.output_tokens_details?.reasoning_tokens,prompt_tokens_details:c?{cached_tokens:c}:void 0})}if(a.usage&&"object"==typeof a.usage&&void 0!==a.usage.prompt_tokens)return i({prompt_tokens:a.usage.prompt_tokens,completion_tokens:a.usage.completion_tokens||0,cached_tokens:a.usage.prompt_tokens_details?.cached_tokens||a.usage.prompt_cache_hit_tokens,reasoning_tokens:a.usage.completion_tokens_details?.reasoning_tokens,prompt_tokens_details:a.usage.prompt_tokens_details,completion_tokens_details:a.usage.completion_tokens_details});let b=a.usageMetadata||a.response?.usageMetadata;return b&&"object"==typeof b?i({prompt_tokens:b.promptTokenCount||0,completion_tokens:b.candidatesTokenCount||0,total_tokens:b.totalTokenCount,cached_tokens:b.cachedContentTokenCount,reasoning_tokens:b.thoughtsTokenCount}):!0===a.done&&"number"==typeof a.prompt_eval_count?i({prompt_tokens:a.prompt_eval_count||0,completion_tokens:a.eval_count||0,total_tokens:(a.prompt_eval_count||0)+(a.eval_count||0)}):null}function l(a,b,c=e.h.OPENAI){var d,f;return d=function(a){if(!a||"object"!=typeof a)return 0;try{let b=JSON.stringify(a).length;return Math.ceil(b/4)}catch(a){return 0}}(a),f=b&&!(b<=0)?Math.max(1,Math.floor(b/4)):0,c===e.h.CLAUDE?g({input_tokens:d,output_tokens:f,estimated:!0}):g({prompt_tokens:d,completion_tokens:f,total_tokens:d+f,estimated:!0})}function m(a,b,c=null,e=null,g=null){if(!b||"object"!=typeof b)return;let h=a?.toUpperCase()||"UNKNOWN",i=b?.prompt_tokens||b?.input_tokens||0,j=b?.completion_tokens||b?.output_tokens||0,k=e?e.slice(0,8)+"...":"unknown",l=`[${new Date().toLocaleTimeString("en-US",{hour12:!1,hour:"2-digit",minute:"2-digit",second:"2-digit"})}] 📊 ${f.green}[USAGE] ${h} | in=${i} | out=${j} | account=${k}${f.reset}`;b.estimated&&(l+=` ${f.yellow}(estimated)${f.reset}`);let n=b.cache_read_input_tokens||b.cached_tokens||b.prompt_tokens_details?.cached_tokens;n&&(l+=` | cache_read=${n}`);let o=b.cache_creation_input_tokens;o&&(l+=` | cache_create=${o}`);let p=b.reasoning_tokens;p&&(l+=` | reasoning=${p}`),console.log(l);let q={prompt_tokens:i,completion_tokens:j,cache_read_input_tokens:n||0,cache_creation_input_tokens:o||0,reasoning_tokens:p||0};(0,d.sZ)({model:c,provider:a,connectionId:e,tokens:q,apiKey:g||void 0}).catch(()=>{}),(0,d.E5)({model:c,provider:a,connectionId:e,tokens:q,status:"200 OK"}).catch(()=>{})}},73870:(a,b,c)=>{c.d(b,{w:()=>k});var d=c(15308),e=c(35024),f=c(8590),g=c(39609);let h=new Map;function i(a){if("string"!=typeof a)return null;try{let b=JSON.parse(a);if("authorized_user"===b.type&&b.client_id&&b.client_secret&&b.refresh_token)return b;return null}catch{return null}}async function j(a){if(h.has(a))return h.get(a);let b=await fetch(`https://aiplatform.googleapis.com/v1/publishers/google/models/__probe__:generateContent?key=${a}`,{method:"POST",headers:{"Content-Type":"application/json"},body:"{}"}),c=await b.json().catch(()=>null),d=(c?.[0]?.error?.message||c?.error?.message||"").match(/projects\/([^/]+)\//),e=d?.[1]||null;return e&&h.set(a,e),e}class k extends d.H{constructor(a="vertex"){super(a,e.xq[a]||{})}buildUrl(a,b,c=0,d=null){let e=(0,f.Sc)(d?.apiKey),g=i(d?.apiKey),h=!!e||!!g||!!d?.accessToken,j=h?null:d?.apiKey,k=e?.project_id||g?.quota_project_id||d?.providerSpecificData?.projectId;if("vertex-partner"===this.provider){if(!k)throw Error("Vertex partner models require a project_id. Add it in providerSpecificData or use Service Account JSON.");let a=`https://aiplatform.googleapis.com/v1/projects/${k}/locations/global/endpoints/openapi/chat/completions`;return j?`${a}?key=${j}`:a}let l=b?"streamGenerateContent":"generateContent";if(h){if(!k)throw Error("Vertex OAuth/ADC requires a project_id. Add quota_project_id to your ADC JSON or set providerSpecificData.projectId.");let c=d?.providerSpecificData?.location||"us-central1",e=`https://aiplatform.googleapis.com/v1/projects/${k}/locations/${c}/publishers/google/models/${a}:${l}`;return b&&(e+="?alt=sse"),e}let m=`https://aiplatform.googleapis.com/v1/publishers/google/models/${a}:${l}`;return b&&(m+="?alt=sse"),j&&(m+=b?`&key=${j}`:`?key=${j}`),m}buildHeaders(a,b=!0){let c={"Content-Type":"application/json"};return a.accessToken&&(c.Authorization=`Bearer ${a.accessToken}`),b&&(c.Accept="text/event-stream"),c}async refreshCredentials(a,b){let c=(0,f.Sc)(a?.apiKey);if(!c)return null;let d=await (0,f.pb)(c,b);return d?{accessToken:d.accessToken,expiresAt:d.expiresAt}:null}async execute({model:a,body:b,stream:c,credentials:d,signal:e,log:h,proxyOptions:k=null}){let l=(0,f.Sc)(d?.apiKey),m=i(d?.apiKey);if(l){let a=await (0,f.pb)(l,h);if(!a?.accessToken)throw Error("Vertex: failed to mint access token from Service Account JSON");d.accessToken=a.accessToken}if(m){let a=await (0,f.I9)(m.refresh_token,m.client_id,m.client_secret,h);if(!a?.accessToken)throw Error("Vertex: failed to refresh access token from ADC JSON (authorized_user)");d.accessToken=a.accessToken}if("vertex-partner"===this.provider&&!l&&!m&&!d?.providerSpecificData?.projectId){let a=await j(d.apiKey);if(!a)throw Error("Vertex: could not resolve project_id from API key. Please add it manually in provider settings.");h?.debug?.("VERTEX",`Resolved project_id: ${a}`),d.providerSpecificData={...d.providerSpecificData,projectId:a}}let n=this.buildUrl(a,c,0,d),o=this.buildHeaders(d,c),p=this.transformRequest(a,b,c,d);return{response:await (0,g.proxyAwareFetch)(n,{method:"POST",headers:o,body:JSON.stringify(p),signal:e},k),url:n,headers:o,transformedBody:p}}}},74010:(a,b,c)=>{c.d(b,{c:()=>e});let d=[{match:/claude/i,drop:["temperature"]},{provider:"github",match:/gpt-5\.4/i,drop:["temperature"]},{provider:"github",match:a=>/claude/i.test(a)&&!/claude.*(opus|sonnet).*4[.\-]6/i.test(a),drop:["thinking","reasoning_effort"]}];function e(a,b,c){if(!b||!c||"object"!=typeof c)return c;for(let e of d)if((!e.provider||e.provider===a)&&("function"==typeof e.match?e.match(b):e.match.test(b)))for(let a of e.drop)void 0!==c[a]&&delete c[a];return c}},81756:(a,b,c)=>{c.d(b,{JA:()=>h});var d=c(55511),e=c.n(d),f=c(85081);function g(a,b=""){return e().createHash("sha256").update(a+b).digest("hex")}function h(a,b=null,c=!0){let d=a.includes("::")?a.split("::")[1]:a,i=b||g(d,"machineId"),j=(0,f.Ay)(d,f.Ay.DNS),k=g(d),l=function(a){let b=Math.floor(Date.now()/1e6),c=new Uint8Array([b>>40&255,b>>32&255,b>>24&255,b>>16&255,b>>8&255,255&b]),d=165;for(let a=0;a<c.length;a++)c[a]=(c[a]^d)+a%256&255,d=c[a];let e="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_",f="";for(let a=0;a<c.length;a+=3){let b=c[a],d=a+1<c.length?c[a+1]:0,g=a+2<c.length?c[a+2]:0;f+=e[b>>2],f+=e[(3&b)<<4|d>>4],a+1<c.length&&(f+=e[(15&d)<<2|g>>6]),a+2<c.length&&(f+=e[63&g])}return`${f}${a}`}(i),m="linux";"u">typeof process&&("win32"===process.platform?m="windows":"darwin"===process.platform&&(m="macos"));let n="x64";return"u">typeof process&&"arm64"===process.arch&&(n="aarch64"),{authorization:`Bearer ${d}`,"connect-accept-encoding":"gzip","connect-protocol-version":"1","content-type":"application/connect+proto","user-agent":"connect-es/1.6.1","x-amzn-trace-id":`Root=${e().randomUUID()}`,"x-client-key":k,"x-cursor-checksum":l,"x-cursor-client-version":"3.1.0","x-cursor-client-type":"ide","x-cursor-client-os":m,"x-cursor-client-arch":n,"x-cursor-client-device-type":"desktop","x-cursor-config-version":e().randomUUID(),"x-cursor-timezone":Intl.DateTimeFormat().resolvedOptions().timeZone||"UTC","x-ghost-mode":c?"true":"false","x-request-id":e().randomUUID(),"x-session-id":j}}},90926:(a,b,c)=>{c.d(b,{Ak:()=>h});var d=c(55511),e=c(15308),f=c(35024),g=c(47723);class h extends e.H{constructor(){super("commandcode",f.xq.commandcode)}transformRequest(a,b,c,d){return b.stream=!0,b}buildHeaders(a,b=!0){let c={"Content-Type":"application/json",...this.config.headers||{},"x-session-id":(0,d.randomUUID)()},e=a?.apiKey||a?.accessToken;return e&&(c.Authorization=`Bearer ${e}`),b&&(c.Accept="text/event-stream"),c}async execute(a){let b=await super.execute(a);return b?.response?.ok&&b.response.body&&(b.response=await i(b.response,a.model)),b}parseError(a,b){let c=null;try{c=JSON.parse(b||"{}")}catch{c=null}let d=c?.error||c,e=d?.message||c?.message||b||a.statusText;return{status:Number(d?.code||d?.statusCode||a.status)||a.status,message:e||`CommandCode upstream error: ${a.status}`}}}async function i(a,b){var c,d;let e,f=a.body.getReader(),h=new TextDecoder,i="",j=[],k=null;try{for(;;){let{value:a,done:b}=await f.read();if(b){let a=i.trim();if(a)try{let b=a.startsWith("data:")?a.slice(5).trim():a,c=JSON.parse(b);c?.type==="error"&&(k=c)}catch{}break}j.push(a);let c=(i+=h.decode(a,{stream:!0})).split("\n");i=c.pop()||"";let d=!1;for(let a of c){let b,c=a.trim();if(!c)continue;let e=c.startsWith("data:")?c.slice(5).trim():c;if(!e||"[DONE]"===e){d=!0;break}try{b=JSON.parse(e)}catch{continue}if(b?.type==="error"){k=b,d=!0;break}if(b?.type==="text-delta"||b?.type==="reasoning-delta"||b?.type==="tool-input-start"||b?.type==="tool-call"||b?.type==="finish"||b?.type==="finish-step"){d=!0;break}}if(d)break}}catch{try{f.releaseLock()}catch{}return a}if(k){try{await f.cancel()}catch{}let{statusCode:a,message:b,type:c}=function(a){if(!a||"object"!=typeof a)return{statusCode:503,message:"CommandCode upstream error",type:"server_error"};let b=a.error??a.message??"unknown",c="",d=null,e="server_error";if("object"==typeof b&&null!==b?(c=b.message||b.error||JSON.stringify(b),b.statusCode&&Number.isInteger(Number(b.statusCode))?d=Number(b.statusCode):b.status&&Number.isInteger(Number(b.status))&&(d=Number(b.status)),b.type&&(e=b.type)):c="string"==typeof b?b:JSON.stringify(b),a.statusCode&&Number.isInteger(Number(a.statusCode))&&(d=Number(a.statusCode)),!d||d<400||d>599){let a=c.toLowerCase();a.includes("rate limit")||a.includes("too many requests")?(d=429,e="rate_limit_error"):a.includes("unauthorized")||a.includes("invalid api key")||a.includes("authentication")?(d=401,e="authentication_error"):a.includes("payment required")||a.includes("billing")?(d=402,e="billing_error"):a.includes("quota")||a.includes("forbidden")||a.includes("permission")?(d=403,e="permission_error"):a.includes("not found")?(d=404,e="invalid_request_error"):a.includes("unavailable")||a.includes("overloaded")||a.includes("server error")?(d=503,e="server_error"):d=503}return{statusCode:d,message:c,type:e}}(k);return new Response(JSON.stringify({error:{message:`[CommandCode error: ${b}]`,type:c,code:a}}),{status:a,statusText:503===a?"Service Unavailable":429===a?"Too Many Requests":"Bad Gateway",headers:{"Content-Type":"application/json","Access-Control-Allow-Origin":"*"}})}return function(a,b,c=null){let d=new TextDecoder,e=new TextEncoder,f="",h={model:b},i=(a,b)=>{if(a)for(let c of Array.isArray(a)?a:[a])null!=c&&b.enqueue(e.encode(`data: ${JSON.stringify(c)}
|
|
161
|
+
${e}`:a.system=e;if(!Array.isArray(a.messages))return;let f=a.messages[0];f?.role==="system"&&"string"==typeof f.content?a.messages=[{...f,content:`${f.content}
|
|
154
162
|
|
|
155
|
-
`)
|
|
163
|
+
${e}`},...a.messages.slice(1)]:a.messages=[{role:"system",content:e},...a.messages]}(a,b,e),"none"===a.tool_choice&&delete a.tool_choice,a.tool_choice||"responses"!==b||(a.tool_choice="auto"),q(a,d),d}function q(a,b){a&&"object"==typeof a&&b?.size&&k.set(a,b)}var r=c(13120),s=c(14530);let t="_opencodeSession",u=/^ses_[0-9a-f]{12}[0-9A-Za-z]{14}$/,v=new Set(["muse-spark-1.2-contributor-free","muse-spark-1.3-contributor-free"]),w=new Set(["union-alpha"]),x=new Set(["muse-spark-1.3","muse-spark-1.3-contributor-free"]),y=(1n<<48n)-1n,z=(1n<<36n)-1n;function A(a){return String(a||"").replace(/\([^()]+\)\s*$/,"").trim()}function B(a){let b,c=A(a);return v.has(c)||(b=A(c),/^muse[-_]?spark(?:$|[-_:.\s])/i.test(b.includes("/")?b.split("/").pop():b))}function C(a){return w.has(A(a))}class D extends f.H{constructor(){super("opencode",g.xq.opencode)}prepareRequestCredentials({body:a,credentials:b,clientTool:c}={}){let d=b||{};return{...d,[t]:function(a,b,c){let d=function(a){if(!a||"object"!=typeof a)return null;for(let[b,c]of Object.entries(a))if("x-opencode-session"===b.toLowerCase())return function(a){if("string"!=typeof a)return null;let b=a.trim();return!b||b.length>256?null:b}(c);return null}(b?.rawHeaders);if(d&&u.test(d))return d;let f={...b||{}};return f.connectionId||f.id||(f.connectionId="opencode:noauth"),function(a,b=""){if("string"==typeof a&&u.test(a.trim()))return a.trim();let c=e().createHash("sha256").update(`opencode\0${b||"generic"}\0${a||""}`).digest(),d=(~(4096n*BigInt(BigInt(`0x${c.subarray(0,5).toString("hex")}`)&z)+BigInt(1))&y).toString(16).padStart(12,"0"),f="";for(let a=6;a<20;a++)f+="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz"[c[a]%62];return`ses_${d}${f}`}(d||(0,r.fH)(f,a),c)}(a,d,c)}}resolveTargetFormat(a){return C(a)?"claude":"openai"}transformRequest(a,b,c,d){if(!b||"object"!=typeof b)return b;if(a&&!b.model&&(b.model=a),B(a||b.model)){let e=(0,r.dY)(a,b,c,d);return void 0!==e.tool_choice&&"auto"!==e.tool_choice&&x.has(A(a))&&(e.tool_choice="auto"),e.stream=!0,p(e,"responses"),e}b.stream=!0;let e=p(b,C(a)?"claude":"chat"),f=(0,h.Z)({provider:this.provider,model:a,body:b});return f!==b&&q(f,e),f}async execute(a){var b;let c=this.prepareRequestCredentials(a),d=await super.execute({...a,credentials:c});if(!d?.response?.ok)return d;let e=function(a,b){if(!b?.size||!a?.body)return a;let c=new TextDecoder("utf-8",{fatal:!1}),d=new TextEncoder,e="",f=a=>a.split("\n").map(a=>(function(a,b){let c;if(!a.startsWith("data:"))return a;let d=a.slice(5).trim();if(!d||"[DONE]"===d)return a;try{c=JSON.parse(d)}catch{return a}let e=function a(b,c){if(!c?.size||!b)return b;if(Array.isArray(b))return b.map(b=>a(b,c));if("object"!=typeof b)return b;let d=b,e=(a,c)=>{d===b&&(d={...b}),d[a]=c};if("content_block_start"===b.type){let a=b.content_block;a?.type==="tool_use"&&"string"==typeof a.name&&c.has(a.name)&&e("content_block",{...a,name:c.get(a.name)})}Array.isArray(b.content)&&e("content",b.content.map(a=>a?.type==="tool_use"&&"string"==typeof a.name&&c.has(a.name)?{...a,name:c.get(a.name)}:a)),Array.isArray(b.choices)&&e("choices",b.choices.map(a=>{let b=!1,d={...a};for(let e of["delta","message"]){let f=a?.[e];if(!f||!Array.isArray(f.tool_calls)||0===f.tool_calls.length)continue;let g=f.tool_calls.map(a=>{let d=a?.function?.name;return"string"==typeof d&&c.has(d)?(b=!0,{...a,function:{...a.function,name:c.get(d)}}):a});d[e]={...f,tool_calls:g}}return b?d:a})),Array.isArray(b.output)&&e("output",b.output.map(a=>a?.type==="function_call"&&"string"==typeof a.name&&c.has(a.name)?{...a,name:c.get(a.name)}:a));let f=b.item;return f?.type==="function_call"&&"string"==typeof f.name&&c.has(f.name)&&e("item",{...f,name:c.get(f.name)}),d}(c,b);return e===c?a:`data: ${JSON.stringify(e)}`})(a,b)).join("\n"),g=new TransformStream({transform(a,b){let g=(e+=c.decode(a,{stream:!0})).lastIndexOf("\n");if(-1===g)return;let h=e.slice(0,g+1);e=e.slice(g+1),b.enqueue(d.encode(f(h)))},flush(a){(e+=c.decode())&&a.enqueue(d.encode(f(e)))}});return new Response(a.body.pipeThrough(g),{status:a.status,statusText:a.statusText,headers:a.headers})}(d.response,(b=d.transformedBody)&&"object"==typeof b&&k.get(b)||null);return B(a.model)&&(e=(0,s.L)(e,{model:a.model,stream:a.stream})),e===d.response?d:{...d,response:e}}buildUrl(a){let b=this.config.baseUrl;return B(a)?`${b}/inference/v1/responses`:C(a)?`${b}/inference/v1/messages`:`${b}/inference/v1/chat/completions`}buildHeaders(a,b=!0,c=""){let d,e=function(a){let b={};for(let[c,d]of Object.entries(a||{}))b[c.toLowerCase()]=d;return b}(a?.rawHeaders),f=e["user-agent"]||"",g=a?.[t]||this.prepareRequestCredentials({credentials:a})[t],h={"Content-Type":"application/json",Authorization:"Bearer public","User-Agent":(d=String(f||"").match(/^opencode\/[a-z0-9-]+\/(\d+)\.\d+\.\d+\/[a-z0-9-]+$/i))&&parseInt(d[1],10)>=2?f:"opencode/latest/2.0.26/cli","x-opencode-client":e["x-opencode-client"]||"cli","x-opencode-session":g,"x-opencode-session-id":g,"x-session-affinity":g,"x-session-id":g,"x-opencode-project":e["x-opencode-project"]||"global",Accept:b?"text/event-stream":"*/*"};return String(c).endsWith("/messages")&&(h["anthropic-version"]="2023-06-01"),h}}},96179:(a,b,c)=>{c.d(b,{L:()=>m});var d=c(15308),e=c(35024),f=c(75924),g=c(15626),h=c(39609),i=c(86724),j=c(74010),k=c(33748),l=c(55399);class m extends d.H{constructor(a){super(a,e.xq[a]||e.xq.openai)}isClaudeFormatTarget(){return this.config?.format==="claude"||!!this.provider?.startsWith?.("anthropic-compatible-")}transformRequest(a,b){let c=this.applyJsonSchemaFallback(b);return c&&"object"==typeof c&&(this.isClaudeFormatTarget()&&(c=(0,k.VM)(c,c.model||a)),"gemini"===this.provider&&(delete c.model,delete c.stream),("cerebras"===this.provider||"mistral"===this.provider)&&delete c.client_metadata,(0,j.c)(this.provider,a,c)),(0,i.Z)({provider:this.provider,model:a,body:c})}applyJsonSchemaFallback(a){if(!this.provider?.startsWith?.("openai-compatible-"))return a;let b=a?.response_format;if(b?.type!=="json_schema"||!b.json_schema?.schema)return a;let c=JSON.stringify(b.json_schema.schema,null,2),d=`You must respond with valid JSON that strictly follows this JSON schema:
|
|
156
164
|
\`\`\`json
|
|
157
165
|
${c}
|
|
158
166
|
\`\`\`
|
|
@@ -160,4 +168,4 @@ Respond ONLY with the JSON object, no other text.`,e=Array.isArray(a.messages)?a
|
|
|
160
168
|
|
|
161
169
|
${d}`:Array.isArray(f.content)&&f.content.push({type:"text",text:`
|
|
162
170
|
|
|
163
|
-
${d}`}):e.unshift({role:"system",content:d}),{...a,messages:e,response_format:{type:"json_object"}}}buildUrl(a,b,c=0,d=null){if(this.provider?.startsWith?.("openai-compatible-")){let a=(d?.providerSpecificData?.baseUrl||"https://api.openai.com/v1").replace(/\/$/,""),b=this.provider.includes("responses")?"/responses":"/chat/completions";return`${a}${b}`}if(this.provider?.startsWith?.("anthropic-compatible-")){let a=(d?.providerSpecificData?.baseUrl||"https://api.anthropic.com/v1").replace(/\/$/,"");return`${a}/messages`}switch(this.provider){case"claude":case"glm":case"kimi":case"minimax":case"minimax-cn":case"kimi-coding":return`${this.config.baseUrl}?beta=true`;case"gemini":return`${this.config.baseUrl}/${a}:${b?"streamGenerateContent?alt=sse":"generateContent"}`;default:{let a=this.config.baseUrl;if(a?.includes("{accountId}")){let b=d?.providerSpecificData?.accountId;if(!b)throw Error(`${this.provider} requires accountId in providerSpecificData`);return a.replace("{accountId}",b)}return a}}}buildHeaders(a,b=!0,c=null,d=null){let
|
|
171
|
+
${d}`}):e.unshift({role:"system",content:d}),{...a,messages:e,response_format:{type:"json_object"}}}buildUrl(a,b,c=0,d=null){if(this.provider?.startsWith?.("openai-compatible-")){let a=(d?.providerSpecificData?.baseUrl||"https://api.openai.com/v1").replace(/\/$/,""),b=this.provider.includes("responses")?"/responses":"/chat/completions";return`${a}${b}`}if(this.provider?.startsWith?.("anthropic-compatible-")){let a=(d?.providerSpecificData?.baseUrl||"https://api.anthropic.com/v1").replace(/\/$/,"");return`${a}/messages`}switch(this.provider){case"claude":case"glm":case"kimi":case"minimax":case"minimax-cn":case"kimi-coding":return`${this.config.baseUrl}?beta=true`;case"gemini":return`${this.config.baseUrl}/${a}:${b?"streamGenerateContent?alt=sse":"generateContent"}`;default:{let a=this.config.baseUrl;if(a?.includes("{accountId}")){let b=d?.providerSpecificData?.accountId;if(!b)throw Error(`${this.provider} requires accountId in providerSpecificData`);return a.replace("{accountId}",b)}return a}}}buildHeaders(a,b=!0,c=null,d=null,h=null){let i={"Content-Type":"application/json",...this.config.headers};switch(this.provider){case"gemini":a.apiKey?i["x-goog-api-key"]=a.apiKey:i.Authorization=`Bearer ${a.accessToken}`;break;case"claude":if(d&&(i["Anthropic-Beta"]=(0,e.d)(d,h)),a.apiKey?i["x-api-key"]=a.apiKey:i.Authorization=`Bearer ${a.accessToken}`,(a.accessToken||a.apiKey||"").includes("sk-ant-oat")){let a=(0,l.tV)(h?.metadata?.user_id);a&&(i["x-claude-code-session-id"]=a)}break;case"glm":case"kimi":case"minimax":case"minimax-cn":case"kimi-coding":i["x-api-key"]=a.apiKey||a.accessToken,"kimi-coding"===this.provider&&Object.assign(i,(0,f.VK)());break;default:this.provider?.startsWith?.("anthropic-compatible-")?(a.apiKey?i["x-api-key"]=a.apiKey:a.accessToken&&(i.Authorization=`Bearer ${a.accessToken}`),i["anthropic-version"]||(i["anthropic-version"]="2023-06-01"),"string"==typeof d&&/^claude-/.test(d)&&(i["Anthropic-Beta"]=(0,e.d)(d,h))):"gitlab"===this.provider||"codebuddy-cn"===this.provider?i.Authorization=`Bearer ${a.apiKey||a.accessToken}`:"kilocode"===this.provider?(i.Authorization=`Bearer ${a.apiKey||a.accessToken}`,a.providerSpecificData?.orgId&&(i["X-Kilocode-OrganizationID"]=a.providerSpecificData.orgId)):"cline"===this.provider||"clinepass"===this.provider?Object.assign(i,(0,g.w$)(a.apiKey||a.accessToken)):this.config?.format==="claude"?(i["x-api-key"]=a.apiKey||a.accessToken,i["anthropic-version"]||(i["anthropic-version"]="2023-06-01")):i.Authorization=`Bearer ${a.apiKey||a.accessToken}`}if(this.provider?.startsWith?.("anthropic-compatible-")){let b=a?.providerSpecificData?.baseUrl||"";if(!(""===b||b.includes("api.anthropic.com"))){for(let b of(a.apiKey&&!i.Authorization&&(i.Authorization=`Bearer ${a.apiKey}`),delete i["anthropic-dangerous-direct-browser-access"],delete i["Anthropic-Dangerous-Direct-Browser-Access"],delete i["x-app"],delete i["X-App"],["anthropic-beta","Anthropic-Beta"]))if(i[b]){let a=i[b].split(",").map(a=>a.trim()).filter(a=>a&&"claude-code-20250219"!==a).join(",");a?i[b]=a:delete i[b]}}}return b&&(i.Accept="text/event-stream"),i}async refreshCredentials(a,b,c=null){if(!a.refreshToken)return null;let d={claude:()=>this.refreshWithJSON(f.NA.anthropic.token,{grant_type:"refresh_token",refresh_token:a.refreshToken,client_id:e.xq.claude.clientId},c),codex:()=>this.refreshWithForm(f.NA.openai.token,{grant_type:"refresh_token",refresh_token:a.refreshToken,client_id:e.xq.codex.clientId,scope:"openid profile email offline_access"},c),qwen:()=>this.refreshWithForm(f.NA.qwen.token,{grant_type:"refresh_token",refresh_token:a.refreshToken,client_id:e.xq.qwen.clientId},c),iflow:()=>this.refreshIflow(a.refreshToken,c),gemini:()=>this.refreshGoogle(a.refreshToken,c),kiro:()=>this.refreshKiro(a.refreshToken,c),cline:()=>this.refreshCline(a.refreshToken,c),clinepass:()=>this.refreshCline(a.refreshToken,c),"kimi-coding":()=>this.refreshKimiCoding(a.refreshToken,c),kilocode:()=>this.refreshKilocode(a.refreshToken,c),"codebuddy-cn":()=>this.refreshCodebuddy(a.refreshToken,c)}[this.provider];if(!d)return null;try{let a=await d();return a&&b?.info?.("TOKEN",`${this.provider} refreshed`),a}catch(a){return b?.error?.("TOKEN",`${this.provider} refresh error: ${a.message}`),null}}async refreshWithJSON(a,b,c=null){let d=await (0,h.proxyAwareFetch)(a,{method:"POST",headers:{"Content-Type":"application/json",Accept:"application/json"},body:JSON.stringify(b)},c);if(!d.ok)return null;let e=await d.json();return{accessToken:e.access_token,refreshToken:e.refresh_token||b.refresh_token,expiresIn:e.expires_in}}async refreshWithForm(a,b,c=null){let d=await (0,h.proxyAwareFetch)(a,{method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded",Accept:"application/json"},body:new URLSearchParams(b)},c);if(!d.ok)return null;let e=await d.json();return{accessToken:e.access_token,refreshToken:e.refresh_token||b.refresh_token,expiresIn:e.expires_in}}async refreshIflow(a,b=null){let c=btoa(`${e.xq.iflow.clientId}:${e.xq.iflow.clientSecret}`),d=await (0,h.proxyAwareFetch)(f.NA.iflow.token,{method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded",Accept:"application/json",Authorization:`Basic ${c}`},body:new URLSearchParams({grant_type:"refresh_token",refresh_token:a,client_id:e.xq.iflow.clientId,client_secret:e.xq.iflow.clientSecret})},b);if(!d.ok)return null;let g=await d.json();return{accessToken:g.access_token,refreshToken:g.refresh_token||a,expiresIn:g.expires_in}}async refreshGoogle(a,b=null){let c=await (0,h.proxyAwareFetch)(f.NA.google.token,{method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded",Accept:"application/json"},body:new URLSearchParams({grant_type:"refresh_token",refresh_token:a,client_id:this.config.clientId,client_secret:this.config.clientSecret})},b);if(!c.ok)return null;let d=await c.json();return{accessToken:d.access_token,refreshToken:d.refresh_token||a,expiresIn:d.expires_in}}async refreshKiro(a,b=null){let c=await (0,h.proxyAwareFetch)(e.xq.kiro.tokenUrl,{method:"POST",headers:{"Content-Type":"application/json",Accept:"application/json","User-Agent":"kiro-cli/1.0.0"},body:JSON.stringify({refreshToken:a})},b);if(!c.ok)return null;let d=await c.json();return{accessToken:d.accessToken,refreshToken:d.refreshToken||a,expiresIn:d.expiresIn}}async refreshCline(a,b=null){if(!a)return null;try{let c=e.xq.cline?.refreshUrl||"https://api.cline.bot/api/v1/auth/refresh",d=await (0,h.proxyAwareFetch)(c,{method:"POST",headers:{"Content-Type":"application/json",Accept:"application/json"},body:JSON.stringify({refreshToken:a,grantType:"refresh_token",clientType:"extension"})},b);if(!d.ok){let a=await d.text();return console.error(`[Cline] Token refresh failed: ${d.status} ${a}`),null}let f=await d.json(),g=f?.data||f;if(!g?.accessToken)return null;let i=g.expiresAt,j=i?Math.max(1,Math.floor((new Date(i).getTime()-Date.now())/1e3)):g.expiresIn||g.expires_in||3600;return{accessToken:g.accessToken,refreshToken:g.refreshToken||a,expiresIn:j}}catch(a){return console.error(`[Cline] Token refresh error: ${a.message}`),null}}async refreshCodebuddy(a,b=null){if(!a)return null;let c=e.xq["codebuddy-cn"]||{},d=await (0,h.proxyAwareFetch)(c.refreshUrl,{method:"POST",headers:{"Content-Type":"application/json",Accept:"application/json","User-Agent":"CLI/2.108.1 CodeBuddy/2.108.1","X-Requested-With":"XMLHttpRequest","X-Domain":"copilot.tencent.com","X-Refresh-Token":a,"X-Auth-Refresh-Source":"plugin","X-Product":"SaaS"},body:"{}"},b);if(!d.ok)return null;let f=await d.json();return f?.code===0&&f?.data?.accessToken?{accessToken:f.data.accessToken,refreshToken:f.data.refreshToken||a,expiresIn:f.data.expiresIn}:null}async refreshKimiCoding(a,b=null){let c=(0,f.VK)(),d=await (0,h.proxyAwareFetch)("https://auth.kimi.com/api/oauth/token",{method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded",Accept:"application/json",...c},body:new URLSearchParams({grant_type:"refresh_token",refresh_token:a,client_id:"17e5f671-d194-4dfb-9706-5516cb48c098"})},b);if(!d.ok)return null;let e=await d.json();return{accessToken:e.access_token,refreshToken:e.refresh_token||a,expiresIn:e.expires_in}}async refreshKilocode(a,b=null){return null}}},98625:(a,b,c)=>{c.d(b,{P:()=>e});var d=c(96179);class e extends d.L{constructor(){super("azure")}buildUrl(a,b,c=0,d=null){let e=d?.providerSpecificData?.azureEndpoint||process.env.AZURE_ENDPOINT||"https://api.openai.com",f=d?.providerSpecificData?.apiVersion||process.env.AZURE_API_VERSION||"2024-10-01-preview",g=d?.providerSpecificData?.deployment||a||process.env.AZURE_DEPLOYMENT||"gpt-4",h=e.replace(/\/$/,"");return`${h}/openai/deployments/${g}/chat/completions?api-version=${f}`}buildHeaders(a,b=!0){let c={"Content-Type":"application/json",...this.config.headers},d=a?.apiKey||a?.accessToken||process.env.OPENAI_API_KEY;d&&(c["api-key"]=d);let e=a?.providerSpecificData?.organization||process.env.AZURE_ORGANIZATION;return e&&(c["OpenAI-Organization"]=e),b&&(c.Accept="text/event-stream"),c}transformRequest(a,b,c,d){return b}}}};
|