axonrouter 0.1.2 → 0.1.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.next/standalone/.next/BUILD_ID +1 -1
- package/.next/standalone/.next/build-manifest.json +3 -3
- package/.next/standalone/.next/node_modules/better-sqlite3-90e2652d1716b047/build/Release/better_sqlite3.node +0 -0
- package/.next/standalone/.next/node_modules/better-sqlite3-90e2652d1716b047/lib/database.js +90 -0
- package/.next/standalone/.next/node_modules/better-sqlite3-90e2652d1716b047/lib/index.js +3 -0
- package/.next/standalone/.next/node_modules/better-sqlite3-90e2652d1716b047/lib/methods/aggregate.js +43 -0
- package/.next/standalone/.next/node_modules/better-sqlite3-90e2652d1716b047/lib/methods/backup.js +67 -0
- package/.next/standalone/.next/node_modules/better-sqlite3-90e2652d1716b047/lib/methods/function.js +31 -0
- package/.next/standalone/.next/node_modules/better-sqlite3-90e2652d1716b047/lib/methods/inspect.js +7 -0
- package/.next/standalone/.next/node_modules/better-sqlite3-90e2652d1716b047/lib/methods/pragma.js +12 -0
- package/.next/standalone/.next/node_modules/better-sqlite3-90e2652d1716b047/lib/methods/serialize.js +16 -0
- package/.next/standalone/.next/node_modules/better-sqlite3-90e2652d1716b047/lib/methods/table.js +189 -0
- package/.next/standalone/.next/node_modules/better-sqlite3-90e2652d1716b047/lib/methods/transaction.js +78 -0
- package/.next/standalone/.next/node_modules/better-sqlite3-90e2652d1716b047/lib/methods/wrappers.js +54 -0
- package/.next/standalone/.next/node_modules/better-sqlite3-90e2652d1716b047/lib/sqlite-error.js +20 -0
- package/.next/standalone/.next/node_modules/better-sqlite3-90e2652d1716b047/lib/util.js +12 -0
- package/.next/standalone/.next/node_modules/better-sqlite3-90e2652d1716b047/package.json +59 -0
- package/.next/standalone/.next/node_modules/keyv-6a1b13251e43e5d9/dist/index.js +964 -0
- package/.next/standalone/.next/node_modules/keyv-6a1b13251e43e5d9/package.json +88 -0
- package/.next/standalone/.next/node_modules/node-machine-id-1f004c4bfec225c1/dist/index.js +1 -0
- package/.next/standalone/.next/node_modules/node-machine-id-1f004c4bfec225c1/package.json +74 -0
- package/.next/standalone/.next/server/app/(dashboard)/dashboard/analytics/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/(dashboard)/dashboard/basic-chat/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/(dashboard)/dashboard/cli-tools/page.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/(dashboard)/dashboard/cli-tools/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/(dashboard)/dashboard/combos/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/(dashboard)/dashboard/console-log/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/(dashboard)/dashboard/endpoint/page.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/(dashboard)/dashboard/endpoint/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/(dashboard)/dashboard/intelligence/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/(dashboard)/dashboard/mcp/page.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/(dashboard)/dashboard/mcp/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/(dashboard)/dashboard/media-providers/[kind]/[id]/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/(dashboard)/dashboard/media-providers/[kind]/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/(dashboard)/dashboard/media-providers/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/(dashboard)/dashboard/mitm/page.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/(dashboard)/dashboard/mitm/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/(dashboard)/dashboard/morph/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/(dashboard)/dashboard/opencode/page.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/(dashboard)/dashboard/opencode/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/(dashboard)/dashboard/page.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/(dashboard)/dashboard/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/(dashboard)/dashboard/profile/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/(dashboard)/dashboard/providers/[id]/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/(dashboard)/dashboard/providers/new/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/(dashboard)/dashboard/providers/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/(dashboard)/dashboard/proxy-pools/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/(dashboard)/dashboard/quota/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/(dashboard)/dashboard/settings/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/(dashboard)/dashboard/settings/pricing/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/(dashboard)/dashboard/skills/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/(dashboard)/dashboard/translator/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/(dashboard)/dashboard/usage/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/_global-error.html +1 -1
- package/.next/standalone/.next/server/app/_global-error.rsc +1 -1
- package/.next/standalone/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/_not-found.html +1 -1
- package/.next/standalone/.next/server/app/_not-found.rsc +2 -2
- package/.next/standalone/.next/server/app/_not-found.segments/_full.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/_not-found.segments/_head.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/_not-found.segments/_index.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/_not-found.segments/_not-found.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/_not-found.segments/_tree.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/api/auth/login/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/cli-tools/antigravity-mitm/alias/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/cli-tools/antigravity-mitm/route.js +1 -1
- package/.next/standalone/.next/server/app/api/cli-tools/antigravity-mitm/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/cli-tools/claude-settings/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/cli-tools/codex-settings/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/cli-tools/copilot-settings/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/cli-tools/cowork-settings/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/cli-tools/droid-settings/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/cli-tools/hermes-settings/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/cli-tools/openclaw-settings/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/cli-tools/opencode-settings/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/cli-tools/pi-settings/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/cloud/auth/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/cloud/credentials/update/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/cloud/model/resolve/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/cloud/models/alias/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/cloud-urls/[id]/status/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/cloud-urls/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/cloud-urls/sync/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/cloud-urls/test/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/combos/[id]/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/combos/reorder/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/combos/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/combos/test/route.js +1 -1
- package/.next/standalone/.next/server/app/api/combos/test/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/credentials/export/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/credentials/import/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/evals/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/go-router/restart/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/go-router/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/incidents/actions/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/incidents/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/internal/proxy/report/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/internal/proxy/resolve/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/keys/[id]/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/keys/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/mcp/audit/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/mcp/audit/stats/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/mcp/invoke/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/mcp/sse/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/mcp/status/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/mcp/stream/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/mcp/tools/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/media-providers/tts/elevenlabs/voices/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/model-combo-mappings/[id]/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/model-combo-mappings/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/model-sync/route.js +1 -1
- package/.next/standalone/.next/server/app/api/model-sync/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/models/alias/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/models/availability/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/models/custom/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/models/disabled/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/models/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/models/test/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/morph/test-key/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/morph/usage/requests/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/morph/usage/stats/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/oauth/[provider]/[action]/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/oauth/cursor/import/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/oauth/gitlab/pat/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/oauth/iflow/cookie/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/oauth/kiro/import/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/oauth/kiro/social-exchange/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/opencode/bundle/preview/route.js +3 -3
- package/.next/standalone/.next/server/app/api/opencode/bundle/preview/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/opencode/preferences/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/opencode/sync/bundle/route.js +1 -1
- package/.next/standalone/.next/server/app/api/opencode/sync/bundle/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/opencode/sync/tokens/[id]/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/opencode/sync/tokens/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/opencode/sync/version/route.js +1 -1
- package/.next/standalone/.next/server/app/api/opencode/sync/version/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/outcome-intelligence/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/plugin/usage-summary/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/pricing/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/provider-models/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/provider-nodes/[id]/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/provider-nodes/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/provider-nodes/validate/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/providers/[id]/models/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/providers/[id]/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/providers/[id]/sync-models/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/providers/[id]/test/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/providers/[id]/test-models/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/providers/client/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/providers/codex/instructions/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/providers/commandcode/instructions/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/providers/morph/instructions/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/providers/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/providers/test-batch/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/providers/validate/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/proxy-pools/[id]/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/proxy-pools/[id]/test/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/proxy-pools/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/proxy-pools/vercel-deploy/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/r2/backup/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/r2/info/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/r2/restore/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/r2/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/r2/test/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/routing/latency/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/routing/optimizer/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/routing/profile-preview/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/settings/database/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/settings/proxy-test/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/settings/require-login/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/settings/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/skills/[id]/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/skills/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/synced-available-models/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/translator/console-logs/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/translator/console-logs/stream/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/translator/load/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/translator/save/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/translator/send/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/translator/translate/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/tunnel/status/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/tunnel/tailscale-install/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/tunnel/tailscale-start-daemon/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/usage/[connectionId]/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/usage/analytics/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/usage/chart/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/usage/history/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/usage/logs/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/usage/providers/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/usage/request-details/[id]/replay/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/usage/request-details/[id]/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/usage/request-details/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/usage/request-logs/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/usage/stats/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/usage/stream/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/usage-worker/run/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/usage-worker/status/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/v1/api/chat/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/v1/audio/speech/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/v1/audio/transcriptions/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/v1/chat/completions/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/v1/embeddings/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/v1/images/generations/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/v1/messages/count_tokens/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/v1/messages/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/v1/models/route.js +1 -1
- package/.next/standalone/.next/server/app/api/v1/models/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/v1/responses/compact/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/v1/responses/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/v1/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/v1/unified/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/v1/video/generations/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/v1beta/models/[...path]/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/callback/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/callback.html +1 -1
- package/.next/standalone/.next/server/app/callback.rsc +2 -2
- package/.next/standalone/.next/server/app/callback.segments/_full.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/callback.segments/_head.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/callback.segments/_index.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/callback.segments/_tree.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/callback.segments/callback/__PAGE__.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/callback.segments/callback.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/dashboard/analytics.html +2 -2
- package/.next/standalone/.next/server/app/dashboard/analytics.rsc +6 -6
- package/.next/standalone/.next/server/app/dashboard/analytics.segments/!KGRhc2hib2FyZCk/dashboard/analytics/__PAGE__.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/dashboard/analytics.segments/!KGRhc2hib2FyZCk/dashboard/analytics.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/dashboard/analytics.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/dashboard/analytics.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/dashboard/analytics.segments/_full.segment.rsc +6 -6
- package/.next/standalone/.next/server/app/dashboard/analytics.segments/_head.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/dashboard/analytics.segments/_index.segment.rsc +3 -3
- package/.next/standalone/.next/server/app/dashboard/analytics.segments/_tree.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/dashboard/basic-chat.html +2 -2
- package/.next/standalone/.next/server/app/dashboard/basic-chat.rsc +6 -6
- package/.next/standalone/.next/server/app/dashboard/basic-chat.segments/!KGRhc2hib2FyZCk/dashboard/basic-chat/__PAGE__.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/dashboard/basic-chat.segments/!KGRhc2hib2FyZCk/dashboard/basic-chat.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/dashboard/basic-chat.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/dashboard/basic-chat.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/dashboard/basic-chat.segments/_full.segment.rsc +6 -6
- package/.next/standalone/.next/server/app/dashboard/basic-chat.segments/_head.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/dashboard/basic-chat.segments/_index.segment.rsc +3 -3
- package/.next/standalone/.next/server/app/dashboard/basic-chat.segments/_tree.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/dashboard/cli-tools.html +2 -2
- package/.next/standalone/.next/server/app/dashboard/cli-tools.rsc +7 -7
- package/.next/standalone/.next/server/app/dashboard/cli-tools.segments/!KGRhc2hib2FyZCk/dashboard/cli-tools/__PAGE__.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/dashboard/cli-tools.segments/!KGRhc2hib2FyZCk/dashboard/cli-tools.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/dashboard/cli-tools.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/dashboard/cli-tools.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/dashboard/cli-tools.segments/_full.segment.rsc +7 -7
- package/.next/standalone/.next/server/app/dashboard/cli-tools.segments/_head.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/dashboard/cli-tools.segments/_index.segment.rsc +3 -3
- package/.next/standalone/.next/server/app/dashboard/cli-tools.segments/_tree.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/dashboard/combos.html +2 -2
- package/.next/standalone/.next/server/app/dashboard/combos.rsc +6 -6
- package/.next/standalone/.next/server/app/dashboard/combos.segments/!KGRhc2hib2FyZCk/dashboard/combos/__PAGE__.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/dashboard/combos.segments/!KGRhc2hib2FyZCk/dashboard/combos.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/dashboard/combos.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/dashboard/combos.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/dashboard/combos.segments/_full.segment.rsc +6 -6
- package/.next/standalone/.next/server/app/dashboard/combos.segments/_head.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/dashboard/combos.segments/_index.segment.rsc +3 -3
- package/.next/standalone/.next/server/app/dashboard/combos.segments/_tree.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/dashboard/endpoint.html +1 -1
- package/.next/standalone/.next/server/app/dashboard/endpoint.rsc +7 -7
- package/.next/standalone/.next/server/app/dashboard/endpoint.segments/!KGRhc2hib2FyZCk/dashboard/endpoint/__PAGE__.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/dashboard/endpoint.segments/!KGRhc2hib2FyZCk/dashboard/endpoint.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/dashboard/endpoint.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/dashboard/endpoint.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/dashboard/endpoint.segments/_full.segment.rsc +7 -7
- package/.next/standalone/.next/server/app/dashboard/endpoint.segments/_head.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/dashboard/endpoint.segments/_index.segment.rsc +3 -3
- package/.next/standalone/.next/server/app/dashboard/endpoint.segments/_tree.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/dashboard/intelligence.html +1 -1
- package/.next/standalone/.next/server/app/dashboard/intelligence.rsc +5 -5
- package/.next/standalone/.next/server/app/dashboard/intelligence.segments/!KGRhc2hib2FyZCk/dashboard/intelligence/__PAGE__.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/dashboard/intelligence.segments/!KGRhc2hib2FyZCk/dashboard/intelligence.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/dashboard/intelligence.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/dashboard/intelligence.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/dashboard/intelligence.segments/_full.segment.rsc +5 -5
- package/.next/standalone/.next/server/app/dashboard/intelligence.segments/_head.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/dashboard/intelligence.segments/_index.segment.rsc +3 -3
- package/.next/standalone/.next/server/app/dashboard/intelligence.segments/_tree.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/dashboard/mcp.html +4 -4
- package/.next/standalone/.next/server/app/dashboard/mcp.rsc +7 -7
- package/.next/standalone/.next/server/app/dashboard/mcp.segments/!KGRhc2hib2FyZCk/dashboard/mcp/__PAGE__.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/dashboard/mcp.segments/!KGRhc2hib2FyZCk/dashboard/mcp.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/dashboard/mcp.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/dashboard/mcp.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/dashboard/mcp.segments/_full.segment.rsc +7 -7
- package/.next/standalone/.next/server/app/dashboard/mcp.segments/_head.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/dashboard/mcp.segments/_index.segment.rsc +3 -3
- package/.next/standalone/.next/server/app/dashboard/mcp.segments/_tree.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/dashboard/media-providers.html +2 -2
- package/.next/standalone/.next/server/app/dashboard/media-providers.rsc +6 -6
- package/.next/standalone/.next/server/app/dashboard/media-providers.segments/!KGRhc2hib2FyZCk/dashboard/media-providers/__PAGE__.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/dashboard/media-providers.segments/!KGRhc2hib2FyZCk/dashboard/media-providers.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/dashboard/media-providers.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/dashboard/media-providers.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/dashboard/media-providers.segments/_full.segment.rsc +6 -6
- package/.next/standalone/.next/server/app/dashboard/media-providers.segments/_head.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/dashboard/media-providers.segments/_index.segment.rsc +3 -3
- package/.next/standalone/.next/server/app/dashboard/media-providers.segments/_tree.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/dashboard/mitm.html +2 -2
- package/.next/standalone/.next/server/app/dashboard/mitm.rsc +7 -7
- package/.next/standalone/.next/server/app/dashboard/mitm.segments/!KGRhc2hib2FyZCk/dashboard/mitm/__PAGE__.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/dashboard/mitm.segments/!KGRhc2hib2FyZCk/dashboard/mitm.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/dashboard/mitm.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/dashboard/mitm.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/dashboard/mitm.segments/_full.segment.rsc +7 -7
- package/.next/standalone/.next/server/app/dashboard/mitm.segments/_head.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/dashboard/mitm.segments/_index.segment.rsc +3 -3
- package/.next/standalone/.next/server/app/dashboard/mitm.segments/_tree.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/dashboard/morph.html +1 -1
- package/.next/standalone/.next/server/app/dashboard/morph.rsc +6 -6
- package/.next/standalone/.next/server/app/dashboard/morph.segments/!KGRhc2hib2FyZCk/dashboard/morph/__PAGE__.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/dashboard/morph.segments/!KGRhc2hib2FyZCk/dashboard/morph.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/dashboard/morph.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/dashboard/morph.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/dashboard/morph.segments/_full.segment.rsc +6 -6
- package/.next/standalone/.next/server/app/dashboard/morph.segments/_head.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/dashboard/morph.segments/_index.segment.rsc +3 -3
- package/.next/standalone/.next/server/app/dashboard/morph.segments/_tree.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/dashboard/opencode.html +1 -1
- package/.next/standalone/.next/server/app/dashboard/opencode.rsc +6 -6
- package/.next/standalone/.next/server/app/dashboard/opencode.segments/!KGRhc2hib2FyZCk/dashboard/opencode/__PAGE__.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/dashboard/opencode.segments/!KGRhc2hib2FyZCk/dashboard/opencode.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/dashboard/opencode.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/dashboard/opencode.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/dashboard/opencode.segments/_full.segment.rsc +6 -6
- package/.next/standalone/.next/server/app/dashboard/opencode.segments/_head.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/dashboard/opencode.segments/_index.segment.rsc +3 -3
- package/.next/standalone/.next/server/app/dashboard/opencode.segments/_tree.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/dashboard/profile.html +1 -1
- package/.next/standalone/.next/server/app/dashboard/profile.rsc +6 -6
- package/.next/standalone/.next/server/app/dashboard/profile.segments/!KGRhc2hib2FyZCk/dashboard/profile/__PAGE__.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/dashboard/profile.segments/!KGRhc2hib2FyZCk/dashboard/profile.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/dashboard/profile.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/dashboard/profile.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/dashboard/profile.segments/_full.segment.rsc +6 -6
- package/.next/standalone/.next/server/app/dashboard/profile.segments/_head.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/dashboard/profile.segments/_index.segment.rsc +3 -3
- package/.next/standalone/.next/server/app/dashboard/profile.segments/_tree.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/dashboard/providers/new.html +2 -2
- package/.next/standalone/.next/server/app/dashboard/providers/new.rsc +6 -6
- package/.next/standalone/.next/server/app/dashboard/providers/new.segments/!KGRhc2hib2FyZCk/dashboard/providers/new/__PAGE__.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/dashboard/providers/new.segments/!KGRhc2hib2FyZCk/dashboard/providers/new.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/dashboard/providers/new.segments/!KGRhc2hib2FyZCk/dashboard/providers.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/dashboard/providers/new.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/dashboard/providers/new.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/dashboard/providers/new.segments/_full.segment.rsc +6 -6
- package/.next/standalone/.next/server/app/dashboard/providers/new.segments/_head.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/dashboard/providers/new.segments/_index.segment.rsc +3 -3
- package/.next/standalone/.next/server/app/dashboard/providers/new.segments/_tree.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/dashboard/providers.html +2 -2
- package/.next/standalone/.next/server/app/dashboard/providers.rsc +6 -6
- package/.next/standalone/.next/server/app/dashboard/providers.segments/!KGRhc2hib2FyZCk/dashboard/providers/__PAGE__.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/dashboard/providers.segments/!KGRhc2hib2FyZCk/dashboard/providers.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/dashboard/providers.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/dashboard/providers.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/dashboard/providers.segments/_full.segment.rsc +6 -6
- package/.next/standalone/.next/server/app/dashboard/providers.segments/_head.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/dashboard/providers.segments/_index.segment.rsc +3 -3
- package/.next/standalone/.next/server/app/dashboard/providers.segments/_tree.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/dashboard/proxy-pools.html +2 -2
- package/.next/standalone/.next/server/app/dashboard/proxy-pools.rsc +6 -6
- package/.next/standalone/.next/server/app/dashboard/proxy-pools.segments/!KGRhc2hib2FyZCk/dashboard/proxy-pools/__PAGE__.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/dashboard/proxy-pools.segments/!KGRhc2hib2FyZCk/dashboard/proxy-pools.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/dashboard/proxy-pools.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/dashboard/proxy-pools.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/dashboard/proxy-pools.segments/_full.segment.rsc +6 -6
- package/.next/standalone/.next/server/app/dashboard/proxy-pools.segments/_head.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/dashboard/proxy-pools.segments/_index.segment.rsc +3 -3
- package/.next/standalone/.next/server/app/dashboard/proxy-pools.segments/_tree.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/dashboard/quota.html +2 -2
- package/.next/standalone/.next/server/app/dashboard/quota.rsc +6 -6
- package/.next/standalone/.next/server/app/dashboard/quota.segments/!KGRhc2hib2FyZCk/dashboard/quota/__PAGE__.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/dashboard/quota.segments/!KGRhc2hib2FyZCk/dashboard/quota.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/dashboard/quota.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/dashboard/quota.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/dashboard/quota.segments/_full.segment.rsc +6 -6
- package/.next/standalone/.next/server/app/dashboard/quota.segments/_head.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/dashboard/quota.segments/_index.segment.rsc +3 -3
- package/.next/standalone/.next/server/app/dashboard/quota.segments/_tree.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/dashboard/settings/pricing.html +1 -1
- package/.next/standalone/.next/server/app/dashboard/settings/pricing.rsc +5 -5
- package/.next/standalone/.next/server/app/dashboard/settings/pricing.segments/!KGRhc2hib2FyZCk/dashboard/settings/pricing/__PAGE__.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/dashboard/settings/pricing.segments/!KGRhc2hib2FyZCk/dashboard/settings/pricing.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/dashboard/settings/pricing.segments/!KGRhc2hib2FyZCk/dashboard/settings.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/dashboard/settings/pricing.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/dashboard/settings/pricing.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/dashboard/settings/pricing.segments/_full.segment.rsc +5 -5
- package/.next/standalone/.next/server/app/dashboard/settings/pricing.segments/_head.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/dashboard/settings/pricing.segments/_index.segment.rsc +3 -3
- package/.next/standalone/.next/server/app/dashboard/settings/pricing.segments/_tree.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/dashboard/settings.html +2 -2
- package/.next/standalone/.next/server/app/dashboard/settings.rsc +6 -6
- package/.next/standalone/.next/server/app/dashboard/settings.segments/!KGRhc2hib2FyZCk/dashboard/settings/__PAGE__.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/dashboard/settings.segments/!KGRhc2hib2FyZCk/dashboard/settings.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/dashboard/settings.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/dashboard/settings.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/dashboard/settings.segments/_full.segment.rsc +6 -6
- package/.next/standalone/.next/server/app/dashboard/settings.segments/_head.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/dashboard/settings.segments/_index.segment.rsc +3 -3
- package/.next/standalone/.next/server/app/dashboard/settings.segments/_tree.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/dashboard/skills.html +2 -2
- package/.next/standalone/.next/server/app/dashboard/skills.rsc +6 -6
- package/.next/standalone/.next/server/app/dashboard/skills.segments/!KGRhc2hib2FyZCk/dashboard/skills/__PAGE__.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/dashboard/skills.segments/!KGRhc2hib2FyZCk/dashboard/skills.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/dashboard/skills.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/dashboard/skills.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/dashboard/skills.segments/_full.segment.rsc +6 -6
- package/.next/standalone/.next/server/app/dashboard/skills.segments/_head.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/dashboard/skills.segments/_index.segment.rsc +3 -3
- package/.next/standalone/.next/server/app/dashboard/skills.segments/_tree.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/dashboard/translator.html +2 -2
- package/.next/standalone/.next/server/app/dashboard/translator.rsc +6 -6
- package/.next/standalone/.next/server/app/dashboard/translator.segments/!KGRhc2hib2FyZCk/dashboard/translator/__PAGE__.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/dashboard/translator.segments/!KGRhc2hib2FyZCk/dashboard/translator.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/dashboard/translator.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/dashboard/translator.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/dashboard/translator.segments/_full.segment.rsc +6 -6
- package/.next/standalone/.next/server/app/dashboard/translator.segments/_head.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/dashboard/translator.segments/_index.segment.rsc +3 -3
- package/.next/standalone/.next/server/app/dashboard/translator.segments/_tree.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/dashboard/usage.html +1 -1
- package/.next/standalone/.next/server/app/dashboard/usage.rsc +6 -6
- package/.next/standalone/.next/server/app/dashboard/usage.segments/!KGRhc2hib2FyZCk/dashboard/usage/__PAGE__.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/dashboard/usage.segments/!KGRhc2hib2FyZCk/dashboard/usage.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/dashboard/usage.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/dashboard/usage.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/dashboard/usage.segments/_full.segment.rsc +6 -6
- package/.next/standalone/.next/server/app/dashboard/usage.segments/_head.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/dashboard/usage.segments/_index.segment.rsc +3 -3
- package/.next/standalone/.next/server/app/dashboard/usage.segments/_tree.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/dashboard.html +1 -1
- package/.next/standalone/.next/server/app/dashboard.rsc +7 -7
- package/.next/standalone/.next/server/app/dashboard.segments/!KGRhc2hib2FyZCk/dashboard/__PAGE__.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/dashboard.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/dashboard.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/dashboard.segments/_full.segment.rsc +7 -7
- package/.next/standalone/.next/server/app/dashboard.segments/_head.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/dashboard.segments/_index.segment.rsc +3 -3
- package/.next/standalone/.next/server/app/dashboard.segments/_tree.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/index.html +1 -1
- package/.next/standalone/.next/server/app/index.rsc +2 -2
- package/.next/standalone/.next/server/app/index.segments/__PAGE__.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/index.segments/_full.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/index.segments/_head.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/index.segments/_index.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/index.segments/_tree.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/landing/page.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/landing/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/landing.html +1 -1
- package/.next/standalone/.next/server/app/landing.rsc +3 -3
- package/.next/standalone/.next/server/app/landing.segments/_full.segment.rsc +3 -3
- package/.next/standalone/.next/server/app/landing.segments/_head.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/landing.segments/_index.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/landing.segments/_tree.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/landing.segments/landing/__PAGE__.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/landing.segments/landing.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/login/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/login.html +1 -1
- package/.next/standalone/.next/server/app/login.rsc +2 -2
- package/.next/standalone/.next/server/app/login.segments/_full.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/login.segments/_head.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/login.segments/_index.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/login.segments/_tree.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/login.segments/login/__PAGE__.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/login.segments/login.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/morphllm/chat/completions/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/morphllm/compact/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/morphllm/models/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/morphllm/v1/chat/completions/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/morphllm/v1/compact/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/morphllm/v1/models/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0-3tmyh._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0-l8ysp._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0-tjgg~._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0-wp4jk._.js +3 -0
- package/.next/standalone/.next/server/chunks/{[root-of-the-server]__00neee.._.js → [root-of-the-server]__0-xb7dq._.js} +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0-zrnro._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0.33wvu._.js +1 -1
- package/.next/standalone/.next/server/chunks/{[root-of-the-server]__0n7~4df._.js → [root-of-the-server]__0.agtpe._.js} +2 -2
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0.dleu7._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0.e4vjv._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0.hg30t._.js +2 -2
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__00.jwtq._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__004h4s7._.js +1 -1
- package/.next/standalone/.next/server/chunks/{[root-of-the-server]__0x-ntz.._.js → [root-of-the-server]__004z0ew._.js} +2 -2
- package/.next/standalone/.next/server/chunks/{[root-of-the-server]__0.ntnan._.js → [root-of-the-server]__009duxh._.js} +2 -2
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__00l_uds._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__00p7r7w._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__00u8c-h._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__00ud1h9._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__00za6wa._.js +2 -2
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__00ziyf.._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__00~3r2y._.js +1 -1
- package/.next/standalone/.next/server/chunks/{[root-of-the-server]__0_tvnck._.js → [root-of-the-server]__01_ii~f._.js} +2 -2
- package/.next/standalone/.next/server/chunks/{[root-of-the-server]__00i1y_~._.js → [root-of-the-server]__01lignr._.js} +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__01llrv6._.js +1 -1
- package/.next/standalone/.next/server/chunks/{[root-of-the-server]__0r0gw~i._.js → [root-of-the-server]__01s.wkm._.js} +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__021~5_a._.js +1 -1
- package/.next/standalone/.next/server/chunks/{[root-of-the-server]__032ux2e._.js → [root-of-the-server]__024ndno._.js} +2 -2
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__02_dk~e._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__02aw1l2._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__02mb5x3._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__02mgn~n._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__02na2i2._.js +1 -1
- package/.next/standalone/.next/server/chunks/{[root-of-the-server]__063zy1a._.js → [root-of-the-server]__02vs-0-._.js} +2 -2
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__02xdukv._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__02xghko._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__032-6l~._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__032p1nf._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__037~86f._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__038937q._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__03ginl7._.js +3 -0
- package/.next/standalone/.next/server/chunks/{[root-of-the-server]__0_dmdz4._.js → [root-of-the-server]__03l1a1z._.js} +2 -2
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__03lcjkm._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__03xag8g._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__03zunpw._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__044t_vj._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0454a.2._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__046sr__._.js +1 -1
- package/.next/standalone/.next/server/chunks/{[root-of-the-server]__0hlqyqe._.js → [root-of-the-server]__047rva8._.js} +2 -2
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__048crb2._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__049a_e.._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__04hf4dd._.js +1 -1
- package/.next/standalone/.next/server/chunks/{[root-of-the-server]__0-1cdp.._.js → [root-of-the-server]__04ikpcg._.js} +2 -2
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__04m3iw_._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__04oxfk8._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__055zeis._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__05clehz._.js +2 -2
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__05er7rh._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__05mw59v._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__05pa88y._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__06huqnr._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__06uuq~s._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__06zn5y0._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__06~_5gw._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__07748ca._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__07ex_xh._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__07k7.v1._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__07k~4de._.js +3 -0
- package/.next/standalone/.next/server/chunks/{[root-of-the-server]__013~fdq._.js → [root-of-the-server]__07l9hyr._.js} +2 -2
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__07stuwe._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__07y_cmu._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__085spcm._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__089yo0a._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__08ded3h._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__08e1.4i._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__08gi7t6._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__08mp0xh._.js +1 -1
- package/.next/standalone/.next/server/chunks/{[root-of-the-server]__06wqce8._.js → [root-of-the-server]__09.y6l~._.js} +2 -2
- package/.next/standalone/.next/server/chunks/{[root-of-the-server]__11ngmbn._.js → [root-of-the-server]__09651ql._.js} +1 -1
- package/.next/standalone/.next/server/chunks/{[root-of-the-server]__0.l0y7a._.js → [root-of-the-server]__099ds-o._.js} +2 -2
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__09abbe.._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__09b-mxq._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__09hjwhb._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__09kkumm._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__09lk3fb._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__09r8~n7._.js +4 -4
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__09tg81h._.js +3 -0
- package/.next/standalone/.next/server/chunks/{[root-of-the-server]__089pfiz._.js → [root-of-the-server]__09zbob7._.js} +2 -2
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0_1ywx_._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0_aqudj._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0_i7xtc._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0_lss-0._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0_uu_ec._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0_~5vif._.js +2 -2
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0_~9mgv._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0a-sz2t._.js +3 -0
- package/.next/standalone/.next/server/chunks/{[root-of-the-server]__11o4pj7._.js → [root-of-the-server]__0a2a.z4._.js} +2 -2
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0ab1356._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0al1a91._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0az1sx2._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0bf.ghm._.js +1 -1
- package/.next/standalone/.next/server/chunks/{[root-of-the-server]__0p.t3~a._.js → [root-of-the-server]__0bfc~3f._.js} +2 -2
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0biit-g._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0bj2hpa._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0b~7-_g._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0c-h4mm._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0c07d4y._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0c557w-._.js +2 -2
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0cao3wt._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0cb8dd_._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0cl.iuf._.js +1 -1
- package/.next/standalone/.next/server/chunks/{[root-of-the-server]__10_kz7x._.js → [root-of-the-server]__0cqefsr._.js} +2 -2
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0d2von.._.js +2 -2
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0d7oqzd._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0d8w.j5._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0d_42ie._.js +3 -0
- package/.next/standalone/.next/server/chunks/{[root-of-the-server]__0g7a6ay._.js → [root-of-the-server]__0dgr7sc._.js} +2 -2
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0dj9sk~._.js +3 -0
- package/.next/standalone/.next/server/chunks/{[root-of-the-server]__0.d5_~n._.js → [root-of-the-server]__0dn58pj._.js} +2 -2
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0dwwn3_._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0d~kviz._.js +3 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0e-q-.p._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0eaih6w._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0ehtm3a._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0evsmel._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0f.jsn2._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0f1.4a6._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0f6hybd._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0fcv1jw._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0fislu6._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0fqmoyz._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0fw.ddo._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0fwx7x0._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0g43koa._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0gf~o2k._.js +2 -2
- package/.next/standalone/.next/server/chunks/{[root-of-the-server]__0_6pxdk._.js → [root-of-the-server]__0ghw24t._.js} +2 -2
- package/.next/standalone/.next/server/chunks/{[root-of-the-server]__0e.qn5h._.js → [root-of-the-server]__0gnvwdm._.js} +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0gs1hnb._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0gyf1uq._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0gzlajr._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0h4kh~z._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0h_.jfe._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0hask_z._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0hbj87j._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0hbzowe._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0hcgq6x._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0hhhz-u._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0hsbqug._.js +2 -2
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0hvv_lx._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0i.e-em._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0i2a12q._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0i3k-_n._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0iqlh1i._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0irkt1d._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0iuvn~y._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0iw4wjr._.js +1 -1
- package/.next/standalone/.next/server/chunks/{[root-of-the-server]__0t1dy.d._.js → [root-of-the-server]__0j-_68s._.js} +2 -2
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0j3v3l.._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0jf-9e~._.js +1 -1
- package/.next/standalone/.next/server/chunks/{[root-of-the-server]__0eelnax._.js → [root-of-the-server]__0jfl7t1._.js} +2 -2
- package/.next/standalone/.next/server/chunks/{[root-of-the-server]__0~4bwy8._.js → [root-of-the-server]__0jqqtdb._.js} +2 -2
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0jqyu4j._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0kl71u0._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0kp86ek._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0kqbs37._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0kwu0ka._.js +1 -1
- package/.next/standalone/.next/server/chunks/{[root-of-the-server]__0vd~ako._.js → [root-of-the-server]__0l9y_f0._.js} +2 -2
- package/.next/standalone/.next/server/chunks/{[root-of-the-server]__0xq1.45._.js → [root-of-the-server]__0l_-oy7._.js} +2 -2
- package/.next/standalone/.next/server/chunks/{[root-of-the-server]__0pjh~z_._.js → [root-of-the-server]__0ld6-lx._.js} +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0lko6zo._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0lnpu9p._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0lqy_2m._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0lrm04_._.js +2 -2
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0lu27p~._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0m0~j~2._.js +2 -2
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0m19~zq._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0m9b33a._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0mg66ke._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0mo2l~8._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0mqxqlv._.js +2 -2
- package/.next/standalone/.next/server/chunks/{[root-of-the-server]__011c~uj._.js → [root-of-the-server]__0ms71db._.js} +2 -2
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0mxkf24._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0n-~_6k._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0n0~dvq._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0nt2vi5._.js +2 -2
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0o1fh6s._.js +2 -2
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0o2.nlr._.js +1 -1
- package/.next/standalone/.next/server/chunks/{[root-of-the-server]__0forh27._.js → [root-of-the-server]__0o6i.nv._.js} +2 -2
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0o9-h..._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0oy-.2f._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0p1_hfo._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0pds.di._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0pmfi1f._.js +1 -1
- package/.next/standalone/.next/server/chunks/{[root-of-the-server]__0c8oc40._.js → [root-of-the-server]__0potyb8._.js} +2 -2
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0ppt-ql._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0ptfc.6._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0pvngyq._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0pwp_ap._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0q.447s._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0q35h5p._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0q80z56._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0q_hinv._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0qb6.we._.js +2 -2
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0qdu2ty._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0qewmrg._.js +2 -2
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0ql7dla._.js +3 -0
- package/.next/standalone/.next/server/chunks/{[root-of-the-server]__0qqx8dw._.js → [root-of-the-server]__0qld0km._.js} +2 -2
- package/.next/standalone/.next/server/chunks/{[root-of-the-server]__03pekit._.js → [root-of-the-server]__0qm34aj._.js} +2 -2
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0qpbua8._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0qy.dv~._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0r-72-q._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0r7ie8v._.js +2 -2
- package/.next/standalone/.next/server/chunks/{[root-of-the-server]__0_xs5r~._.js → [root-of-the-server]__0r8rj.m._.js} +2 -2
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0raoadw._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0rexrat._.js +1 -1
- package/.next/standalone/.next/server/chunks/{[root-of-the-server]__0vs.fnx._.js → [root-of-the-server]__0rmnesr._.js} +2 -2
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0rqufgb._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0rr4o.m._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0rut3-5._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0rw15j8._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0sd_8_d._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0sgem5m._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0sshbg0._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0szobir._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0s~s0va._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0t1eb8l._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0t1f-ao._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0t36uxd._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0ta7__b._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0td_2pr._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0thihai._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0tl6.r1._.js +2 -2
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0tplwdy._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0t~ieoz._.js +1 -1
- package/.next/standalone/.next/server/chunks/{[root-of-the-server]__0p9bj_p._.js → [root-of-the-server]__0u09~1v._.js} +2 -2
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0u2e0yf._.js +3 -0
- package/.next/standalone/.next/server/chunks/{[root-of-the-server]__0o928l6._.js → [root-of-the-server]__0u2e8qm._.js} +2 -2
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0uis9ox._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0umy3de._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0uoy-kq._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0urc51a._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0v91s.t._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0vaoh8v._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0vc.a9b._.js +2 -2
- package/.next/standalone/.next/server/chunks/{[root-of-the-server]__0w98yen._.js → [root-of-the-server]__0vvw2ru._.js} +2 -2
- package/.next/standalone/.next/server/chunks/{[root-of-the-server]__00o-asx._.js → [root-of-the-server]__0w2d5qg._.js} +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0w2zyc_._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0w3~67w._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0w662n~._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0wo7dm0._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0wru1b1._.js +2 -2
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0wvlbx8._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0x3qw~o._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0xft0he._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0xiabzp._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0xlm2tp._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0xp5zu0._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0xujc-1._.js +1 -1
- package/.next/standalone/.next/server/chunks/{[root-of-the-server]__0seyi7u._.js → [root-of-the-server]__0xzfxgt._.js} +2 -2
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0y19o-0._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0yeai3n._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0yi3-oh._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0yr856d._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0yuow7.._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0yyo154._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0z2zc3n._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0za0639._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0zcmy6s._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0zdl2qj._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0zf362d._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0zig6hw._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0zq6g4.._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0zsq_t0._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0zwhzmn._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0zxu6ha._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0~-~wa8._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0~78oxe._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0~a68pq._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0~b~ztb._.js +3 -0
- package/.next/standalone/.next/server/chunks/{[root-of-the-server]__0m8at.3._.js → [root-of-the-server]__0~nkx9r._.js} +2 -2
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0~p.k_k._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__105ynbo._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__106a4o0._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__107dy2f._.js +2 -2
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__107l5d7._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__109f8-5._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__10k1an8._.js +3 -0
- package/.next/standalone/.next/server/chunks/{[root-of-the-server]__0-54t5r._.js → [root-of-the-server]__10s-_pt._.js} +2 -2
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__11-btmd._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__1109741._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__112cin2._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__112~mc9._.js +2 -2
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__11gkys~._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__11gqfow._.js +1 -1
- package/.next/standalone/.next/server/chunks/{[root-of-the-server]__0447asz._.js → [root-of-the-server]__11k5fud._.js} +2 -2
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__11w6akv._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__12dgk7t._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__12g_p31._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__12gyo~t._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__12hrhta._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__12lnbnq._.js +3 -0
- package/.next/standalone/.next/server/chunks/{[root-of-the-server]__0--kia9._.js → [root-of-the-server]__12oyia-._.js} +2 -2
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__12ykd.3._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__12ypo0d._.js +2 -2
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__135_alv._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__13_6i8a._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__13e3gug._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__13o-h5l._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__13ow83o._.js +1 -1
- package/.next/standalone/.next/server/chunks/{[root-of-the-server]__0fndpx4._.js → [root-of-the-server]__13pzqxe._.js} +2 -2
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__13rq76w._.js +3 -0
- package/.next/standalone/.next/server/chunks/{src_0zn80tt._.js → _0.x.o.3._.js} +2 -2
- package/.next/standalone/.next/server/chunks/_00ud164._.js +3 -0
- package/.next/standalone/.next/server/chunks/_01cii5-._.js +3 -0
- package/.next/standalone/.next/server/chunks/{_0gt_qxy._.js → _03mwikq._.js} +2 -2
- package/.next/standalone/.next/server/chunks/{_0n0b-pz._.js → _03qq4.e._.js} +2 -2
- package/.next/standalone/.next/server/chunks/_04p6u1c._.js +3 -0
- package/.next/standalone/.next/server/chunks/_06-c5x7._.js +3 -0
- package/.next/standalone/.next/server/chunks/{_0nhn-c8._.js → _07fuqep._.js} +2 -2
- package/.next/standalone/.next/server/chunks/_0c26mpr._.js +3 -0
- package/.next/standalone/.next/server/chunks/_0cxdja3._.js +3 -0
- package/.next/standalone/.next/server/chunks/{_0a7s48j._.js → _0dj_pri._.js} +2 -2
- package/.next/standalone/.next/server/chunks/_0e9-~52._.js +3 -0
- package/.next/standalone/.next/server/chunks/_0kbmqb_._.js +3 -0
- package/.next/standalone/.next/server/chunks/_0l9dvf.._.js +1 -1
- package/.next/standalone/.next/server/chunks/_0q4g3vx._.js +3 -0
- package/.next/standalone/.next/server/chunks/_0u7ft0-._.js +3 -0
- package/.next/standalone/.next/server/chunks/_0v5jfhy._.js +3 -0
- package/.next/standalone/.next/server/chunks/_0vepsj6._.js +3 -0
- package/.next/standalone/.next/server/chunks/_0wt~d3y._.js +3 -0
- package/.next/standalone/.next/server/chunks/_0xbhq_5._.js +3 -0
- package/.next/standalone/.next/server/chunks/_0~bxigc._.js +3 -0
- package/.next/standalone/.next/server/chunks/_0~zpydj._.js +3 -0
- package/.next/standalone/.next/server/chunks/_10weqhi._.js +4 -0
- package/.next/standalone/.next/server/chunks/_13y2mvl._.js +3 -0
- package/.next/standalone/.next/server/chunks/node_modules_next_dist_esm_build_templates_app-route_04zkfkl.js +1 -1
- package/.next/standalone/.next/server/chunks/open-sse_0.ondvz._.js +1 -1
- package/.next/standalone/.next/server/chunks/src_05d5qb2._.js +1 -1
- package/.next/standalone/.next/server/chunks/src_0ack9vz._.js +3 -0
- package/.next/standalone/.next/server/chunks/src_0f61~fi._.js +1 -1
- package/.next/standalone/.next/server/chunks/src_0praqb2._.js +1 -1
- package/.next/standalone/.next/server/chunks/src_0z7_cut._.js +1 -1
- package/.next/standalone/.next/server/chunks/src_0~zw66f._.js +1 -1
- package/.next/standalone/.next/server/chunks/src_lib_104_itc._.js +1 -1
- package/.next/standalone/.next/server/chunks/src_lib_localDb_ts_0x83si-._.js +1 -1
- package/.next/standalone/.next/server/chunks/src_lib_localDb_ts_101._fr._.js +1 -1
- package/.next/standalone/.next/server/chunks/src_lib_opencodeSync_generator_ts_07xrl3p._.js +1 -1
- package/.next/standalone/.next/server/chunks/src_shared_utils_apiKey_ts_0gzf59_._.js +1 -1
- package/.next/standalone/.next/server/chunks/src_shared_utils_apiKey_ts_12~h.oz._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0-9ubxl._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/_0-802ei._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/_0-cdf~g._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/_0-ygrpm._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/{_06m20t3._.js → _0.6vnrw._.js} +2 -2
- package/.next/standalone/.next/server/chunks/ssr/_0fh4630._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/_0nc0rze._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/_0vg73k3._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/_0xpeq3o._.js +2 -2
- package/.next/standalone/.next/server/chunks/ssr/{src_app_(dashboard)_dashboard_mcp_page_tsx_0ruf46t._.js → src_0uw_qwf._.js} +9 -9
- package/.next/standalone/.next/server/chunks/ssr/src_app_(dashboard)_dashboard_endpoint_EndpointPageClient_tsx_0vt3c1s._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/src_app_(dashboard)_dashboard_opencode_OpenCodePageClient_tsx_0f4pesx._.js +4 -4
- package/.next/standalone/.next/server/chunks/ssr/src_lib_localDb_ts_0evrcx2._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/src_shared_constants_cliTools_ts_0xm~ty7._.js +5 -5
- package/.next/standalone/.next/server/middleware-build-manifest.js +3 -3
- package/.next/standalone/.next/server/pages/404.html +1 -1
- package/.next/standalone/.next/server/pages/500.html +1 -1
- package/.next/standalone/package.json +4 -1
- package/.next/standalone/skills/README.md +3 -3
- package/.next/standalone/skills/axonrouter/SKILL.md +16 -16
- package/.next/standalone/skills/axonrouter-chat/SKILL.md +11 -11
- package/.next/standalone/skills/axonrouter-embeddings/SKILL.md +9 -9
- package/.next/standalone/skills/axonrouter-image/SKILL.md +9 -9
- package/.next/standalone/skills/axonrouter-stt/SKILL.md +9 -9
- package/.next/standalone/skills/axonrouter-tts/SKILL.md +10 -10
- package/.next/standalone/skills/axonrouter-unified/SKILL.md +12 -12
- package/.next/standalone/skills/axonrouter-web-fetch/SKILL.md +16 -16
- package/.next/standalone/skills/axonrouter-web-search/SKILL.md +10 -10
- package/.next/standalone/src/lib/mitm/antigravityStatusAccess.ts +2 -2
- package/.next/standalone/src/mitm/handlers/base.ts +3 -1
- package/.next/standalone/src/mitm/routerBaseRuntime.ts +2 -1
- package/.next/standalone/src/mitm/runtimeDefaults.ts +11 -0
- package/.next/standalone/src/shared/constants/runtimeDefaults.json +5 -0
- package/.next/static/chunks/{0uk2ckcd~-r0a.js → 043zcnxue58du.js} +4 -4
- package/.next/static/chunks/{01x4hwms4_ema.js → 07c6k_1f5h-sr.js} +1 -1
- package/.next/static/chunks/{0pliq5cpnjsoh.css → 0chvw-cg-07m9.css} +1 -1
- package/.next/static/chunks/0f3slp3h9.-dg.js +1 -0
- package/.next/static/chunks/{0yrb77bqsumy7.js → 0llovlqzhs02-.js} +1 -1
- package/.next/static/chunks/{0_e8whdd-hjt~.js → 0ncpmltfab471.js} +13 -13
- package/.next/static/chunks/0odx0ul3b.c8q.js +1 -0
- package/.next/static/chunks/{0v2od3hxo4-br.js → 0pfh8tnrcgkwd.js} +1 -1
- package/.next/static/chunks/{17~u6u590fthr.js → 0r499_px9z-7p.js} +1 -1
- package/.next/static/chunks/0y69lhry~47ca.js +1 -0
- package/.next/static/chunks/{0tmytjpzpwssc.js → 10xuig64fgu6..js} +9 -9
- package/README.md +1 -1
- package/bin/mcp-server.ts +11 -0
- package/open-sse/mcp-server/stdioServer.ts +1 -1
- package/open-sse/utils/requestLogger.tsx +1 -1
- package/package.json +4 -1
- package/scripts/mcp-alias-loader.ts +78 -0
- package/scripts/start.ts +2 -1
- package/src/app/(dashboard)/dashboard/cli-tools/CLIToolsPageClient.tsx +2 -1
- package/src/app/(dashboard)/dashboard/cli-tools/components/DefaultToolCard.tsx +2 -1
- package/src/app/(dashboard)/dashboard/cli-tools/components/HermesToolCard.tsx +2 -1
- package/src/app/(dashboard)/dashboard/cli-tools/components/MitmServerCard.tsx +2 -1
- package/src/app/(dashboard)/dashboard/cli-tools/components/OpenClawToolCard.tsx +2 -1
- package/src/app/(dashboard)/dashboard/endpoint/components/MainTab.tsx +3 -2
- package/src/app/(dashboard)/dashboard/mcp/page.tsx +10 -9
- package/src/app/(dashboard)/dashboard/opencode/components/TokenManagerCard.tsx +3 -2
- package/src/app/api/combos/test/route.ts +2 -1
- package/src/app/api/settings/route.ts +1 -1
- package/src/app/landing/components/GetStarted.tsx +4 -3
- package/src/lib/localDb/normalize.ts +3 -4
- package/src/lib/mitm/antigravityStatusAccess.ts +2 -2
- package/src/lib/oauth/config/index.ts +5 -3
- package/src/lib/oauth/services/antigravity.ts +4 -3
- package/src/lib/opencodeSync/generator.ts +10 -9
- package/src/lib/providerModels/syncRunner.ts +2 -1
- package/src/lib/security/ipValidator.ts +10 -7
- package/src/lib/security/pasetoKeys.ts +1 -1
- package/src/lib/tunnel/tailscaleAccess.ts +2 -1
- package/src/lib/tunnel/tailscaleTunnelRuntime.ts +2 -1
- package/src/lib/tunnel/tunnelConnectionRuntime.ts +2 -1
- package/src/lib/tunnel/tunnelManager.ts +3 -2
- package/src/lib/tunnel/tunnelStateFacade.ts +3 -2
- package/src/mitm/handlers/base.ts +3 -1
- package/src/mitm/routerBaseRuntime.ts +2 -1
- package/src/mitm/runtimeDefaults.ts +11 -0
- package/src/shared/components/Header.tsx +1 -5
- package/src/shared/components/sidebar/SidebarBrand.tsx +1 -1
- package/src/shared/constants/runtimeDefaults.json +5 -0
- package/src/shared/constants/runtimeDefaults.ts +13 -0
- package/src/shared/services/initializeApp.ts +1 -1
- package/src/shared/utils/apiKey.ts +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0-6ommw._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0.ixvv6._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__01m2w3x._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__02fp~to._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__02g3stb._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__03imrot._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__03pifp-._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0479l.8._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0484-.s._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__05e-t08._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__06awg3m._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__06cn0cb._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__06fvvri._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__07_h0lj._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__07qvqw8._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__07zg4ty._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__07znt4k._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__08lurmo._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__09agkdg._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__09~4xgq._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0_caj9n._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0_f4pe_._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0ai_.1n._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0and1qa._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0ar-.q2._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0awt_v8._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0b.5xmb._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0bc3wr_._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0d-gh.d._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0df~btj._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0dzog8o._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0ep40qj._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0ep44o4._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0fps8zu._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0fzyk_d._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0hgp2t3._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0i1e~4s._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0i3j2ls._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0igg~5m._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0j-v2_9._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0j0e2p7._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0j6b1yt._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0jo5r_y._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0krneb~._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0l12fg2._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0l2y2-o._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0ld1.a4._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0mbbx6v._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0mlmj3l._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0n79yma._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0nk_zws._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0nn7z4w._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0o4zst5._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0o83z85._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0pn_t_l._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0q2-is7._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0qm25o8._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0qzm9j_._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0ra63ye._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0reej32._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0t331c1._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0tf2kud._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0u-iazp._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0u3xz6p._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0uxd_lw._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0vdkv4j._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0vwhg_n._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0x1n3b5._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0xtvlhf._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0yx24j-._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0z.95rr._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0z7a9y3._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0zcl1tc._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0zn86fr._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0zu8ul7._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0~52izy._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0~c~6s5._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0~mz2p1._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0~~kg21._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__10hd5up._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__10ick1a._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__10yftp6._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__10zs4c4._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__11nuxzq._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__12501l1._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__12htkix._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__12s8j28._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__13-kiu2._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__13akfjh._.js +0 -3
- package/.next/standalone/.next/server/chunks/_00nb1ef._.js +0 -3
- package/.next/standalone/.next/server/chunks/_01cwb4n._.js +0 -3
- package/.next/standalone/.next/server/chunks/_04c~j5r._.js +0 -3
- package/.next/standalone/.next/server/chunks/_06alt98._.js +0 -3
- package/.next/standalone/.next/server/chunks/_09x4qde._.js +0 -3
- package/.next/standalone/.next/server/chunks/_0btlko3._.js +0 -4
- package/.next/standalone/.next/server/chunks/_0cc4y0u._.js +0 -3
- package/.next/standalone/.next/server/chunks/_0icsesy._.js +0 -3
- package/.next/standalone/.next/server/chunks/_0kqx9ko._.js +0 -3
- package/.next/standalone/.next/server/chunks/_0lm3fjc._.js +0 -3
- package/.next/standalone/.next/server/chunks/_0nx8-pu._.js +0 -3
- package/.next/standalone/.next/server/chunks/_0pu0f-y._.js +0 -3
- package/.next/standalone/.next/server/chunks/_0rde0ez._.js +0 -3
- package/.next/standalone/.next/server/chunks/_0rvv.4c._.js +0 -3
- package/.next/standalone/.next/server/chunks/_0rxqszi._.js +0 -3
- package/.next/standalone/.next/server/chunks/_0sx.jem._.js +0 -3
- package/.next/standalone/.next/server/chunks/_0wjnra.._.js +0 -3
- package/.next/standalone/.next/server/chunks/_123f-_7._.js +0 -3
- package/.next/standalone/.next/server/chunks/_12mo~h9._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/_00ercn-._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/_0fgd1ej._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/_1258khy._.js +0 -3
- package/.next/static/chunks/0-irb0q1q34le.js +0 -1
- package/.next/static/chunks/0u6dc-5rzf9pb.js +0 -1
- package/.next/static/chunks/0u84dbupf__yp.js +0 -1
- /package/.next/static/{1OftkhB-3E-8qEDLWcuTe → M2h-hQnrMHLeo3VEIuZ5a}/_buildManifest.js +0 -0
- /package/.next/static/{1OftkhB-3E-8qEDLWcuTe → M2h-hQnrMHLeo3VEIuZ5a}/_clientMiddlewareManifest.js +0 -0
- /package/.next/static/{1OftkhB-3E-8qEDLWcuTe → M2h-hQnrMHLeo3VEIuZ5a}/_ssgManifest.js +0 -0
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="stylesheet" href="/_next/static/chunks/0pliq5cpnjsoh.css" data-precedence="next"/><link rel="stylesheet" href="/_next/static/chunks/0lwx_b7jnm00z.css" data-precedence="next"/><link rel="stylesheet" href="/_next/static/chunks/0jvmviuftg5e2.css" data-precedence="next"/><link rel="preload" as="script" fetchPriority="low" href="/_next/static/chunks/0-hrh_uw98wb_.js"/><script src="/_next/static/chunks/0~.5axwm.yvwi.js" async=""></script><script src="/_next/static/chunks/0aqpm5mabssqz.js" async=""></script><script src="/_next/static/chunks/0uqgm3y7qfyr6.js" async=""></script><script src="/_next/static/chunks/04.i-__.as.dk.js" async=""></script><script src="/_next/static/chunks/turbopack-13pmlys43xfz..js" async=""></script><script src="/_next/static/chunks/0r04.q6_-b836.js" async=""></script><script src="/_next/static/chunks/0i.l9589uvx0j.js" async=""></script><script src="/_next/static/chunks/0j3dsi52f1dl3.js" async=""></script><script src="/_next/static/chunks/0soxzgvx8maah.js" async=""></script><script src="/_next/static/chunks/056ne4nz_q~nb.js" async=""></script><script src="/_next/static/chunks/05030e9junrlf.js" async=""></script><script src="/_next/static/chunks/0v9isxr6.bcmz.js" async=""></script><script src="/_next/static/chunks/01x4hwms4_ema.js" async=""></script><script src="/_next/static/chunks/13cjgpm_agha_.js" async=""></script><script src="/_next/static/chunks/0vqox~1257tth.js" async=""></script><script src="/_next/static/chunks/03~wesrv2kvkm.js" async=""></script><script src="/_next/static/chunks/0_e~bfjzzxje8.js" async=""></script><script src="/_next/static/chunks/0tmytjpzpwssc.js" async=""></script><script src="/_next/static/chunks/0v8acd5buc5xi.js" async=""></script><link rel="preload" href="https://fonts.googleapis.com/css2?family=Material+Symbols+Outlined:opsz,wght,FILL,GRAD@20..48,100..700,0..1,-50..200&display=swap" as="style"/><link rel="preconnect" href="https://fonts.googleapis.com"/><link rel="preconnect" href="https://fonts.gstatic.com" crossorigin="anonymous"/><link rel="preload" href="https://fonts.googleapis.com/css2?family=Material+Symbols+Outlined:opsz,wght,FILL,GRAD@20..48,100..700,0..1,-50..200&display=swap" as="style"/><meta name="theme-color" content="#201d1d"/><title>Dashboard - AxonRouter</title><meta name="description" content="One endpoint for all your AI providers. Manage keys, monitor usage, and scale effortlessly."/><link rel="manifest" href="/manifest.webmanifest"/><link rel="icon" href="/favicon.ico?favicon.0x3dzn~oxb6tn.ico" sizes="256x256" type="image/x-icon"/><link rel="icon" href="/favicon.svg"/><link href="https://fonts.googleapis.com/css2?family=Material+Symbols+Outlined:opsz,wght,FILL,GRAD@20..48,100..700,0..1,-50..200&display=swap" rel="stylesheet"/><script src="/_next/static/chunks/03~yq9q893hmn.js" noModule=""></script></head><body><div hidden=""><!--$--><!--/$--></div><div data-slot="sidebar-wrapper" style="--sidebar-width:18rem;--sidebar-width-icon:3rem" class="group/sidebar-wrapper flex min-h-svh w-full has-data-[variant=inset]:bg-sidebar rr-dark-shell"><div class="fixed right-5 top-5 z-80 flex w-[min(92vw,400px)] flex-col gap-3"></div><div class="group peer hidden text-sidebar-foreground md:block" data-state="expanded" data-collapsible="" data-variant="sidebar" data-side="left" data-slot="sidebar"><div data-slot="sidebar-gap" class="relative w-(--sidebar-width) bg-transparent transition-[width] duration-200 ease-linear group-data-[collapsible=offcanvas]:w-0 group-data-[side=right]:rotate-180 group-data-[collapsible=icon]:w-(--sidebar-width-icon)"></div><div data-slot="sidebar-container" data-side="left" class="fixed inset-y-0 z-10 hidden h-svh w-(--sidebar-width) transition-[left,right,width] duration-200 ease-linear data-[side=left]:left-0 data-[side=left]:group-data-[collapsible=offcanvas]:left-[calc(var(--sidebar-width)*-1)] data-[side=right]:right-0 data-[side=right]:group-data-[collapsible=offcanvas]:right-[calc(var(--sidebar-width)*-1)] md:flex group-data-[collapsible=icon]:w-(--sidebar-width-icon) group-data-[side=left]:border-r group-data-[side=right]:border-l border-sidebar-border/80 text-sidebar-foreground [&_[data-sidebar=sidebar-inner]]:bg-[radial-gradient(circle_at_50%_0%,color-mix(in_srgb,var(--sidebar-primary)_20%,transparent),transparent_30%),linear-gradient(180deg,color-mix(in_srgb,var(--sidebar)_88%,var(--sidebar-primary)_12%),var(--sidebar)_42%)]"><div data-sidebar="sidebar" data-slot="sidebar-inner" class="flex size-full flex-col bg-sidebar group-data-[variant=floating]:rounded-lg group-data-[variant=floating]:shadow-sm group-data-[variant=floating]:ring-1 group-data-[variant=floating]:ring-sidebar-border"><div data-slot="sidebar-header" data-sidebar="header" class="flex flex-col gap-2 p-2 px-3 pb-3 pt-3"><ul data-slot="sidebar-menu" data-sidebar="menu" class="flex w-full min-w-0 flex-col gap-0"><li data-slot="sidebar-menu-item" data-sidebar="menu-item" class="group/menu-item relative"><div class="flex h-16 items-center gap-3 rounded-xl border border-sidebar-border/80 bg-sidebar-accent/55 px-2.5 text-sidebar-foreground shadow-[0_14px_34px_rgba(0,0,0,0.22)] group-data-[collapsible=icon]:h-11 group-data-[collapsible=icon]:justify-center group-data-[collapsible=icon]:px-1.5"><a aria-label="AxonRouter dashboard" class="grid size-10 shrink-0 place-items-center group-data-[collapsible=icon]:size-8" href="/dashboard"><img alt="AxonRouter" loading="lazy" width="32" height="32" decoding="async" data-nimg="1" class="size-8 object-contain group-data-[collapsible=icon]:size-7" style="color:transparent" src="/axonrouter-logo.svg"/></a><div class="grid min-w-0 flex-1 text-left leading-tight group-data-[collapsible=icon]:hidden"><span class="truncate text-[15px] font-semibold tracking-[-0.02em]">AxonRouter</span><span class="mt-0.5 truncate text-[10px] font-semibold uppercase tracking-[0.18em] text-sidebar-primary">AI Gateway</span></div><span class="rounded-md border border-sidebar-border/70 bg-sidebar/70 px-1.5 py-0.5 text-[10px] font-semibold uppercase tracking-[0.14em] text-sidebar-foreground/55 group-data-[collapsible=icon]:hidden">Core</span></div></li></ul></div><div data-slot="sidebar-content" data-sidebar="content" class="no-scrollbar flex min-h-0 flex-1 flex-col gap-0 overflow-auto group-data-[collapsible=icon]:overflow-hidden px-3 py-2" aria-label="Dashboard navigation"><div class="flex flex-col gap-5"><div data-slot="sidebar-group" data-sidebar="group" class="relative flex w-full min-w-0 flex-col p-2 px-0 py-0"><div data-slot="sidebar-group-label" data-sidebar="group-label" class="flex shrink-0 items-center rounded-md ring-sidebar-ring outline-hidden transition-[margin,opacity] duration-200 ease-linear group-data-[collapsible=icon]:-mt-8 group-data-[collapsible=icon]:opacity-0 focus-visible:ring-2 [&>svg]:size-4 [&>svg]:shrink-0 h-7 px-2 text-[10px] font-semibold uppercase tracking-[0.18em] text-sidebar-foreground/40">Platform</div><div data-slot="sidebar-group-content" data-sidebar="group-content" class="w-full text-sm"><ul data-slot="sidebar-menu" data-sidebar="menu" class="flex w-full min-w-0 flex-col gap-1.5"><li data-slot="sidebar-menu-item" data-sidebar="menu-item" class="group/menu-item relative"><a data-slot="sidebar-menu-button" data-sidebar="menu-button" data-size="default" data-active="false" class="peer/menu-button group/menu-button flex w-full items-center gap-2 overflow-hidden p-2 text-left ring-sidebar-ring outline-hidden group-has-data-[sidebar=menu-action]/menu-item:pr-8 group-data-[collapsible=icon]:size-8! group-data-[collapsible=icon]:p-2! focus-visible:ring-2 active:bg-sidebar-accent active:text-sidebar-accent-foreground disabled:pointer-events-none disabled:opacity-50 aria-disabled:pointer-events-none aria-disabled:opacity-50 data-open:hover:bg-sidebar-accent data-open:hover:text-sidebar-accent-foreground data-active:bg-sidebar-accent data-active:font-medium data-active:text-sidebar-accent-foreground [&_svg]:size-4 [&_svg]:shrink-0 [&>span:last-child]:truncate hover:bg-sidebar-accent relative h-9 rounded-lg !bg-transparent px-2 text-sm font-medium text-sidebar-foreground/78 shadow-none transition-colors before:absolute before:left-0 before:top-1/2 before:h-4 before:w-0.5 before:-translate-y-1/2 before:rounded-full before:bg-sidebar-primary before:opacity-0 before:transition-opacity hover:!bg-sidebar-accent/70 hover:text-sidebar-foreground data-[active=true]:!bg-sidebar-accent data-[active=true]:text-sidebar-accent-foreground data-[active=true]:before:opacity-100 [&>svg]:text-sidebar-foreground/60 hover:[&>svg]:text-sidebar-foreground data-[active=true]:[&>svg]:text-sidebar-primary" data-state="closed" href="/dashboard/endpoint"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-app-window shrink-0" aria-hidden="true"><rect x="2" y="4" width="20" height="16" rx="2"></rect><path d="M10 4v4"></path><path d="M2 8h20"></path><path d="M6 4v4"></path></svg><span>Endpoint</span></a></li><li data-slot="sidebar-menu-item" data-sidebar="menu-item" class="group/menu-item relative"><a data-slot="sidebar-menu-button" data-sidebar="menu-button" data-size="default" data-active="false" class="peer/menu-button group/menu-button flex w-full items-center gap-2 overflow-hidden p-2 text-left ring-sidebar-ring outline-hidden group-has-data-[sidebar=menu-action]/menu-item:pr-8 group-data-[collapsible=icon]:size-8! group-data-[collapsible=icon]:p-2! focus-visible:ring-2 active:bg-sidebar-accent active:text-sidebar-accent-foreground disabled:pointer-events-none disabled:opacity-50 aria-disabled:pointer-events-none aria-disabled:opacity-50 data-open:hover:bg-sidebar-accent data-open:hover:text-sidebar-accent-foreground data-active:bg-sidebar-accent data-active:font-medium data-active:text-sidebar-accent-foreground [&_svg]:size-4 [&_svg]:shrink-0 [&>span:last-child]:truncate hover:bg-sidebar-accent relative h-9 rounded-lg !bg-transparent px-2 text-sm font-medium text-sidebar-foreground/78 shadow-none transition-colors before:absolute before:left-0 before:top-1/2 before:h-4 before:w-0.5 before:-translate-y-1/2 before:rounded-full before:bg-sidebar-primary before:opacity-0 before:transition-opacity hover:!bg-sidebar-accent/70 hover:text-sidebar-foreground data-[active=true]:!bg-sidebar-accent data-[active=true]:text-sidebar-accent-foreground data-[active=true]:before:opacity-100 [&>svg]:text-sidebar-foreground/60 hover:[&>svg]:text-sidebar-foreground data-[active=true]:[&>svg]:text-sidebar-primary" data-state="closed" href="/dashboard/providers"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-network shrink-0" aria-hidden="true"><rect x="16" y="16" width="6" height="6" rx="1"></rect><rect x="2" y="16" width="6" height="6" rx="1"></rect><rect x="9" y="2" width="6" height="6" rx="1"></rect><path d="M5 16v-3a1 1 0 0 1 1-1h12a1 1 0 0 1 1 1v3"></path><path d="M12 12V8"></path></svg><span>Providers</span></a></li><li data-slot="sidebar-menu-item" data-sidebar="menu-item" class="group/menu-item relative"><a data-slot="sidebar-menu-button" data-sidebar="menu-button" data-size="default" data-active="false" class="peer/menu-button group/menu-button flex w-full items-center gap-2 overflow-hidden p-2 text-left ring-sidebar-ring outline-hidden group-has-data-[sidebar=menu-action]/menu-item:pr-8 group-data-[collapsible=icon]:size-8! group-data-[collapsible=icon]:p-2! focus-visible:ring-2 active:bg-sidebar-accent active:text-sidebar-accent-foreground disabled:pointer-events-none disabled:opacity-50 aria-disabled:pointer-events-none aria-disabled:opacity-50 data-open:hover:bg-sidebar-accent data-open:hover:text-sidebar-accent-foreground data-active:bg-sidebar-accent data-active:font-medium data-active:text-sidebar-accent-foreground [&_svg]:size-4 [&_svg]:shrink-0 [&>span:last-child]:truncate hover:bg-sidebar-accent relative h-9 rounded-lg !bg-transparent px-2 text-sm font-medium text-sidebar-foreground/78 shadow-none transition-colors before:absolute before:left-0 before:top-1/2 before:h-4 before:w-0.5 before:-translate-y-1/2 before:rounded-full before:bg-sidebar-primary before:opacity-0 before:transition-opacity hover:!bg-sidebar-accent/70 hover:text-sidebar-foreground data-[active=true]:!bg-sidebar-accent data-[active=true]:text-sidebar-accent-foreground data-[active=true]:before:opacity-100 [&>svg]:text-sidebar-foreground/60 hover:[&>svg]:text-sidebar-foreground data-[active=true]:[&>svg]:text-sidebar-primary" data-state="closed" href="/dashboard/combos"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-layers shrink-0" aria-hidden="true"><path d="M12.83 2.18a2 2 0 0 0-1.66 0L2.6 6.08a1 1 0 0 0 0 1.83l8.58 3.91a2 2 0 0 0 1.66 0l8.58-3.9a1 1 0 0 0 0-1.83z"></path><path d="M2 12a1 1 0 0 0 .58.91l8.6 3.91a2 2 0 0 0 1.65 0l8.58-3.9A1 1 0 0 0 22 12"></path><path d="M2 17a1 1 0 0 0 .58.91l8.6 3.91a2 2 0 0 0 1.65 0l8.58-3.9A1 1 0 0 0 22 17"></path></svg><span>Combos</span></a></li><li data-slot="sidebar-menu-item" data-sidebar="menu-item" class="group/menu-item relative"><a data-slot="sidebar-menu-button" data-sidebar="menu-button" data-size="default" data-active="false" class="peer/menu-button group/menu-button flex w-full items-center gap-2 overflow-hidden p-2 text-left ring-sidebar-ring outline-hidden group-has-data-[sidebar=menu-action]/menu-item:pr-8 group-data-[collapsible=icon]:size-8! group-data-[collapsible=icon]:p-2! focus-visible:ring-2 active:bg-sidebar-accent active:text-sidebar-accent-foreground disabled:pointer-events-none disabled:opacity-50 aria-disabled:pointer-events-none aria-disabled:opacity-50 data-open:hover:bg-sidebar-accent data-open:hover:text-sidebar-accent-foreground data-active:bg-sidebar-accent data-active:font-medium data-active:text-sidebar-accent-foreground [&_svg]:size-4 [&_svg]:shrink-0 [&>span:last-child]:truncate hover:bg-sidebar-accent relative h-9 rounded-lg !bg-transparent px-2 text-sm font-medium text-sidebar-foreground/78 shadow-none transition-colors before:absolute before:left-0 before:top-1/2 before:h-4 before:w-0.5 before:-translate-y-1/2 before:rounded-full before:bg-sidebar-primary before:opacity-0 before:transition-opacity hover:!bg-sidebar-accent/70 hover:text-sidebar-foreground data-[active=true]:!bg-sidebar-accent data-[active=true]:text-sidebar-accent-foreground data-[active=true]:before:opacity-100 [&>svg]:text-sidebar-foreground/60 hover:[&>svg]:text-sidebar-foreground data-[active=true]:[&>svg]:text-sidebar-primary" data-state="closed" href="/dashboard/quota"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-gauge shrink-0" aria-hidden="true"><path d="m12 14 4-4"></path><path d="M3.34 19a10 10 0 1 1 17.32 0"></path></svg><span>Quota Tracker</span></a></li><li data-slot="sidebar-menu-item" data-sidebar="menu-item" class="group/menu-item relative"><a data-slot="sidebar-menu-button" data-sidebar="menu-button" data-size="default" data-active="false" class="peer/menu-button group/menu-button flex w-full items-center gap-2 overflow-hidden p-2 text-left ring-sidebar-ring outline-hidden group-has-data-[sidebar=menu-action]/menu-item:pr-8 group-data-[collapsible=icon]:size-8! group-data-[collapsible=icon]:p-2! focus-visible:ring-2 active:bg-sidebar-accent active:text-sidebar-accent-foreground disabled:pointer-events-none disabled:opacity-50 aria-disabled:pointer-events-none aria-disabled:opacity-50 data-open:hover:bg-sidebar-accent data-open:hover:text-sidebar-accent-foreground data-active:bg-sidebar-accent data-active:font-medium data-active:text-sidebar-accent-foreground [&_svg]:size-4 [&_svg]:shrink-0 [&>span:last-child]:truncate hover:bg-sidebar-accent relative h-9 rounded-lg !bg-transparent px-2 text-sm font-medium text-sidebar-foreground/78 shadow-none transition-colors before:absolute before:left-0 before:top-1/2 before:h-4 before:w-0.5 before:-translate-y-1/2 before:rounded-full before:bg-sidebar-primary before:opacity-0 before:transition-opacity hover:!bg-sidebar-accent/70 hover:text-sidebar-foreground data-[active=true]:!bg-sidebar-accent data-[active=true]:text-sidebar-accent-foreground data-[active=true]:before:opacity-100 [&>svg]:text-sidebar-foreground/60 hover:[&>svg]:text-sidebar-foreground data-[active=true]:[&>svg]:text-sidebar-primary" data-state="closed" href="/dashboard/usage"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-chart-column shrink-0" aria-hidden="true"><path d="M3 3v16a2 2 0 0 0 2 2h16"></path><path d="M18 17V9"></path><path d="M13 17V5"></path><path d="M8 17v-3"></path></svg><span>Usage</span></a></li><li data-slot="sidebar-menu-item" data-sidebar="menu-item" class="group/menu-item relative"><a data-slot="sidebar-menu-button" data-sidebar="menu-button" data-size="default" data-active="false" class="peer/menu-button group/menu-button flex w-full items-center gap-2 overflow-hidden p-2 text-left ring-sidebar-ring outline-hidden group-has-data-[sidebar=menu-action]/menu-item:pr-8 group-data-[collapsible=icon]:size-8! group-data-[collapsible=icon]:p-2! focus-visible:ring-2 active:bg-sidebar-accent active:text-sidebar-accent-foreground disabled:pointer-events-none disabled:opacity-50 aria-disabled:pointer-events-none aria-disabled:opacity-50 data-open:hover:bg-sidebar-accent data-open:hover:text-sidebar-accent-foreground data-active:bg-sidebar-accent data-active:font-medium data-active:text-sidebar-accent-foreground [&_svg]:size-4 [&_svg]:shrink-0 [&>span:last-child]:truncate hover:bg-sidebar-accent relative h-9 rounded-lg !bg-transparent px-2 text-sm font-medium text-sidebar-foreground/78 shadow-none transition-colors before:absolute before:left-0 before:top-1/2 before:h-4 before:w-0.5 before:-translate-y-1/2 before:rounded-full before:bg-sidebar-primary before:opacity-0 before:transition-opacity hover:!bg-sidebar-accent/70 hover:text-sidebar-foreground data-[active=true]:!bg-sidebar-accent data-[active=true]:text-sidebar-accent-foreground data-[active=true]:before:opacity-100 [&>svg]:text-sidebar-foreground/60 hover:[&>svg]:text-sidebar-foreground data-[active=true]:[&>svg]:text-sidebar-primary" data-state="closed" href="/dashboard/analytics"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-database-zap shrink-0" aria-hidden="true"><ellipse cx="12" cy="5" rx="9" ry="3"></ellipse><path d="M3 5V19A9 3 0 0 0 15 21.84"></path><path d="M21 5V8"></path><path d="M21 12L18 17H22L19 22"></path><path d="M3 12A9 3 0 0 0 14.59 14.87"></path></svg><span>Analytics</span></a></li><li data-slot="sidebar-menu-item" data-sidebar="menu-item" class="group/menu-item relative"><a data-slot="sidebar-menu-button" data-sidebar="menu-button" data-size="default" data-active="false" class="peer/menu-button group/menu-button flex w-full items-center gap-2 overflow-hidden p-2 text-left ring-sidebar-ring outline-hidden group-has-data-[sidebar=menu-action]/menu-item:pr-8 group-data-[collapsible=icon]:size-8! group-data-[collapsible=icon]:p-2! focus-visible:ring-2 active:bg-sidebar-accent active:text-sidebar-accent-foreground disabled:pointer-events-none disabled:opacity-50 aria-disabled:pointer-events-none aria-disabled:opacity-50 data-open:hover:bg-sidebar-accent data-open:hover:text-sidebar-accent-foreground data-active:bg-sidebar-accent data-active:font-medium data-active:text-sidebar-accent-foreground [&_svg]:size-4 [&_svg]:shrink-0 [&>span:last-child]:truncate hover:bg-sidebar-accent relative h-9 rounded-lg !bg-transparent px-2 text-sm font-medium text-sidebar-foreground/78 shadow-none transition-colors before:absolute before:left-0 before:top-1/2 before:h-4 before:w-0.5 before:-translate-y-1/2 before:rounded-full before:bg-sidebar-primary before:opacity-0 before:transition-opacity hover:!bg-sidebar-accent/70 hover:text-sidebar-foreground data-[active=true]:!bg-sidebar-accent data-[active=true]:text-sidebar-accent-foreground data-[active=true]:before:opacity-100 [&>svg]:text-sidebar-foreground/60 hover:[&>svg]:text-sidebar-foreground data-[active=true]:[&>svg]:text-sidebar-primary" data-state="closed" href="/dashboard/mitm"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-shield shrink-0" aria-hidden="true"><path d="M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z"></path></svg><span>MITM</span></a></li><li data-slot="sidebar-menu-item" data-sidebar="menu-item" class="group/menu-item relative"><a data-slot="sidebar-menu-button" data-sidebar="menu-button" data-size="default" data-active="false" class="peer/menu-button group/menu-button flex w-full items-center gap-2 overflow-hidden p-2 text-left ring-sidebar-ring outline-hidden group-has-data-[sidebar=menu-action]/menu-item:pr-8 group-data-[collapsible=icon]:size-8! group-data-[collapsible=icon]:p-2! focus-visible:ring-2 active:bg-sidebar-accent active:text-sidebar-accent-foreground disabled:pointer-events-none disabled:opacity-50 aria-disabled:pointer-events-none aria-disabled:opacity-50 data-open:hover:bg-sidebar-accent data-open:hover:text-sidebar-accent-foreground data-active:bg-sidebar-accent data-active:font-medium data-active:text-sidebar-accent-foreground [&_svg]:size-4 [&_svg]:shrink-0 [&>span:last-child]:truncate hover:bg-sidebar-accent relative h-9 rounded-lg !bg-transparent px-2 text-sm font-medium text-sidebar-foreground/78 shadow-none transition-colors before:absolute before:left-0 before:top-1/2 before:h-4 before:w-0.5 before:-translate-y-1/2 before:rounded-full before:bg-sidebar-primary before:opacity-0 before:transition-opacity hover:!bg-sidebar-accent/70 hover:text-sidebar-foreground data-[active=true]:!bg-sidebar-accent data-[active=true]:text-sidebar-accent-foreground data-[active=true]:before:opacity-100 [&>svg]:text-sidebar-foreground/60 hover:[&>svg]:text-sidebar-foreground data-[active=true]:[&>svg]:text-sidebar-primary" data-state="closed" href="/dashboard/cli-tools"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-terminal shrink-0" aria-hidden="true"><path d="M12 19h8"></path><path d="m4 17 6-6-6-6"></path></svg><span>CLI Tools</span></a></li><li data-slot="sidebar-menu-item" data-sidebar="menu-item" class="group/menu-item relative"><a data-slot="sidebar-menu-button" data-sidebar="menu-button" data-size="default" data-active="false" class="peer/menu-button group/menu-button flex w-full items-center gap-2 overflow-hidden p-2 text-left ring-sidebar-ring outline-hidden group-has-data-[sidebar=menu-action]/menu-item:pr-8 group-data-[collapsible=icon]:size-8! group-data-[collapsible=icon]:p-2! focus-visible:ring-2 active:bg-sidebar-accent active:text-sidebar-accent-foreground disabled:pointer-events-none disabled:opacity-50 aria-disabled:pointer-events-none aria-disabled:opacity-50 data-open:hover:bg-sidebar-accent data-open:hover:text-sidebar-accent-foreground data-active:bg-sidebar-accent data-active:font-medium data-active:text-sidebar-accent-foreground [&_svg]:size-4 [&_svg]:shrink-0 [&>span:last-child]:truncate hover:bg-sidebar-accent relative h-9 rounded-lg !bg-transparent px-2 text-sm font-medium text-sidebar-foreground/78 shadow-none transition-colors before:absolute before:left-0 before:top-1/2 before:h-4 before:w-0.5 before:-translate-y-1/2 before:rounded-full before:bg-sidebar-primary before:opacity-0 before:transition-opacity hover:!bg-sidebar-accent/70 hover:text-sidebar-foreground data-[active=true]:!bg-sidebar-accent data-[active=true]:text-sidebar-accent-foreground data-[active=true]:before:opacity-100 [&>svg]:text-sidebar-foreground/60 hover:[&>svg]:text-sidebar-foreground data-[active=true]:[&>svg]:text-sidebar-primary" data-state="closed" href="/dashboard/morph"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-route shrink-0" aria-hidden="true"><circle cx="6" cy="19" r="3"></circle><path d="M9 19h8.5a3.5 3.5 0 0 0 0-7h-11a3.5 3.5 0 0 1 0-7H15"></path><circle cx="18" cy="5" r="3"></circle></svg><span>Morph</span></a></li><li data-slot="sidebar-menu-item" data-sidebar="menu-item" class="group/menu-item relative"><a aria-current="page" data-slot="sidebar-menu-button" data-sidebar="menu-button" data-size="default" data-active="true" class="peer/menu-button group/menu-button flex w-full items-center gap-2 overflow-hidden p-2 text-left ring-sidebar-ring outline-hidden group-has-data-[sidebar=menu-action]/menu-item:pr-8 group-data-[collapsible=icon]:size-8! group-data-[collapsible=icon]:p-2! focus-visible:ring-2 active:bg-sidebar-accent active:text-sidebar-accent-foreground disabled:pointer-events-none disabled:opacity-50 aria-disabled:pointer-events-none aria-disabled:opacity-50 data-open:hover:bg-sidebar-accent data-open:hover:text-sidebar-accent-foreground data-active:bg-sidebar-accent data-active:font-medium data-active:text-sidebar-accent-foreground [&_svg]:size-4 [&_svg]:shrink-0 [&>span:last-child]:truncate hover:bg-sidebar-accent relative h-9 rounded-lg !bg-transparent px-2 text-sm font-medium text-sidebar-foreground/78 shadow-none transition-colors before:absolute before:left-0 before:top-1/2 before:h-4 before:w-0.5 before:-translate-y-1/2 before:rounded-full before:bg-sidebar-primary before:opacity-0 before:transition-opacity hover:!bg-sidebar-accent/70 hover:text-sidebar-foreground data-[active=true]:!bg-sidebar-accent data-[active=true]:text-sidebar-accent-foreground data-[active=true]:before:opacity-100 [&>svg]:text-sidebar-foreground/60 hover:[&>svg]:text-sidebar-foreground data-[active=true]:[&>svg]:text-sidebar-primary" data-state="closed" href="/dashboard/skills"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-sparkles shrink-0" aria-hidden="true"><path d="M11.017 2.814a1 1 0 0 1 1.966 0l1.051 5.558a2 2 0 0 0 1.594 1.594l5.558 1.051a1 1 0 0 1 0 1.966l-5.558 1.051a2 2 0 0 0-1.594 1.594l-1.051 5.558a1 1 0 0 1-1.966 0l-1.051-5.558a2 2 0 0 0-1.594-1.594l-5.558-1.051a1 1 0 0 1 0-1.966l5.558-1.051a2 2 0 0 0 1.594-1.594z"></path><path d="M20 2v4"></path><path d="M22 4h-4"></path><circle cx="4" cy="20" r="2"></circle></svg><span>Skills</span></a></li><li data-slot="sidebar-menu-item" data-sidebar="menu-item" class="group/menu-item relative"><a data-slot="sidebar-menu-button" data-sidebar="menu-button" data-size="default" data-active="false" class="peer/menu-button group/menu-button flex w-full items-center gap-2 overflow-hidden p-2 text-left ring-sidebar-ring outline-hidden group-has-data-[sidebar=menu-action]/menu-item:pr-8 group-data-[collapsible=icon]:size-8! group-data-[collapsible=icon]:p-2! focus-visible:ring-2 active:bg-sidebar-accent active:text-sidebar-accent-foreground disabled:pointer-events-none disabled:opacity-50 aria-disabled:pointer-events-none aria-disabled:opacity-50 data-open:hover:bg-sidebar-accent data-open:hover:text-sidebar-accent-foreground data-active:bg-sidebar-accent data-active:font-medium data-active:text-sidebar-accent-foreground [&_svg]:size-4 [&_svg]:shrink-0 [&>span:last-child]:truncate hover:bg-sidebar-accent relative h-9 rounded-lg !bg-transparent px-2 text-sm font-medium text-sidebar-foreground/78 shadow-none transition-colors before:absolute before:left-0 before:top-1/2 before:h-4 before:w-0.5 before:-translate-y-1/2 before:rounded-full before:bg-sidebar-primary before:opacity-0 before:transition-opacity hover:!bg-sidebar-accent/70 hover:text-sidebar-foreground data-[active=true]:!bg-sidebar-accent data-[active=true]:text-sidebar-accent-foreground data-[active=true]:before:opacity-100 [&>svg]:text-sidebar-foreground/60 hover:[&>svg]:text-sidebar-foreground data-[active=true]:[&>svg]:text-sidebar-primary" data-state="closed" href="/dashboard/mcp"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-route shrink-0" aria-hidden="true"><circle cx="6" cy="19" r="3"></circle><path d="M9 19h8.5a3.5 3.5 0 0 0 0-7h-11a3.5 3.5 0 0 1 0-7H15"></path><circle cx="18" cy="5" r="3"></circle></svg><span>MCP</span></a></li></ul></div></div><div data-slot="sidebar-group" data-sidebar="group" class="relative flex w-full min-w-0 flex-col p-2 px-0 py-0"><div data-slot="sidebar-group-label" data-sidebar="group-label" class="flex shrink-0 items-center rounded-md ring-sidebar-ring outline-hidden transition-[margin,opacity] duration-200 ease-linear group-data-[collapsible=icon]:-mt-8 group-data-[collapsible=icon]:opacity-0 focus-visible:ring-2 [&>svg]:size-4 [&>svg]:shrink-0 h-7 px-2 text-[10px] font-semibold uppercase tracking-[0.18em] text-sidebar-foreground/40">Projects</div><div data-slot="sidebar-group-content" data-sidebar="group-content" class="w-full text-sm"><ul data-slot="sidebar-menu" data-sidebar="menu" class="flex w-full min-w-0 flex-col gap-1.5"><li data-slot="collapsible" data-sidebar="menu-item" class="group/menu-item relative group/collapsible" data-state="closed"><button data-slot="collapsible-trigger" data-sidebar="menu-button" data-size="default" data-active="false" class="peer/menu-button group/menu-button flex w-full items-center gap-2 overflow-hidden p-2 text-left ring-sidebar-ring outline-hidden group-has-data-[sidebar=menu-action]/menu-item:pr-8 group-data-[collapsible=icon]:size-8! group-data-[collapsible=icon]:p-2! focus-visible:ring-2 active:bg-sidebar-accent active:text-sidebar-accent-foreground disabled:pointer-events-none disabled:opacity-50 aria-disabled:pointer-events-none aria-disabled:opacity-50 data-open:hover:bg-sidebar-accent data-open:hover:text-sidebar-accent-foreground data-active:bg-sidebar-accent data-active:font-medium data-active:text-sidebar-accent-foreground [&_svg]:size-4 [&_svg]:shrink-0 [&>span:last-child]:truncate hover:bg-sidebar-accent relative h-9 cursor-pointer rounded-lg !bg-transparent px-2 text-sm font-medium text-sidebar-foreground/78 shadow-none transition-colors before:absolute before:left-0 before:top-1/2 before:h-4 before:w-0.5 before:-translate-y-1/2 before:rounded-full before:bg-sidebar-primary before:opacity-0 before:transition-opacity hover:!bg-sidebar-accent/70 hover:text-sidebar-foreground data-[active=true]:!bg-sidebar-accent data-[active=true]:text-sidebar-accent-foreground data-[active=true]:before:opacity-100 [&>svg]:text-sidebar-foreground/60 hover:[&>svg]:text-sidebar-foreground data-[active=true]:[&>svg]:text-sidebar-primary" type="button" aria-controls="radix-_R_3ad9fdb_" aria-expanded="false" data-state="closed"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-image shrink-0" aria-hidden="true"><rect width="18" height="18" x="3" y="3" rx="2" ry="2"></rect><circle cx="9" cy="9" r="2"></circle><path d="m21 15-3.086-3.086a2 2 0 0 0-2.828 0L6 21"></path></svg><span>Media Providers</span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-chevron-right ml-auto transition-transform duration-200 group-data-[state=open]/collapsible:rotate-90" aria-hidden="true"><path d="m9 18 6-6-6-6"></path></svg><span class="sr-only">Toggle media providers</span></button><div data-state="closed" id="radix-_R_3ad9fdb_" hidden="" data-slot="collapsible-content"></div></li><li data-slot="sidebar-menu-item" data-sidebar="menu-item" class="group/menu-item relative"><a data-slot="sidebar-menu-button" data-sidebar="menu-button" data-size="default" data-active="false" class="peer/menu-button group/menu-button flex w-full items-center gap-2 overflow-hidden p-2 text-left ring-sidebar-ring outline-hidden group-has-data-[sidebar=menu-action]/menu-item:pr-8 group-data-[collapsible=icon]:size-8! group-data-[collapsible=icon]:p-2! focus-visible:ring-2 active:bg-sidebar-accent active:text-sidebar-accent-foreground disabled:pointer-events-none disabled:opacity-50 aria-disabled:pointer-events-none aria-disabled:opacity-50 data-open:hover:bg-sidebar-accent data-open:hover:text-sidebar-accent-foreground data-active:bg-sidebar-accent data-active:font-medium data-active:text-sidebar-accent-foreground [&_svg]:size-4 [&_svg]:shrink-0 [&>span:last-child]:truncate hover:bg-sidebar-accent relative h-9 rounded-lg !bg-transparent px-2 text-sm font-medium text-sidebar-foreground/78 shadow-none transition-colors before:absolute before:left-0 before:top-1/2 before:h-4 before:w-0.5 before:-translate-y-1/2 before:rounded-full before:bg-sidebar-primary before:opacity-0 before:transition-opacity hover:!bg-sidebar-accent/70 hover:text-sidebar-foreground data-[active=true]:!bg-sidebar-accent data-[active=true]:text-sidebar-accent-foreground data-[active=true]:before:opacity-100 [&>svg]:text-sidebar-foreground/60 hover:[&>svg]:text-sidebar-foreground data-[active=true]:[&>svg]:text-sidebar-primary" data-state="closed" href="/dashboard/proxy-pools"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-folder-cog shrink-0" aria-hidden="true"><path d="M10.3 20H4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h3.98a2 2 0 0 1 1.69.9l.66 1.2A2 2 0 0 0 12 6h8a2 2 0 0 1 2 2v3.3"></path><path d="m14.305 19.53.923-.382"></path><path d="m15.228 16.852-.923-.383"></path><path d="m16.852 15.228-.383-.923"></path><path d="m16.852 20.772-.383.924"></path><path d="m19.148 15.228.383-.923"></path><path d="m19.53 21.696-.382-.924"></path><path d="m20.772 16.852.924-.383"></path><path d="m20.772 19.148.924.383"></path><circle cx="18" cy="18" r="3"></circle></svg><span>Proxy Pools</span></a></li><li data-slot="sidebar-menu-item" data-sidebar="menu-item" class="group/menu-item relative"><a data-slot="sidebar-menu-button" data-sidebar="menu-button" data-size="default" data-active="false" class="peer/menu-button group/menu-button flex w-full items-center gap-2 overflow-hidden p-2 text-left ring-sidebar-ring outline-hidden group-has-data-[sidebar=menu-action]/menu-item:pr-8 group-data-[collapsible=icon]:size-8! group-data-[collapsible=icon]:p-2! focus-visible:ring-2 active:bg-sidebar-accent active:text-sidebar-accent-foreground disabled:pointer-events-none disabled:opacity-50 aria-disabled:pointer-events-none aria-disabled:opacity-50 data-open:hover:bg-sidebar-accent data-open:hover:text-sidebar-accent-foreground data-active:bg-sidebar-accent data-active:font-medium data-active:text-sidebar-accent-foreground [&_svg]:size-4 [&_svg]:shrink-0 [&>span:last-child]:truncate hover:bg-sidebar-accent relative h-9 rounded-lg !bg-transparent px-2 text-sm font-medium text-sidebar-foreground/78 shadow-none transition-colors before:absolute before:left-0 before:top-1/2 before:h-4 before:w-0.5 before:-translate-y-1/2 before:rounded-full before:bg-sidebar-primary before:opacity-0 before:transition-opacity hover:!bg-sidebar-accent/70 hover:text-sidebar-foreground data-[active=true]:!bg-sidebar-accent data-[active=true]:text-sidebar-accent-foreground data-[active=true]:before:opacity-100 [&>svg]:text-sidebar-foreground/60 hover:[&>svg]:text-sidebar-foreground data-[active=true]:[&>svg]:text-sidebar-primary" data-state="closed" href="/dashboard/console-log"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-scroll-text shrink-0" aria-hidden="true"><path d="M15 12h-5"></path><path d="M15 8h-5"></path><path d="M19 17V5a2 2 0 0 0-2-2H4"></path><path d="M8 21h12a2 2 0 0 0 2-2v-1a1 1 0 0 0-1-1H11a1 1 0 0 0-1 1v1a2 2 0 1 1-4 0V5a2 2 0 1 0-4 0v2a1 1 0 0 0 1 1h3"></path></svg><span>Console Log</span></a></li><li data-slot="sidebar-menu-item" data-sidebar="menu-item" class="group/menu-item relative"><a data-slot="sidebar-menu-button" data-sidebar="menu-button" data-size="default" data-active="false" class="peer/menu-button group/menu-button flex w-full items-center gap-2 overflow-hidden p-2 text-left ring-sidebar-ring outline-hidden group-has-data-[sidebar=menu-action]/menu-item:pr-8 group-data-[collapsible=icon]:size-8! group-data-[collapsible=icon]:p-2! focus-visible:ring-2 active:bg-sidebar-accent active:text-sidebar-accent-foreground disabled:pointer-events-none disabled:opacity-50 aria-disabled:pointer-events-none aria-disabled:opacity-50 data-open:hover:bg-sidebar-accent data-open:hover:text-sidebar-accent-foreground data-active:bg-sidebar-accent data-active:font-medium data-active:text-sidebar-accent-foreground [&_svg]:size-4 [&_svg]:shrink-0 [&>span:last-child]:truncate hover:bg-sidebar-accent relative h-9 rounded-lg !bg-transparent px-2 text-sm font-medium text-sidebar-foreground/78 shadow-none transition-colors before:absolute before:left-0 before:top-1/2 before:h-4 before:w-0.5 before:-translate-y-1/2 before:rounded-full before:bg-sidebar-primary before:opacity-0 before:transition-opacity hover:!bg-sidebar-accent/70 hover:text-sidebar-foreground data-[active=true]:!bg-sidebar-accent data-[active=true]:text-sidebar-accent-foreground data-[active=true]:before:opacity-100 [&>svg]:text-sidebar-foreground/60 hover:[&>svg]:text-sidebar-foreground data-[active=true]:[&>svg]:text-sidebar-primary" data-state="closed" href="/dashboard/settings"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-settings shrink-0" aria-hidden="true"><path d="M9.671 4.136a2.34 2.34 0 0 1 4.659 0 2.34 2.34 0 0 0 3.319 1.915 2.34 2.34 0 0 1 2.33 4.033 2.34 2.34 0 0 0 0 3.831 2.34 2.34 0 0 1-2.33 4.033 2.34 2.34 0 0 0-3.319 1.915 2.34 2.34 0 0 1-4.659 0 2.34 2.34 0 0 0-3.32-1.915 2.34 2.34 0 0 1-2.33-4.033 2.34 2.34 0 0 0 0-3.831A2.34 2.34 0 0 1 6.35 6.051a2.34 2.34 0 0 0 3.319-1.915"></path><circle cx="12" cy="12" r="3"></circle></svg><span>Settings</span></a></li></ul></div></div></div></div><div data-slot="sidebar-footer" data-sidebar="footer" class="flex flex-col gap-2 p-2 px-3 pb-4 pt-3"><div class="group-data-[collapsible=icon]:hidden"><div class="rounded-[4px] border border-sidebar-border/80 bg-sidebar-accent/45 p-3 shadow-[0_12px_30px_rgba(0,0,0,0.18)]"><div class="flex items-center justify-between gap-2 text-xs"><div class="flex min-w-0 items-center gap-2"><span class="size-2 shrink-0 rounded-full bg-success shadow-[0_0_16px_color-mix(in_srgb,var(--color-success)_55%,transparent)]"></span><span class="truncate font-medium text-sidebar-foreground">AI gateway <!-- -->healthy</span></div><span class="inline-flex items-center gap-1.5 border py-1 tracking-[0.01em] h-5 shrink-0 rounded-sm px-1.5 text-[10px] font-medium tabular-nums text-[var(--color-success)] border-[var(--color-success)]/35 bg-[var(--color-success)]/15">1ms</span></div><div class="mt-2 flex items-center justify-between text-[11px] text-sidebar-foreground/45"><span>AxonRouter runtime</span><span>v<!-- -->0.1.2</span></div></div></div></div><button data-sidebar="rail" data-slot="sidebar-rail" aria-label="Toggle Sidebar" tabindex="-1" title="Toggle Sidebar" class="absolute inset-y-0 z-20 hidden w-4 transition-all ease-linear group-data-[side=left]:-right-4 group-data-[side=right]:left-0 after:absolute after:inset-y-0 after:start-1/2 after:w-[2px] hover:after:bg-sidebar-border sm:flex ltr:-translate-x-1/2 rtl:-translate-x-1/2 in-data-[side=left]:cursor-w-resize in-data-[side=right]:cursor-e-resize [[data-side=left][data-state=collapsed]_&]:cursor-e-resize [[data-side=right][data-state=collapsed]_&]:cursor-w-resize group-data-[collapsible=offcanvas]:translate-x-0 group-data-[collapsible=offcanvas]:after:left-full hover:group-data-[collapsible=offcanvas]:bg-sidebar [[data-side=left][data-collapsible=offcanvas]_&]:-right-2 [[data-side=right][data-collapsible=offcanvas]_&]:-left-2"></button></div></div></div><main data-slot="sidebar-inset" class="relative flex w-full flex-1 flex-col md:peer-data-[variant=inset]:m-2 md:peer-data-[variant=inset]:ml-0 md:peer-data-[variant=inset]:rounded-xl md:peer-data-[variant=inset]:shadow-sm md:peer-data-[variant=inset]:peer-data-[state=collapsed]:ml-2 min-h-svh bg-transparent"><header class="flex min-h-18 items-center gap-3 border-b border-border/80 bg-background/82 px-5 shadow-[0_16px_42px_rgba(0,0,0,0.16)] backdrop-blur-xl max-sm:min-h-16 max-sm:px-3"><div class="hidden shrink-0 max-lg:block"><button class="inline-flex cursor-pointer items-center justify-center gap-2 rounded-[4px] border font-medium transition-[background,border-color,color,transform] duration-150 active:not-disabled:translate-y-px disabled:cursor-not-allowed disabled:opacity-60 [&_svg]:shrink-0 border-transparent bg-transparent text-muted-foreground hover:border-primary/45 hover:bg-primary/15 hover:text-foreground size-8 p-0" data-sidebar="trigger" data-slot="sidebar-trigger" aria-label="Open navigation"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-panel-left" aria-hidden="true"><rect width="18" height="18" x="3" y="3" rx="2"></rect><path d="M9 3v18"></path></svg><span class="sr-only">Toggle Sidebar</span></button></div><div class="min-w-0 flex-1"><div class="min-w-0"><div class="flex min-w-0 items-center gap-2"><h1 class="truncate text-xl font-bold leading-tight tracking-[-0.035em] text-foreground max-[640px]:text-base">Skills</h1><span class="items-center gap-1.5 border py-1 hidden rounded-[4px] border-primary/20 bg-primary/10 px-2 text-[10px] font-semibold uppercase tracking-[0.16em] text-primary sm:inline-flex">AI Gateway</span></div><p class="mt-0.5 truncate text-xs text-muted-foreground max-[760px]:hidden">Copy capability-specific skill prompts for AxonRouter workflows</p></div></div><div class="flex min-h-10 w-[min(28vw,22rem)] items-center gap-2 rounded-[4px] border border-border/80 bg-secondary/60 px-3 text-muted-foreground shadow-[inset_0_1px_0_rgba(255,255,255,0.04)] max-[900px]:hidden"><svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-search" aria-hidden="true"><path d="m21 21-4.34-4.34"></path><circle cx="11" cy="11" r="8"></circle></svg><input type="text" data-slot="input" class="w-full min-w-0 rounded-[4px] border-input py-1 transition-colors outline-none file:inline-flex file:h-6 file:border-0 file:bg-transparent file:text-sm file:font-medium file:text-foreground placeholder:text-muted-foreground focus-visible:border-ring focus-visible:ring-ring/50 disabled:pointer-events-none disabled:cursor-not-allowed disabled:bg-input/50 disabled:opacity-50 aria-invalid:border-destructive aria-invalid:ring-3 aria-invalid:ring-destructive/20 md:text-sm dark:bg-input/30 dark:disabled:bg-input/80 dark:aria-invalid:border-destructive/50 dark:aria-invalid:ring-destructive/40 h-auto min-h-0 border-0 bg-transparent px-0 text-sm text-foreground focus-visible:ring-0" placeholder="Search AI gateway..." value=""/></div><div role="separator" data-orientation="vertical" class="shrink-0 bg-border h-7 w-px max-sm:hidden"></div><button class="inline-flex cursor-pointer items-center justify-center gap-2 rounded-[4px] border font-medium transition-[background,border-color,color,transform] duration-150 active:not-disabled:translate-y-px disabled:cursor-not-allowed disabled:opacity-60 [&_svg]:shrink-0 border-border bg-secondary text-secondary-foreground hover:border-primary/45 hover:bg-primary/15 size-8 p-0" type="button" aria-label="Open dashboard menu" id="radix-_R_3bpfdb_" aria-haspopup="menu" aria-expanded="false" data-state="closed" data-slot="dropdown-menu-trigger"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-grid3x3 lucide-grid-3x3 shrink-0" aria-hidden="true"><rect width="18" height="18" x="3" y="3" rx="2"></rect><path d="M3 9h18"></path><path d="M3 15h18"></path><path d="M9 3v18"></path><path d="M15 3v18"></path></svg></button><div class=""></div></header><main class="rr-main-scroll"><div class="rr-main-inner"><!--$?--><template id="B:0"></template><div class="flex flex-col gap-6 p-6 lg:p-10"><div class="grid gap-4 md:grid-cols-3"><div class="rounded-[4px] border border-border bg-card p-5"><div class="animate-pulse rounded-[4px] bg-foreground/10 mb-4 h-4 w-24"></div><div class="animate-pulse rounded-[4px] bg-foreground/10 h-8 w-20"></div></div><div class="rounded-[4px] border border-border bg-card p-5"><div class="animate-pulse rounded-[4px] bg-foreground/10 mb-4 h-4 w-24"></div><div class="animate-pulse rounded-[4px] bg-foreground/10 h-8 w-20"></div></div><div class="rounded-[4px] border border-border bg-card p-5"><div class="animate-pulse rounded-[4px] bg-foreground/10 mb-4 h-4 w-24"></div><div class="animate-pulse rounded-[4px] bg-foreground/10 h-8 w-20"></div></div></div><div class="grid gap-6 xl:grid-cols-[1.5fr_1fr]"><div class="rounded-[4px] border border-border bg-card p-6"><div class="animate-pulse rounded-[4px] bg-foreground/10 mb-5 h-5 w-48"></div><div class="space-y-3"><div class="animate-pulse rounded-[4px] bg-foreground/10 h-12 w-full"></div><div class="animate-pulse rounded-[4px] bg-foreground/10 h-12 w-full"></div><div class="animate-pulse rounded-[4px] bg-foreground/10 h-12 w-full"></div><div class="animate-pulse rounded-[4px] bg-foreground/10 h-12 w-full"></div><div class="animate-pulse rounded-[4px] bg-foreground/10 h-12 w-full"></div></div></div><div class="rounded-[4px] border border-border bg-card p-6"><div class="animate-pulse rounded-[4px] bg-foreground/10 mb-5 h-5 w-32"></div><div class="space-y-4"><div class="space-y-2"><div class="animate-pulse rounded-[4px] bg-foreground/10 h-3 w-20"></div><div class="animate-pulse rounded-[4px] bg-foreground/10 h-10 w-full"></div></div><div class="space-y-2"><div class="animate-pulse rounded-[4px] bg-foreground/10 h-3 w-20"></div><div class="animate-pulse rounded-[4px] bg-foreground/10 h-10 w-full"></div></div><div class="space-y-2"><div class="animate-pulse rounded-[4px] bg-foreground/10 h-3 w-20"></div><div class="animate-pulse rounded-[4px] bg-foreground/10 h-10 w-full"></div></div><div class="space-y-2"><div class="animate-pulse rounded-[4px] bg-foreground/10 h-3 w-20"></div><div class="animate-pulse rounded-[4px] bg-foreground/10 h-10 w-full"></div></div></div></div></div></div><!--/$--></div></main></main></div><script>requestAnimationFrame(function(){$RT=performance.now()});</script><script src="/_next/static/chunks/0-hrh_uw98wb_.js" id="_R_" async=""></script><div hidden id="S:0"><div class="flex flex-col gap-6"><div class="flex flex-col gap-3 sm:flex-row sm:items-end sm:justify-between"><div><p class="text-[11px] font-semibold uppercase tracking-[0.22em] text-muted-foreground">Agent skills</p><h2 class="mt-1 text-2xl font-extrabold tracking-[-0.03em] text-foreground">Skills library</h2><p class="mt-2 max-w-3xl text-sm leading-6 text-muted-foreground">Drop-in skill documents for AI agents. Copy a link and paste it to your AI to enable AxonRouter capabilities.</p></div><div class="inline-flex items-center gap-1 rounded-[4px] border border-border bg-secondary/75 p-1" aria-label="Skills sections"><button type="button" data-state="on" class="inline-flex min-h-9 cursor-pointer items-center justify-center gap-1.5 rounded-[4px] px-3 py-1.5 text-sm font-bold transition-colors disabled:cursor-not-allowed disabled:opacity-60 hover:bg-primary/10 hover:text-foreground bg-primary/15 text-primary min-w-24">Built-in</button><button type="button" data-state="off" class="inline-flex min-h-9 cursor-pointer items-center justify-center gap-1.5 rounded-[4px] px-3 py-1.5 text-sm font-bold text-muted-foreground transition-colors disabled:cursor-not-allowed disabled:opacity-60 hover:bg-primary/10 hover:text-foreground min-w-24">Custom</button></div></div><div class="rounded-[4px] border text-card-foreground border-primary/30 bg-primary/5"><div class="p-4 flex items-center gap-4 flex-wrap"><div class="size-10 rounded-lg flex items-center justify-center bg-primary/10 text-primary text-lg shrink-0">⚡</div><div class="min-w-0 flex-1"><p class="text-xs font-medium text-muted-foreground mb-1">Paste this to your AI agent to get started:</p><code class="text-xs font-mono text-foreground break-all">Read this skill and use it: <!-- -->/api/skills/axonrouter</code></div><button class="inline-flex cursor-pointer items-center justify-center rounded-[4px] border font-medium transition-[background,border-color,color,transform] duration-150 active:not-disabled:translate-y-px disabled:cursor-not-allowed disabled:opacity-60 [&_svg]:shrink-0 border-border bg-transparent text-foreground hover:border-primary/45 hover:bg-primary/15 min-h-8 px-2.5 py-1.5 h-7 text-xs gap-1.5" type="button"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-copy shrink-0 text-xs" aria-hidden="true"><rect width="14" height="14" x="8" y="8" rx="2" ry="2"></rect><path d="M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2"></path></svg>Copy prompt</button></div></div><div class="flex items-center gap-2"><div class="relative flex-1 max-w-sm"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-search shrink-0 pointer-events-none absolute left-2.5 top-1/2 -translate-y-1/2 text-muted-foreground text-sm" aria-hidden="true"><path d="m21 21-4.34-4.34"></path><circle cx="11" cy="11" r="8"></circle></svg><input data-slot="input" class="w-full min-w-0 rounded-[4px] border border-input bg-transparent px-2.5 py-1 transition-colors outline-none file:inline-flex file:h-6 file:border-0 file:bg-transparent file:text-sm file:font-medium file:text-foreground placeholder:text-muted-foreground focus-visible:border-ring focus-visible:ring-3 focus-visible:ring-ring/50 disabled:pointer-events-none disabled:cursor-not-allowed disabled:bg-input/50 disabled:opacity-50 aria-invalid:border-destructive aria-invalid:ring-3 aria-invalid:ring-destructive/20 md:text-sm dark:bg-input/30 dark:disabled:bg-input/80 dark:aria-invalid:border-destructive/50 dark:aria-invalid:ring-destructive/40 pl-8 h-8 text-xs" placeholder="Search skills..." value=""/></div><a href="https://github.com/rickicode/axonrouter/tree/main/skills" target="_blank" rel="noreferrer"><button class="inline-flex cursor-pointer items-center justify-center rounded-[4px] border font-medium transition-[background,border-color,color,transform] duration-150 active:not-disabled:translate-y-px disabled:cursor-not-allowed disabled:opacity-60 [&_svg]:shrink-0 border-border bg-transparent text-foreground hover:border-primary/45 hover:bg-primary/15 min-h-8 px-2.5 py-1.5 h-8 text-xs gap-1.5" type="button"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-arrow-right shrink-0 text-xs" aria-hidden="true"><path d="M5 12h14"></path><path d="m12 5 7 7-7 7"></path></svg>GitHub</button></a></div><div class="grid gap-3 sm:grid-cols-2 lg:grid-cols-3"><div class="sm:col-span-2 lg:col-span-3"><div class="rounded-[4px] border bg-card text-card-foreground group transition-shadow hover:shadow-md border-primary/50 ring-1 ring-primary/20"><div class="p-4 space-y-3"><div class="flex items-start gap-3"><div class="size-10 rounded-lg flex items-center justify-center shrink-0 text-lg bg-muted">⚡</div><div class="min-w-0 flex-1"><div class="flex items-center gap-2 flex-wrap"><h3 class="text-sm font-bold text-foreground truncate">AxonRouter (Entry)</h3><span class="inline-flex items-center gap-1.5 rounded-sm border font-bold tracking-[0.01em] border-primary/25 bg-primary/15 text-primary text-[10px] px-1.5 py-0">START HERE</span></div></div></div><p class="text-xs text-muted-foreground leading-relaxed line-clamp-2">Setup + index of all capabilities. Start here for auth, model discovery, and links to every capability skill.</p><div class="flex items-center gap-1.5 pt-1"><button class="inline-flex cursor-pointer items-center justify-center rounded-[4px] border font-medium transition-[background,border-color,color,transform] duration-150 active:not-disabled:translate-y-px disabled:cursor-not-allowed disabled:opacity-60 [&_svg]:shrink-0 border-border bg-transparent text-foreground hover:border-primary/45 hover:bg-primary/15 min-h-8 px-2.5 py-1.5 h-7 text-xs gap-1.5" type="button"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-copy shrink-0 text-xs" aria-hidden="true"><rect width="14" height="14" x="8" y="8" rx="2" ry="2"></rect><path d="M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2"></path></svg>Copy link</button><button class="inline-flex cursor-pointer items-center justify-center rounded-[4px] border font-medium transition-[background,border-color,color,transform] duration-150 active:not-disabled:translate-y-px disabled:cursor-not-allowed disabled:opacity-60 [&_svg]:shrink-0 border-border bg-transparent text-foreground hover:border-primary/45 hover:bg-primary/15 min-h-8 px-2.5 py-1.5 h-7 text-xs gap-1.5" type="button"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-copy shrink-0 text-xs" aria-hidden="true"><rect width="14" height="14" x="8" y="8" rx="2" ry="2"></rect><path d="M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2"></path></svg>Use skill</button><a href="https://github.com/rickicode/axonrouter/blob/main/skills/axonrouter/SKILL.md" target="_blank" rel="noreferrer" class="ml-auto"><button class="inline-flex cursor-pointer items-center justify-center rounded-[4px] border font-medium transition-[background,border-color,color,transform] duration-150 active:not-disabled:translate-y-px disabled:cursor-not-allowed disabled:opacity-60 [&_svg]:shrink-0 border-transparent bg-transparent hover:border-primary/45 hover:bg-primary/15 min-h-8 px-2.5 py-1.5 h-7 text-xs gap-1 text-muted-foreground hover:text-foreground" type="button"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-arrow-right shrink-0 text-xs" aria-hidden="true"><path d="M5 12h14"></path><path d="m12 5 7 7-7 7"></path></svg>Source</button></a></div></div></div></div><div class="rounded-[4px] border border-border bg-card text-card-foreground group transition-shadow hover:shadow-md"><div class="p-4 space-y-3"><div class="flex items-start gap-3"><div class="size-10 rounded-lg flex items-center justify-center shrink-0 text-lg bg-muted">⚡</div><div class="min-w-0 flex-1"><div class="flex items-center gap-2 flex-wrap"><h3 class="text-sm font-bold text-foreground truncate">Unified Routing API</h3></div><code class="text-[11px] text-muted-foreground font-mono">/v1/unified</code></div></div><p class="text-xs text-muted-foreground leading-relaxed line-clamp-2">Single multimodal contract for text, image, audio, and future video routing with a shared response envelope.</p><div class="flex items-center gap-1.5 pt-1"><button class="inline-flex cursor-pointer items-center justify-center rounded-[4px] border font-medium transition-[background,border-color,color,transform] duration-150 active:not-disabled:translate-y-px disabled:cursor-not-allowed disabled:opacity-60 [&_svg]:shrink-0 border-border bg-transparent text-foreground hover:border-primary/45 hover:bg-primary/15 min-h-8 px-2.5 py-1.5 h-7 text-xs gap-1.5" type="button"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-copy shrink-0 text-xs" aria-hidden="true"><rect width="14" height="14" x="8" y="8" rx="2" ry="2"></rect><path d="M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2"></path></svg>Copy link</button><button class="inline-flex cursor-pointer items-center justify-center rounded-[4px] border font-medium transition-[background,border-color,color,transform] duration-150 active:not-disabled:translate-y-px disabled:cursor-not-allowed disabled:opacity-60 [&_svg]:shrink-0 border-border bg-transparent text-foreground hover:border-primary/45 hover:bg-primary/15 min-h-8 px-2.5 py-1.5 h-7 text-xs gap-1.5" type="button"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-copy shrink-0 text-xs" aria-hidden="true"><rect width="14" height="14" x="8" y="8" rx="2" ry="2"></rect><path d="M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2"></path></svg>Use skill</button><a href="https://github.com/rickicode/axonrouter/blob/main/skills/axonrouter-unified/SKILL.md" target="_blank" rel="noreferrer" class="ml-auto"><button class="inline-flex cursor-pointer items-center justify-center rounded-[4px] border font-medium transition-[background,border-color,color,transform] duration-150 active:not-disabled:translate-y-px disabled:cursor-not-allowed disabled:opacity-60 [&_svg]:shrink-0 border-transparent bg-transparent hover:border-primary/45 hover:bg-primary/15 min-h-8 px-2.5 py-1.5 h-7 text-xs gap-1 text-muted-foreground hover:text-foreground" type="button"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-arrow-right shrink-0 text-xs" aria-hidden="true"><path d="M5 12h14"></path><path d="m12 5 7 7-7 7"></path></svg>Source</button></a></div></div></div><div class="rounded-[4px] border border-border bg-card text-card-foreground group transition-shadow hover:shadow-md"><div class="p-4 space-y-3"><div class="flex items-start gap-3"><div class="size-10 rounded-lg flex items-center justify-center shrink-0 text-lg bg-muted">💬</div><div class="min-w-0 flex-1"><div class="flex items-center gap-2 flex-wrap"><h3 class="text-sm font-bold text-foreground truncate">Chat</h3></div><code class="text-[11px] text-muted-foreground font-mono">/v1/chat/completions</code></div></div><p class="text-xs text-muted-foreground leading-relaxed line-clamp-2">Chat / code generation via OpenAI or Anthropic format with streaming.</p><div class="flex items-center gap-1.5 pt-1"><button class="inline-flex cursor-pointer items-center justify-center rounded-[4px] border font-medium transition-[background,border-color,color,transform] duration-150 active:not-disabled:translate-y-px disabled:cursor-not-allowed disabled:opacity-60 [&_svg]:shrink-0 border-border bg-transparent text-foreground hover:border-primary/45 hover:bg-primary/15 min-h-8 px-2.5 py-1.5 h-7 text-xs gap-1.5" type="button"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-copy shrink-0 text-xs" aria-hidden="true"><rect width="14" height="14" x="8" y="8" rx="2" ry="2"></rect><path d="M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2"></path></svg>Copy link</button><button class="inline-flex cursor-pointer items-center justify-center rounded-[4px] border font-medium transition-[background,border-color,color,transform] duration-150 active:not-disabled:translate-y-px disabled:cursor-not-allowed disabled:opacity-60 [&_svg]:shrink-0 border-border bg-transparent text-foreground hover:border-primary/45 hover:bg-primary/15 min-h-8 px-2.5 py-1.5 h-7 text-xs gap-1.5" type="button"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-copy shrink-0 text-xs" aria-hidden="true"><rect width="14" height="14" x="8" y="8" rx="2" ry="2"></rect><path d="M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2"></path></svg>Use skill</button><a href="https://github.com/rickicode/axonrouter/blob/main/skills/axonrouter-chat/SKILL.md" target="_blank" rel="noreferrer" class="ml-auto"><button class="inline-flex cursor-pointer items-center justify-center rounded-[4px] border font-medium transition-[background,border-color,color,transform] duration-150 active:not-disabled:translate-y-px disabled:cursor-not-allowed disabled:opacity-60 [&_svg]:shrink-0 border-transparent bg-transparent hover:border-primary/45 hover:bg-primary/15 min-h-8 px-2.5 py-1.5 h-7 text-xs gap-1 text-muted-foreground hover:text-foreground" type="button"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-arrow-right shrink-0 text-xs" aria-hidden="true"><path d="M5 12h14"></path><path d="m12 5 7 7-7 7"></path></svg>Source</button></a></div></div></div><div class="rounded-[4px] border border-border bg-card text-card-foreground group transition-shadow hover:shadow-md"><div class="p-4 space-y-3"><div class="flex items-start gap-3"><div class="size-10 rounded-lg flex items-center justify-center shrink-0 text-lg bg-muted">🖼️</div><div class="min-w-0 flex-1"><div class="flex items-center gap-2 flex-wrap"><h3 class="text-sm font-bold text-foreground truncate">Image Generation</h3></div><code class="text-[11px] text-muted-foreground font-mono">/v1/images/generations</code></div></div><p class="text-xs text-muted-foreground leading-relaxed line-clamp-2">Text-to-image via DALL-E, Imagen, FLUX, MiniMax, SDWebUI, and more.</p><div class="flex items-center gap-1.5 pt-1"><button class="inline-flex cursor-pointer items-center justify-center rounded-[4px] border font-medium transition-[background,border-color,color,transform] duration-150 active:not-disabled:translate-y-px disabled:cursor-not-allowed disabled:opacity-60 [&_svg]:shrink-0 border-border bg-transparent text-foreground hover:border-primary/45 hover:bg-primary/15 min-h-8 px-2.5 py-1.5 h-7 text-xs gap-1.5" type="button"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-copy shrink-0 text-xs" aria-hidden="true"><rect width="14" height="14" x="8" y="8" rx="2" ry="2"></rect><path d="M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2"></path></svg>Copy link</button><button class="inline-flex cursor-pointer items-center justify-center rounded-[4px] border font-medium transition-[background,border-color,color,transform] duration-150 active:not-disabled:translate-y-px disabled:cursor-not-allowed disabled:opacity-60 [&_svg]:shrink-0 border-border bg-transparent text-foreground hover:border-primary/45 hover:bg-primary/15 min-h-8 px-2.5 py-1.5 h-7 text-xs gap-1.5" type="button"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-copy shrink-0 text-xs" aria-hidden="true"><rect width="14" height="14" x="8" y="8" rx="2" ry="2"></rect><path d="M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2"></path></svg>Use skill</button><a href="https://github.com/rickicode/axonrouter/blob/main/skills/axonrouter-image/SKILL.md" target="_blank" rel="noreferrer" class="ml-auto"><button class="inline-flex cursor-pointer items-center justify-center rounded-[4px] border font-medium transition-[background,border-color,color,transform] duration-150 active:not-disabled:translate-y-px disabled:cursor-not-allowed disabled:opacity-60 [&_svg]:shrink-0 border-transparent bg-transparent hover:border-primary/45 hover:bg-primary/15 min-h-8 px-2.5 py-1.5 h-7 text-xs gap-1 text-muted-foreground hover:text-foreground" type="button"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-arrow-right shrink-0 text-xs" aria-hidden="true"><path d="M5 12h14"></path><path d="m12 5 7 7-7 7"></path></svg>Source</button></a></div></div></div><div class="rounded-[4px] border border-border bg-card text-card-foreground group transition-shadow hover:shadow-md"><div class="p-4 space-y-3"><div class="flex items-start gap-3"><div class="size-10 rounded-lg flex items-center justify-center shrink-0 text-lg bg-muted">🔊</div><div class="min-w-0 flex-1"><div class="flex items-center gap-2 flex-wrap"><h3 class="text-sm font-bold text-foreground truncate">Text-to-Speech</h3></div><code class="text-[11px] text-muted-foreground font-mono">/v1/audio/speech</code></div></div><p class="text-xs text-muted-foreground leading-relaxed line-clamp-2">Speech synthesis via OpenAI, ElevenLabs, Edge, Google, and Deepgram voices.</p><div class="flex items-center gap-1.5 pt-1"><button class="inline-flex cursor-pointer items-center justify-center rounded-[4px] border font-medium transition-[background,border-color,color,transform] duration-150 active:not-disabled:translate-y-px disabled:cursor-not-allowed disabled:opacity-60 [&_svg]:shrink-0 border-border bg-transparent text-foreground hover:border-primary/45 hover:bg-primary/15 min-h-8 px-2.5 py-1.5 h-7 text-xs gap-1.5" type="button"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-copy shrink-0 text-xs" aria-hidden="true"><rect width="14" height="14" x="8" y="8" rx="2" ry="2"></rect><path d="M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2"></path></svg>Copy link</button><button class="inline-flex cursor-pointer items-center justify-center rounded-[4px] border font-medium transition-[background,border-color,color,transform] duration-150 active:not-disabled:translate-y-px disabled:cursor-not-allowed disabled:opacity-60 [&_svg]:shrink-0 border-border bg-transparent text-foreground hover:border-primary/45 hover:bg-primary/15 min-h-8 px-2.5 py-1.5 h-7 text-xs gap-1.5" type="button"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-copy shrink-0 text-xs" aria-hidden="true"><rect width="14" height="14" x="8" y="8" rx="2" ry="2"></rect><path d="M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2"></path></svg>Use skill</button><a href="https://github.com/rickicode/axonrouter/blob/main/skills/axonrouter-tts/SKILL.md" target="_blank" rel="noreferrer" class="ml-auto"><button class="inline-flex cursor-pointer items-center justify-center rounded-[4px] border font-medium transition-[background,border-color,color,transform] duration-150 active:not-disabled:translate-y-px disabled:cursor-not-allowed disabled:opacity-60 [&_svg]:shrink-0 border-transparent bg-transparent hover:border-primary/45 hover:bg-primary/15 min-h-8 px-2.5 py-1.5 h-7 text-xs gap-1 text-muted-foreground hover:text-foreground" type="button"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-arrow-right shrink-0 text-xs" aria-hidden="true"><path d="M5 12h14"></path><path d="m12 5 7 7-7 7"></path></svg>Source</button></a></div></div></div><div class="rounded-[4px] border border-border bg-card text-card-foreground group transition-shadow hover:shadow-md"><div class="p-4 space-y-3"><div class="flex items-start gap-3"><div class="size-10 rounded-lg flex items-center justify-center shrink-0 text-lg bg-muted">🎙️</div><div class="min-w-0 flex-1"><div class="flex items-center gap-2 flex-wrap"><h3 class="text-sm font-bold text-foreground truncate">Speech-to-Text</h3></div><code class="text-[11px] text-muted-foreground font-mono">/v1/audio/transcriptions</code></div></div><p class="text-xs text-muted-foreground leading-relaxed line-clamp-2">Transcribe audio via OpenAI Whisper, Groq, Gemini, Deepgram, AssemblyAI, and more.</p><div class="flex items-center gap-1.5 pt-1"><button class="inline-flex cursor-pointer items-center justify-center rounded-[4px] border font-medium transition-[background,border-color,color,transform] duration-150 active:not-disabled:translate-y-px disabled:cursor-not-allowed disabled:opacity-60 [&_svg]:shrink-0 border-border bg-transparent text-foreground hover:border-primary/45 hover:bg-primary/15 min-h-8 px-2.5 py-1.5 h-7 text-xs gap-1.5" type="button"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-copy shrink-0 text-xs" aria-hidden="true"><rect width="14" height="14" x="8" y="8" rx="2" ry="2"></rect><path d="M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2"></path></svg>Copy link</button><button class="inline-flex cursor-pointer items-center justify-center rounded-[4px] border font-medium transition-[background,border-color,color,transform] duration-150 active:not-disabled:translate-y-px disabled:cursor-not-allowed disabled:opacity-60 [&_svg]:shrink-0 border-border bg-transparent text-foreground hover:border-primary/45 hover:bg-primary/15 min-h-8 px-2.5 py-1.5 h-7 text-xs gap-1.5" type="button"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-copy shrink-0 text-xs" aria-hidden="true"><rect width="14" height="14" x="8" y="8" rx="2" ry="2"></rect><path d="M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2"></path></svg>Use skill</button><a href="https://github.com/rickicode/axonrouter/blob/main/skills/axonrouter-stt/SKILL.md" target="_blank" rel="noreferrer" class="ml-auto"><button class="inline-flex cursor-pointer items-center justify-center rounded-[4px] border font-medium transition-[background,border-color,color,transform] duration-150 active:not-disabled:translate-y-px disabled:cursor-not-allowed disabled:opacity-60 [&_svg]:shrink-0 border-transparent bg-transparent hover:border-primary/45 hover:bg-primary/15 min-h-8 px-2.5 py-1.5 h-7 text-xs gap-1 text-muted-foreground hover:text-foreground" type="button"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-arrow-right shrink-0 text-xs" aria-hidden="true"><path d="M5 12h14"></path><path d="m12 5 7 7-7 7"></path></svg>Source</button></a></div></div></div><div class="rounded-[4px] border border-border bg-card text-card-foreground group transition-shadow hover:shadow-md"><div class="p-4 space-y-3"><div class="flex items-start gap-3"><div class="size-10 rounded-lg flex items-center justify-center shrink-0 text-lg bg-muted">📐</div><div class="min-w-0 flex-1"><div class="flex items-center gap-2 flex-wrap"><h3 class="text-sm font-bold text-foreground truncate">Embeddings</h3></div><code class="text-[11px] text-muted-foreground font-mono">/v1/embeddings</code></div></div><p class="text-xs text-muted-foreground leading-relaxed line-clamp-2">Vectors for RAG and semantic search via OpenAI, Gemini, Mistral, and others.</p><div class="flex items-center gap-1.5 pt-1"><button class="inline-flex cursor-pointer items-center justify-center rounded-[4px] border font-medium transition-[background,border-color,color,transform] duration-150 active:not-disabled:translate-y-px disabled:cursor-not-allowed disabled:opacity-60 [&_svg]:shrink-0 border-border bg-transparent text-foreground hover:border-primary/45 hover:bg-primary/15 min-h-8 px-2.5 py-1.5 h-7 text-xs gap-1.5" type="button"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-copy shrink-0 text-xs" aria-hidden="true"><rect width="14" height="14" x="8" y="8" rx="2" ry="2"></rect><path d="M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2"></path></svg>Copy link</button><button class="inline-flex cursor-pointer items-center justify-center rounded-[4px] border font-medium transition-[background,border-color,color,transform] duration-150 active:not-disabled:translate-y-px disabled:cursor-not-allowed disabled:opacity-60 [&_svg]:shrink-0 border-border bg-transparent text-foreground hover:border-primary/45 hover:bg-primary/15 min-h-8 px-2.5 py-1.5 h-7 text-xs gap-1.5" type="button"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-copy shrink-0 text-xs" aria-hidden="true"><rect width="14" height="14" x="8" y="8" rx="2" ry="2"></rect><path d="M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2"></path></svg>Use skill</button><a href="https://github.com/rickicode/axonrouter/blob/main/skills/axonrouter-embeddings/SKILL.md" target="_blank" rel="noreferrer" class="ml-auto"><button class="inline-flex cursor-pointer items-center justify-center rounded-[4px] border font-medium transition-[background,border-color,color,transform] duration-150 active:not-disabled:translate-y-px disabled:cursor-not-allowed disabled:opacity-60 [&_svg]:shrink-0 border-transparent bg-transparent hover:border-primary/45 hover:bg-primary/15 min-h-8 px-2.5 py-1.5 h-7 text-xs gap-1 text-muted-foreground hover:text-foreground" type="button"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-arrow-right shrink-0 text-xs" aria-hidden="true"><path d="M5 12h14"></path><path d="m12 5 7 7-7 7"></path></svg>Source</button></a></div></div></div><div class="rounded-[4px] border border-border bg-card text-card-foreground group transition-shadow hover:shadow-md"><div class="p-4 space-y-3"><div class="flex items-start gap-3"><div class="size-10 rounded-lg flex items-center justify-center shrink-0 text-lg bg-muted">🔍</div><div class="min-w-0 flex-1"><div class="flex items-center gap-2 flex-wrap"><h3 class="text-sm font-bold text-foreground truncate">Web Search</h3></div><code class="text-[11px] text-muted-foreground font-mono">/v1/search</code></div></div><p class="text-xs text-muted-foreground leading-relaxed line-clamp-2">Search via Tavily, Exa, Brave, Serper, SearXNG, and related providers.</p><div class="flex items-center gap-1.5 pt-1"><button class="inline-flex cursor-pointer items-center justify-center rounded-[4px] border font-medium transition-[background,border-color,color,transform] duration-150 active:not-disabled:translate-y-px disabled:cursor-not-allowed disabled:opacity-60 [&_svg]:shrink-0 border-border bg-transparent text-foreground hover:border-primary/45 hover:bg-primary/15 min-h-8 px-2.5 py-1.5 h-7 text-xs gap-1.5" type="button"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-copy shrink-0 text-xs" aria-hidden="true"><rect width="14" height="14" x="8" y="8" rx="2" ry="2"></rect><path d="M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2"></path></svg>Copy link</button><button class="inline-flex cursor-pointer items-center justify-center rounded-[4px] border font-medium transition-[background,border-color,color,transform] duration-150 active:not-disabled:translate-y-px disabled:cursor-not-allowed disabled:opacity-60 [&_svg]:shrink-0 border-border bg-transparent text-foreground hover:border-primary/45 hover:bg-primary/15 min-h-8 px-2.5 py-1.5 h-7 text-xs gap-1.5" type="button"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-copy shrink-0 text-xs" aria-hidden="true"><rect width="14" height="14" x="8" y="8" rx="2" ry="2"></rect><path d="M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2"></path></svg>Use skill</button><a href="https://github.com/rickicode/axonrouter/blob/main/skills/axonrouter-web-search/SKILL.md" target="_blank" rel="noreferrer" class="ml-auto"><button class="inline-flex cursor-pointer items-center justify-center rounded-[4px] border font-medium transition-[background,border-color,color,transform] duration-150 active:not-disabled:translate-y-px disabled:cursor-not-allowed disabled:opacity-60 [&_svg]:shrink-0 border-transparent bg-transparent hover:border-primary/45 hover:bg-primary/15 min-h-8 px-2.5 py-1.5 h-7 text-xs gap-1 text-muted-foreground hover:text-foreground" type="button"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-arrow-right shrink-0 text-xs" aria-hidden="true"><path d="M5 12h14"></path><path d="m12 5 7 7-7 7"></path></svg>Source</button></a></div></div></div><div class="rounded-[4px] border border-border bg-card text-card-foreground group transition-shadow hover:shadow-md"><div class="p-4 space-y-3"><div class="flex items-start gap-3"><div class="size-10 rounded-lg flex items-center justify-center shrink-0 text-lg bg-muted">🌐</div><div class="min-w-0 flex-1"><div class="flex items-center gap-2 flex-wrap"><h3 class="text-sm font-bold text-foreground truncate">Web Fetch</h3></div><code class="text-[11px] text-muted-foreground font-mono">/v1/web/fetch</code></div></div><p class="text-xs text-muted-foreground leading-relaxed line-clamp-2">Fetch URL content as markdown/text/HTML via Firecrawl, Jina, Tavily, and Exa.</p><div class="flex items-center gap-1.5 pt-1"><button class="inline-flex cursor-pointer items-center justify-center rounded-[4px] border font-medium transition-[background,border-color,color,transform] duration-150 active:not-disabled:translate-y-px disabled:cursor-not-allowed disabled:opacity-60 [&_svg]:shrink-0 border-border bg-transparent text-foreground hover:border-primary/45 hover:bg-primary/15 min-h-8 px-2.5 py-1.5 h-7 text-xs gap-1.5" type="button"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-copy shrink-0 text-xs" aria-hidden="true"><rect width="14" height="14" x="8" y="8" rx="2" ry="2"></rect><path d="M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2"></path></svg>Copy link</button><button class="inline-flex cursor-pointer items-center justify-center rounded-[4px] border font-medium transition-[background,border-color,color,transform] duration-150 active:not-disabled:translate-y-px disabled:cursor-not-allowed disabled:opacity-60 [&_svg]:shrink-0 border-border bg-transparent text-foreground hover:border-primary/45 hover:bg-primary/15 min-h-8 px-2.5 py-1.5 h-7 text-xs gap-1.5" type="button"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-copy shrink-0 text-xs" aria-hidden="true"><rect width="14" height="14" x="8" y="8" rx="2" ry="2"></rect><path d="M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2"></path></svg>Use skill</button><a href="https://github.com/rickicode/axonrouter/blob/main/skills/axonrouter-web-fetch/SKILL.md" target="_blank" rel="noreferrer" class="ml-auto"><button class="inline-flex cursor-pointer items-center justify-center rounded-[4px] border font-medium transition-[background,border-color,color,transform] duration-150 active:not-disabled:translate-y-px disabled:cursor-not-allowed disabled:opacity-60 [&_svg]:shrink-0 border-transparent bg-transparent hover:border-primary/45 hover:bg-primary/15 min-h-8 px-2.5 py-1.5 h-7 text-xs gap-1 text-muted-foreground hover:text-foreground" type="button"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-arrow-right shrink-0 text-xs" aria-hidden="true"><path d="M5 12h14"></path><path d="m12 5 7 7-7 7"></path></svg>Source</button></a></div></div></div></div></div><!--$--><!--/$--></div><script>$RB=[];$RV=function(a){$RT=performance.now();for(var b=0;b<a.length;b+=2){var c=a[b],e=a[b+1];null!==e.parentNode&&e.parentNode.removeChild(e);var f=c.parentNode;if(f){var g=c.previousSibling,h=0;do{if(c&&8===c.nodeType){var d=c.data;if("/$"===d||"/&"===d)if(0===h)break;else h--;else"$"!==d&&"$?"!==d&&"$~"!==d&&"$!"!==d&&"&"!==d||h++}d=c.nextSibling;f.removeChild(c);c=d}while(c);for(;e.firstChild;)f.insertBefore(e.firstChild,c);g.data="$";g._reactRetry&&requestAnimationFrame(g._reactRetry)}}a.length=0};
|
|
2
|
-
$RC=function(a,b){if(b=document.getElementById(b))(a=document.getElementById(a))?(a.previousSibling.data="$~",$RB.push(a,b),2===$RB.length&&("number"!==typeof $RT?requestAnimationFrame($RV.bind(null,$RB)):(a=performance.now(),setTimeout($RV.bind(null,$RB),2300>a&&2E3<a?2300-a:$RT+300-a)))):b.parentNode.removeChild(b)};$RC("B:0","S:0")</script><script>(self.__next_f=self.__next_f||[]).push([0])</script><script>self.__next_f.push([1,"1:\"$Sreact.fragment\"\n2:I[450222,[\"/_next/static/chunks/0r04.q6_-b836.js\",\"/_next/static/chunks/0i.l9589uvx0j.js\",\"/_next/static/chunks/0j3dsi52f1dl3.js\",\"/_next/static/chunks/0soxzgvx8maah.js\",\"/_next/static/chunks/056ne4nz_q~nb.js\",\"/_next/static/chunks/05030e9junrlf.js\",\"/_next/static/chunks/0v9isxr6.bcmz.js\",\"/_next/static/chunks/01x4hwms4_ema.js\",\"/_next/static/chunks/13cjgpm_agha_.js\",\"/_next/static/chunks/0vqox~1257tth.js\",\"/_next/static/chunks/03~wesrv2kvkm.js\",\"/_next/static/chunks/0_e~bfjzzxje8.js\",\"/_next/static/chunks/0tmytjpzpwssc.js\"],\"ThemeProvider\"]\n3:I[604988,[\"/_next/static/chunks/0r04.q6_-b836.js\",\"/_next/static/chunks/0i.l9589uvx0j.js\",\"/_next/static/chunks/0j3dsi52f1dl3.js\"],\"QueryProvider\"]\n4:I[730362,[\"/_next/static/chunks/0r04.q6_-b836.js\",\"/_next/static/chunks/0i.l9589uvx0j.js\",\"/_next/static/chunks/0j3dsi52f1dl3.js\"],\"RuntimeI18nProvider\"]\n5:I[339756,[\"/_next/static/chunks/0r04.q6_-b836.js\",\"/_next/static/chunks/0i.l9589uvx0j.js\",\"/_next/static/chunks/0j3dsi52f1dl3.js\"],\"default\"]\n6:I[837457,[\"/_next/static/chunks/0r04.q6_-b836.js\",\"/_next/static/chunks/0i.l9589uvx0j.js\",\"/_next/static/chunks/0j3dsi52f1dl3.js\"],\"default\"]\n7:I[165149,[\"/_next/static/chunks/0r04.q6_-b836.js\",\"/_next/static/chunks/0i.l9589uvx0j.js\",\"/_next/static/chunks/0j3dsi52f1dl3.js\",\"/_next/static/chunks/0soxzgvx8maah.js\",\"/_next/static/chunks/056ne4nz_q~nb.js\",\"/_next/static/chunks/05030e9junrlf.js\",\"/_next/static/chunks/0v9isxr6.bcmz.js\",\"/_next/static/chunks/01x4hwms4_ema.js\",\"/_next/static/chunks/13cjgpm_agha_.js\",\"/_next/static/chunks/0vqox~1257tth.js\",\"/_next/static/chunks/03~wesrv2kvkm.js\",\"/_next/static/chunks/0_e~bfjzzxje8.js\",\"/_next/static/chunks/0tmytjpzpwssc.js\"],\"default\"]\nf:I[168027,[\"/_next/static/chunks/0r04.q6_-b836.js\",\"/_next/static/chunks/0i.l9589uvx0j.js\",\"/_next/static/chunks/0j3dsi52f1dl3.js\"],\"default\",1]\n:HL[\"/_next/static/chunks/0pliq5cpnjsoh.css\",\"style\"]\n:HL[\"/_next/static/chunks/0lwx_b7jnm00z.css\",\"style\"]\n:HL[\"/_next/static/chunks/0jvmviuftg5e2.css\",\"style\"]\n:HL[\"https://fonts.googleapis.com/css2?family=Material+Symbols+Outlined:opsz,wght,FILL,GRAD@20..48,100..700,0..1,-50..200\u0026display=swap\",\"style\"]\n"])</script><script>self.__next_f.push([1,"0:{\"P\":null,\"c\":[\"\",\"dashboard\",\"skills\"],\"q\":\"\",\"i\":false,\"f\":[[[\"\",{\"children\":[\"(dashboard)\",{\"children\":[\"dashboard\",{\"children\":[\"skills\",{\"children\":[\"__PAGE__\",{}]}]},\"$undefined\",\"$undefined\",4]},\"$undefined\",\"$undefined\",8]},\"$undefined\",\"$undefined\",24],[[\"$\",\"$1\",\"c\",{\"children\":[[[\"$\",\"link\",\"0\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/chunks/0pliq5cpnjsoh.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}],[\"$\",\"link\",\"1\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/chunks/0lwx_b7jnm00z.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}],[\"$\",\"script\",\"script-0\",{\"src\":\"/_next/static/chunks/0r04.q6_-b836.js\",\"async\":true,\"nonce\":\"$undefined\"}],[\"$\",\"script\",\"script-1\",{\"src\":\"/_next/static/chunks/0i.l9589uvx0j.js\",\"async\":true,\"nonce\":\"$undefined\"}],[\"$\",\"script\",\"script-2\",{\"src\":\"/_next/static/chunks/0j3dsi52f1dl3.js\",\"async\":true,\"nonce\":\"$undefined\"}]],[\"$\",\"html\",null,{\"lang\":\"en\",\"suppressHydrationWarning\":true,\"children\":[[\"$\",\"head\",null,{\"children\":[[\"$\",\"link\",null,{\"rel\":\"preconnect\",\"href\":\"https://fonts.googleapis.com\"}],[\"$\",\"link\",null,{\"rel\":\"preconnect\",\"href\":\"https://fonts.gstatic.com\",\"crossOrigin\":\"anonymous\"}],[\"$\",\"link\",null,{\"rel\":\"preload\",\"href\":\"https://fonts.googleapis.com/css2?family=Material+Symbols+Outlined:opsz,wght,FILL,GRAD@20..48,100..700,0..1,-50..200\u0026display=swap\",\"as\":\"style\"}],[\"$\",\"link\",null,{\"href\":\"https://fonts.googleapis.com/css2?family=Material+Symbols+Outlined:opsz,wght,FILL,GRAD@20..48,100..700,0..1,-50..200\u0026display=swap\",\"rel\":\"stylesheet\"}]]}],[\"$\",\"body\",null,{\"children\":[\"$\",\"$L2\",null,{\"children\":[\"$\",\"$L3\",null,{\"children\":[\"$\",\"$L4\",null,{\"children\":[\"$\",\"$L5\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L6\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":[[[\"$\",\"title\",null,{\"children\":\"404: This page could not be found.\"}],[\"$\",\"div\",null,{\"style\":{\"fontFamily\":\"system-ui,\\\"Segoe UI\\\",Roboto,Helvetica,Arial,sans-serif,\\\"Apple Color Emoji\\\",\\\"Segoe UI Emoji\\\"\",\"height\":\"100vh\",\"textAlign\":\"center\",\"display\":\"flex\",\"flexDirection\":\"column\",\"alignItems\":\"center\",\"justifyContent\":\"center\"},\"children\":[\"$\",\"div\",null,{\"children\":[[\"$\",\"style\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}\"}}],[\"$\",\"h1\",null,{\"className\":\"next-error-h1\",\"style\":{\"display\":\"inline-block\",\"margin\":\"0 20px 0 0\",\"padding\":\"0 23px 0 0\",\"fontSize\":24,\"fontWeight\":500,\"verticalAlign\":\"top\",\"lineHeight\":\"49px\"},\"children\":404}],[\"$\",\"div\",null,{\"style\":{\"display\":\"inline-block\"},\"children\":[\"$\",\"h2\",null,{\"style\":{\"fontSize\":14,\"fontWeight\":400,\"lineHeight\":\"49px\",\"margin\":0},\"children\":\"This page could not be found.\"}]}]]}]}]],[]],\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]}]}]}]}]]}]]}],{\"children\":[[\"$\",\"$1\",\"c\",{\"children\":[[[\"$\",\"link\",\"0\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/chunks/0jvmviuftg5e2.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}],[\"$\",\"script\",\"script-0\",{\"src\":\"/_next/static/chunks/0soxzgvx8maah.js\",\"async\":true,\"nonce\":\"$undefined\"}],[\"$\",\"script\",\"script-1\",{\"src\":\"/_next/static/chunks/056ne4nz_q~nb.js\",\"async\":true,\"nonce\":\"$undefined\"}],[\"$\",\"script\",\"script-2\",{\"src\":\"/_next/static/chunks/05030e9junrlf.js\",\"async\":true,\"nonce\":\"$undefined\"}],[\"$\",\"script\",\"script-3\",{\"src\":\"/_next/static/chunks/0v9isxr6.bcmz.js\",\"async\":true,\"nonce\":\"$undefined\"}],[\"$\",\"script\",\"script-4\",{\"src\":\"/_next/static/chunks/01x4hwms4_ema.js\",\"async\":true,\"nonce\":\"$undefined\"}],[\"$\",\"script\",\"script-5\",{\"src\":\"/_next/static/chunks/13cjgpm_agha_.js\",\"async\":true,\"nonce\":\"$undefined\"}],[\"$\",\"script\",\"script-6\",{\"src\":\"/_next/static/chunks/0vqox~1257tth.js\",\"async\":true,\"nonce\":\"$undefined\"}],[\"$\",\"script\",\"script-7\",{\"src\":\"/_next/static/chunks/03~wesrv2kvkm.js\",\"async\":true,\"nonce\":\"$undefined\"}],[\"$\",\"script\",\"script-8\",{\"src\":\"/_next/static/chunks/0_e~bfjzzxje8.js\",\"async\":true,\"nonce\":\"$undefined\"}],[\"$\",\"script\",\"script-9\",{\"src\":\"/_next/static/chunks/0tmytjpzpwssc.js\",\"async\":true,\"nonce\":\"$undefined\"}]],[\"$\",\"$L7\",null,{\"children\":[\"$\",\"$L5\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L6\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":[[[\"$\",\"title\",null,{\"children\":\"404: This page could not be found.\"}],[\"$\",\"div\",null,{\"style\":\"$0:f:0:1:0:props:children:1:props:children:1:props:children:props:children:props:children:props:children:props:notFound:0:1:props:style\",\"children\":[\"$\",\"div\",null,{\"children\":[[\"$\",\"style\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}\"}}],\"$L8\",\"$L9\"]}]}]],[]],\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]}]]}],{\"children\":[\"$La\",{\"children\":[\"$Lb\",{\"children\":[\"$Lc\",{},null,false,null]},null,false,\"$@d\"]},null,false,\"$@d\"]},null,false,null]},null,false,null],\"$Le\",false]],\"m\":\"$undefined\",\"G\":[\"$f\",[\"$L10\",\"$L11\"]],\"S\":true,\"h\":null,\"s\":\"$undefined\",\"l\":\"$undefined\",\"p\":\"$undefined\",\"d\":\"$undefined\",\"b\":\"1OftkhB-3E-8qEDLWcuTe\"}\n"])</script><script>self.__next_f.push([1,"12:I[339756,[\"/_next/static/chunks/0r04.q6_-b836.js\",\"/_next/static/chunks/0i.l9589uvx0j.js\",\"/_next/static/chunks/0j3dsi52f1dl3.js\"],\"LoadingBoundaryProvider\"]\n13:I[347257,[\"/_next/static/chunks/0r04.q6_-b836.js\",\"/_next/static/chunks/0i.l9589uvx0j.js\",\"/_next/static/chunks/0j3dsi52f1dl3.js\"],\"ClientPageRoot\"]\n14:I[251718,[\"/_next/static/chunks/0r04.q6_-b836.js\",\"/_next/static/chunks/0i.l9589uvx0j.js\",\"/_next/static/chunks/0j3dsi52f1dl3.js\",\"/_next/static/chunks/0soxzgvx8maah.js\",\"/_next/static/chunks/056ne4nz_q~nb.js\",\"/_next/static/chunks/05030e9junrlf.js\",\"/_next/static/chunks/0v9isxr6.bcmz.js\",\"/_next/static/chunks/01x4hwms4_ema.js\",\"/_next/static/chunks/13cjgpm_agha_.js\",\"/_next/static/chunks/0vqox~1257tth.js\",\"/_next/static/chunks/03~wesrv2kvkm.js\",\"/_next/static/chunks/0_e~bfjzzxje8.js\",\"/_next/static/chunks/0tmytjpzpwssc.js\",\"/_next/static/chunks/0v8acd5buc5xi.js\"],\"default\"]\n17:I[897367,[\"/_next/static/chunks/0r04.q6_-b836.js\",\"/_next/static/chunks/0i.l9589uvx0j.js\",\"/_next/static/chunks/0j3dsi52f1dl3.js\"],\"OutletBoundary\"]\n18:\"$Sreact.suspense\"\n1b:I[897367,[\"/_next/static/chunks/0r04.q6_-b836.js\",\"/_next/static/chunks/0i.l9589uvx0j.js\",\"/_next/static/chunks/0j3dsi52f1dl3.js\"],\"ViewportBoundary\"]\n1d:I[897367,[\"/_next/static/chunks/0r04.q6_-b836.js\",\"/_next/static/chunks/0i.l9589uvx0j.js\",\"/_next/static/chunks/0j3dsi52f1dl3.js\"],\"MetadataBoundary\"]\n8:[\"$\",\"h1\",null,{\"className\":\"next-error-h1\",\"style\":\"$0:f:0:1:0:props:children:1:props:children:1:props:children:props:children:props:children:props:children:props:notFound:0:1:props:children:props:children:1:props:style\",\"children\":404}]\n9:[\"$\",\"div\",null,{\"style\":\"$0:f:0:1:0:props:children:1:props:children:1:props:children:props:children:props:children:props:children:props:notFound:0:1:props:children:props:children:2:props:style\",\"children\":[\"$\",\"h2\",null,{\"style\":\"$0:f:0:1:0:props:children:1:props:children:1:props:children:props:children:props:children:props:children:props:notFound:0:1:props:children:props:children:2:props:children:props:style\",\"children\":\"This page could not be found.\"}]}]\n"])</script><script>self.__next_f.push([1,"a:[\"$\",\"$L12\",null,{\"loading\":[[\"$\",\"div\",\"l\",{\"className\":\"flex flex-col gap-6 p-6 lg:p-10\",\"children\":[[\"$\",\"div\",null,{\"className\":\"grid gap-4 md:grid-cols-3\",\"children\":[[\"$\",\"div\",\"0\",{\"className\":\"rounded-[4px] border border-border bg-card p-5\",\"children\":[[\"$\",\"div\",null,{\"className\":\"animate-pulse rounded-[4px] bg-foreground/10 mb-4 h-4 w-24\"}],[\"$\",\"div\",null,{\"className\":\"animate-pulse rounded-[4px] bg-foreground/10 h-8 w-20\"}]]}],[\"$\",\"div\",\"1\",{\"className\":\"rounded-[4px] border border-border bg-card p-5\",\"children\":[[\"$\",\"div\",null,{\"className\":\"animate-pulse rounded-[4px] bg-foreground/10 mb-4 h-4 w-24\"}],[\"$\",\"div\",null,{\"className\":\"animate-pulse rounded-[4px] bg-foreground/10 h-8 w-20\"}]]}],[\"$\",\"div\",\"2\",{\"className\":\"rounded-[4px] border border-border bg-card p-5\",\"children\":[[\"$\",\"div\",null,{\"className\":\"animate-pulse rounded-[4px] bg-foreground/10 mb-4 h-4 w-24\"}],[\"$\",\"div\",null,{\"className\":\"animate-pulse rounded-[4px] bg-foreground/10 h-8 w-20\"}]]}]]}],[\"$\",\"div\",null,{\"className\":\"grid gap-6 xl:grid-cols-[1.5fr_1fr]\",\"children\":[[\"$\",\"div\",null,{\"className\":\"rounded-[4px] border border-border bg-card p-6\",\"children\":[[\"$\",\"div\",null,{\"className\":\"animate-pulse rounded-[4px] bg-foreground/10 mb-5 h-5 w-48\"}],[\"$\",\"div\",null,{\"className\":\"space-y-3\",\"children\":[[\"$\",\"div\",\"0\",{\"className\":\"animate-pulse rounded-[4px] bg-foreground/10 h-12 w-full\"}],[\"$\",\"div\",\"1\",{\"className\":\"animate-pulse rounded-[4px] bg-foreground/10 h-12 w-full\"}],[\"$\",\"div\",\"2\",{\"className\":\"animate-pulse rounded-[4px] bg-foreground/10 h-12 w-full\"}],[\"$\",\"div\",\"3\",{\"className\":\"animate-pulse rounded-[4px] bg-foreground/10 h-12 w-full\"}],[\"$\",\"div\",\"4\",{\"className\":\"animate-pulse rounded-[4px] bg-foreground/10 h-12 w-full\"}]]}]]}],[\"$\",\"div\",null,{\"className\":\"rounded-[4px] border border-border bg-card p-6\",\"children\":[[\"$\",\"div\",null,{\"className\":\"animate-pulse rounded-[4px] bg-foreground/10 mb-5 h-5 w-32\"}],[\"$\",\"div\",null,{\"className\":\"space-y-4\",\"children\":[[\"$\",\"div\",\"0\",{\"className\":\"space-y-2\",\"children\":[[\"$\",\"div\",null,{\"className\":\"animate-pulse rounded-[4px] bg-foreground/10 h-3 w-20\"}],[\"$\",\"div\",null,{\"className\":\"animate-pulse rounded-[4px] bg-foreground/10 h-10 w-full\"}]]}],[\"$\",\"div\",\"1\",{\"className\":\"space-y-2\",\"children\":[[\"$\",\"div\",null,{\"className\":\"animate-pulse rounded-[4px] bg-foreground/10 h-3 w-20\"}],[\"$\",\"div\",null,{\"className\":\"animate-pulse rounded-[4px] bg-foreground/10 h-10 w-full\"}]]}],[\"$\",\"div\",\"2\",{\"className\":\"space-y-2\",\"children\":[[\"$\",\"div\",null,{\"className\":\"animate-pulse rounded-[4px] bg-foreground/10 h-3 w-20\"}],[\"$\",\"div\",null,{\"className\":\"animate-pulse rounded-[4px] bg-foreground/10 h-10 w-full\"}]]}],[\"$\",\"div\",\"3\",{\"className\":\"space-y-2\",\"children\":[[\"$\",\"div\",null,{\"className\":\"animate-pulse rounded-[4px] bg-foreground/10 h-3 w-20\"}],[\"$\",\"div\",null,{\"className\":\"animate-pulse rounded-[4px] bg-foreground/10 h-10 w-full\"}]]}]]}]]}]]}]]}],[],[]],\"children\":[\"$\",\"$1\",\"c\",{\"children\":[null,[\"$\",\"$L5\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L6\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":\"$undefined\",\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]]}]}]\n"])</script><script>self.__next_f.push([1,"b:[\"$\",\"$1\",\"c\",{\"children\":[null,[\"$\",\"$L5\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L6\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":\"$undefined\",\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]]}]\nc:[\"$\",\"$1\",\"c\",{\"children\":[[\"$\",\"$L13\",null,{\"Component\":\"$14\",\"serverProvidedParams\":{\"searchParams\":{},\"params\":{},\"promises\":[\"$@15\",\"$@16\"]}}],[[\"$\",\"script\",\"script-0\",{\"src\":\"/_next/static/chunks/0v8acd5buc5xi.js\",\"async\":true,\"nonce\":\"$undefined\"}]],[\"$\",\"$L17\",null,{\"children\":[\"$\",\"$18\",null,{\"name\":\"Next.MetadataOutlet\",\"children\":\"$@19\"}]}]]}]\n1a:[]\nd:\"$W1a\"\ne:[\"$\",\"$1\",\"h\",{\"children\":[null,[\"$\",\"$L1b\",null,{\"children\":\"$L1c\"}],[\"$\",\"div\",null,{\"hidden\":true,\"children\":[\"$\",\"$L1d\",null,{\"children\":[\"$\",\"$18\",null,{\"name\":\"Next.Metadata\",\"children\":\"$L1e\"}]}]}],null]}]\n10:[\"$\",\"link\",\"0\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/chunks/0pliq5cpnjsoh.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}]\n11:[\"$\",\"link\",\"1\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/chunks/0lwx_b7jnm00z.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}]\n"])</script><script>self.__next_f.push([1,"15:{}\n16:\"$c:props:children:0:props:serverProvidedParams:params\"\n"])</script><script>self.__next_f.push([1,"1c:[[\"$\",\"meta\",\"0\",{\"charSet\":\"utf-8\"}],[\"$\",\"meta\",\"1\",{\"name\":\"viewport\",\"content\":\"width=device-width, initial-scale=1\"}],[\"$\",\"meta\",\"2\",{\"name\":\"theme-color\",\"content\":\"#201d1d\"}]]\n"])</script><script>self.__next_f.push([1,"1f:I[27201,[\"/_next/static/chunks/0r04.q6_-b836.js\",\"/_next/static/chunks/0i.l9589uvx0j.js\",\"/_next/static/chunks/0j3dsi52f1dl3.js\"],\"IconMark\"]\n19:null\n1e:[[\"$\",\"title\",\"0\",{\"children\":\"Dashboard - AxonRouter\"}],[\"$\",\"meta\",\"1\",{\"name\":\"description\",\"content\":\"One endpoint for all your AI providers. Manage keys, monitor usage, and scale effortlessly.\"}],[\"$\",\"link\",\"2\",{\"rel\":\"manifest\",\"href\":\"/manifest.webmanifest\",\"crossOrigin\":\"$undefined\"}],[\"$\",\"link\",\"3\",{\"rel\":\"icon\",\"href\":\"/favicon.ico?favicon.0x3dzn~oxb6tn.ico\",\"sizes\":\"256x256\",\"type\":\"image/x-icon\"}],[\"$\",\"link\",\"4\",{\"rel\":\"icon\",\"href\":\"/favicon.svg\"}],[\"$\",\"$L1f\",\"5\",{}]]\n"])</script></body></html>
|
|
1
|
+
<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="stylesheet" href="/_next/static/chunks/0chvw-cg-07m9.css" data-precedence="next"/><link rel="stylesheet" href="/_next/static/chunks/0lwx_b7jnm00z.css" data-precedence="next"/><link rel="stylesheet" href="/_next/static/chunks/0jvmviuftg5e2.css" data-precedence="next"/><link rel="preload" as="script" fetchPriority="low" href="/_next/static/chunks/0-hrh_uw98wb_.js"/><script src="/_next/static/chunks/0~.5axwm.yvwi.js" async=""></script><script src="/_next/static/chunks/0aqpm5mabssqz.js" async=""></script><script src="/_next/static/chunks/0uqgm3y7qfyr6.js" async=""></script><script src="/_next/static/chunks/04.i-__.as.dk.js" async=""></script><script src="/_next/static/chunks/turbopack-13pmlys43xfz..js" async=""></script><script src="/_next/static/chunks/0r04.q6_-b836.js" async=""></script><script src="/_next/static/chunks/0i.l9589uvx0j.js" async=""></script><script src="/_next/static/chunks/0j3dsi52f1dl3.js" async=""></script><script src="/_next/static/chunks/0soxzgvx8maah.js" async=""></script><script src="/_next/static/chunks/056ne4nz_q~nb.js" async=""></script><script src="/_next/static/chunks/05030e9junrlf.js" async=""></script><script src="/_next/static/chunks/0v9isxr6.bcmz.js" async=""></script><script src="/_next/static/chunks/07c6k_1f5h-sr.js" async=""></script><script src="/_next/static/chunks/13cjgpm_agha_.js" async=""></script><script src="/_next/static/chunks/0vqox~1257tth.js" async=""></script><script src="/_next/static/chunks/03~wesrv2kvkm.js" async=""></script><script src="/_next/static/chunks/0_e~bfjzzxje8.js" async=""></script><script src="/_next/static/chunks/10xuig64fgu6..js" async=""></script><script src="/_next/static/chunks/0v8acd5buc5xi.js" async=""></script><link rel="preload" href="https://fonts.googleapis.com/css2?family=Material+Symbols+Outlined:opsz,wght,FILL,GRAD@20..48,100..700,0..1,-50..200&display=swap" as="style"/><link rel="preconnect" href="https://fonts.googleapis.com"/><link rel="preconnect" href="https://fonts.gstatic.com" crossorigin="anonymous"/><link rel="preload" href="https://fonts.googleapis.com/css2?family=Material+Symbols+Outlined:opsz,wght,FILL,GRAD@20..48,100..700,0..1,-50..200&display=swap" as="style"/><meta name="theme-color" content="#201d1d"/><title>Dashboard - AxonRouter</title><meta name="description" content="One endpoint for all your AI providers. Manage keys, monitor usage, and scale effortlessly."/><link rel="manifest" href="/manifest.webmanifest"/><link rel="icon" href="/favicon.ico?favicon.0x3dzn~oxb6tn.ico" sizes="256x256" type="image/x-icon"/><link rel="icon" href="/favicon.svg"/><link href="https://fonts.googleapis.com/css2?family=Material+Symbols+Outlined:opsz,wght,FILL,GRAD@20..48,100..700,0..1,-50..200&display=swap" rel="stylesheet"/><script src="/_next/static/chunks/03~yq9q893hmn.js" noModule=""></script></head><body><div hidden=""><!--$--><!--/$--></div><div data-slot="sidebar-wrapper" style="--sidebar-width:18rem;--sidebar-width-icon:3rem" class="group/sidebar-wrapper flex min-h-svh w-full has-data-[variant=inset]:bg-sidebar rr-dark-shell"><div class="fixed right-5 top-5 z-80 flex w-[min(92vw,400px)] flex-col gap-3"></div><div class="group peer hidden text-sidebar-foreground md:block" data-state="expanded" data-collapsible="" data-variant="sidebar" data-side="left" data-slot="sidebar"><div data-slot="sidebar-gap" class="relative w-(--sidebar-width) bg-transparent transition-[width] duration-200 ease-linear group-data-[collapsible=offcanvas]:w-0 group-data-[side=right]:rotate-180 group-data-[collapsible=icon]:w-(--sidebar-width-icon)"></div><div data-slot="sidebar-container" data-side="left" class="fixed inset-y-0 z-10 hidden h-svh w-(--sidebar-width) transition-[left,right,width] duration-200 ease-linear data-[side=left]:left-0 data-[side=left]:group-data-[collapsible=offcanvas]:left-[calc(var(--sidebar-width)*-1)] data-[side=right]:right-0 data-[side=right]:group-data-[collapsible=offcanvas]:right-[calc(var(--sidebar-width)*-1)] md:flex group-data-[collapsible=icon]:w-(--sidebar-width-icon) group-data-[side=left]:border-r group-data-[side=right]:border-l border-sidebar-border/80 text-sidebar-foreground [&_[data-sidebar=sidebar-inner]]:bg-[radial-gradient(circle_at_50%_0%,color-mix(in_srgb,var(--sidebar-primary)_20%,transparent),transparent_30%),linear-gradient(180deg,color-mix(in_srgb,var(--sidebar)_88%,var(--sidebar-primary)_12%),var(--sidebar)_42%)]"><div data-sidebar="sidebar" data-slot="sidebar-inner" class="flex size-full flex-col bg-sidebar group-data-[variant=floating]:rounded-lg group-data-[variant=floating]:shadow-sm group-data-[variant=floating]:ring-1 group-data-[variant=floating]:ring-sidebar-border"><div data-slot="sidebar-header" data-sidebar="header" class="flex flex-col gap-2 p-2 px-3 pb-3 pt-3"><ul data-slot="sidebar-menu" data-sidebar="menu" class="flex w-full min-w-0 flex-col gap-0"><li data-slot="sidebar-menu-item" data-sidebar="menu-item" class="group/menu-item relative"><div class="flex h-16 items-center gap-3 rounded-xl border border-sidebar-border/80 bg-sidebar-accent/55 px-2.5 text-sidebar-foreground shadow-[0_14px_34px_rgba(0,0,0,0.22)] group-data-[collapsible=icon]:h-11 group-data-[collapsible=icon]:justify-center group-data-[collapsible=icon]:px-1.5"><a aria-label="AxonRouter dashboard" class="grid size-10 shrink-0 place-items-center group-data-[collapsible=icon]:size-8" href="/dashboard"><img alt="AxonRouter" loading="lazy" width="32" height="32" decoding="async" data-nimg="1" class="size-8 object-contain group-data-[collapsible=icon]:size-7" style="color:transparent" src="/axonrouter-logo.svg"/></a><div class="grid min-w-0 flex-1 text-left leading-tight group-data-[collapsible=icon]:hidden"><span class="truncate text-[15px] font-semibold tracking-[-0.02em]">AxonRouter</span><span class="mt-0.5 truncate text-[10px] font-semibold uppercase tracking-[0.18em] text-sidebar-primary">Local Router</span></div><span class="rounded-md border border-sidebar-border/70 bg-sidebar/70 px-1.5 py-0.5 text-[10px] font-semibold uppercase tracking-[0.14em] text-sidebar-foreground/55 group-data-[collapsible=icon]:hidden">Core</span></div></li></ul></div><div data-slot="sidebar-content" data-sidebar="content" class="no-scrollbar flex min-h-0 flex-1 flex-col gap-0 overflow-auto group-data-[collapsible=icon]:overflow-hidden px-3 py-2" aria-label="Dashboard navigation"><div class="flex flex-col gap-5"><div data-slot="sidebar-group" data-sidebar="group" class="relative flex w-full min-w-0 flex-col p-2 px-0 py-0"><div data-slot="sidebar-group-label" data-sidebar="group-label" class="flex shrink-0 items-center rounded-md ring-sidebar-ring outline-hidden transition-[margin,opacity] duration-200 ease-linear group-data-[collapsible=icon]:-mt-8 group-data-[collapsible=icon]:opacity-0 focus-visible:ring-2 [&>svg]:size-4 [&>svg]:shrink-0 h-7 px-2 text-[10px] font-semibold uppercase tracking-[0.18em] text-sidebar-foreground/40">Platform</div><div data-slot="sidebar-group-content" data-sidebar="group-content" class="w-full text-sm"><ul data-slot="sidebar-menu" data-sidebar="menu" class="flex w-full min-w-0 flex-col gap-1.5"><li data-slot="sidebar-menu-item" data-sidebar="menu-item" class="group/menu-item relative"><a data-slot="sidebar-menu-button" data-sidebar="menu-button" data-size="default" data-active="false" class="peer/menu-button group/menu-button flex w-full items-center gap-2 overflow-hidden p-2 text-left ring-sidebar-ring outline-hidden group-has-data-[sidebar=menu-action]/menu-item:pr-8 group-data-[collapsible=icon]:size-8! group-data-[collapsible=icon]:p-2! focus-visible:ring-2 active:bg-sidebar-accent active:text-sidebar-accent-foreground disabled:pointer-events-none disabled:opacity-50 aria-disabled:pointer-events-none aria-disabled:opacity-50 data-open:hover:bg-sidebar-accent data-open:hover:text-sidebar-accent-foreground data-active:bg-sidebar-accent data-active:font-medium data-active:text-sidebar-accent-foreground [&_svg]:size-4 [&_svg]:shrink-0 [&>span:last-child]:truncate hover:bg-sidebar-accent relative h-9 rounded-lg !bg-transparent px-2 text-sm font-medium text-sidebar-foreground/78 shadow-none transition-colors before:absolute before:left-0 before:top-1/2 before:h-4 before:w-0.5 before:-translate-y-1/2 before:rounded-full before:bg-sidebar-primary before:opacity-0 before:transition-opacity hover:!bg-sidebar-accent/70 hover:text-sidebar-foreground data-[active=true]:!bg-sidebar-accent data-[active=true]:text-sidebar-accent-foreground data-[active=true]:before:opacity-100 [&>svg]:text-sidebar-foreground/60 hover:[&>svg]:text-sidebar-foreground data-[active=true]:[&>svg]:text-sidebar-primary" data-state="closed" href="/dashboard/endpoint"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-app-window shrink-0" aria-hidden="true"><rect x="2" y="4" width="20" height="16" rx="2"></rect><path d="M10 4v4"></path><path d="M2 8h20"></path><path d="M6 4v4"></path></svg><span>Endpoint</span></a></li><li data-slot="sidebar-menu-item" data-sidebar="menu-item" class="group/menu-item relative"><a data-slot="sidebar-menu-button" data-sidebar="menu-button" data-size="default" data-active="false" class="peer/menu-button group/menu-button flex w-full items-center gap-2 overflow-hidden p-2 text-left ring-sidebar-ring outline-hidden group-has-data-[sidebar=menu-action]/menu-item:pr-8 group-data-[collapsible=icon]:size-8! group-data-[collapsible=icon]:p-2! focus-visible:ring-2 active:bg-sidebar-accent active:text-sidebar-accent-foreground disabled:pointer-events-none disabled:opacity-50 aria-disabled:pointer-events-none aria-disabled:opacity-50 data-open:hover:bg-sidebar-accent data-open:hover:text-sidebar-accent-foreground data-active:bg-sidebar-accent data-active:font-medium data-active:text-sidebar-accent-foreground [&_svg]:size-4 [&_svg]:shrink-0 [&>span:last-child]:truncate hover:bg-sidebar-accent relative h-9 rounded-lg !bg-transparent px-2 text-sm font-medium text-sidebar-foreground/78 shadow-none transition-colors before:absolute before:left-0 before:top-1/2 before:h-4 before:w-0.5 before:-translate-y-1/2 before:rounded-full before:bg-sidebar-primary before:opacity-0 before:transition-opacity hover:!bg-sidebar-accent/70 hover:text-sidebar-foreground data-[active=true]:!bg-sidebar-accent data-[active=true]:text-sidebar-accent-foreground data-[active=true]:before:opacity-100 [&>svg]:text-sidebar-foreground/60 hover:[&>svg]:text-sidebar-foreground data-[active=true]:[&>svg]:text-sidebar-primary" data-state="closed" href="/dashboard/providers"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-network shrink-0" aria-hidden="true"><rect x="16" y="16" width="6" height="6" rx="1"></rect><rect x="2" y="16" width="6" height="6" rx="1"></rect><rect x="9" y="2" width="6" height="6" rx="1"></rect><path d="M5 16v-3a1 1 0 0 1 1-1h12a1 1 0 0 1 1 1v3"></path><path d="M12 12V8"></path></svg><span>Providers</span></a></li><li data-slot="sidebar-menu-item" data-sidebar="menu-item" class="group/menu-item relative"><a data-slot="sidebar-menu-button" data-sidebar="menu-button" data-size="default" data-active="false" class="peer/menu-button group/menu-button flex w-full items-center gap-2 overflow-hidden p-2 text-left ring-sidebar-ring outline-hidden group-has-data-[sidebar=menu-action]/menu-item:pr-8 group-data-[collapsible=icon]:size-8! group-data-[collapsible=icon]:p-2! focus-visible:ring-2 active:bg-sidebar-accent active:text-sidebar-accent-foreground disabled:pointer-events-none disabled:opacity-50 aria-disabled:pointer-events-none aria-disabled:opacity-50 data-open:hover:bg-sidebar-accent data-open:hover:text-sidebar-accent-foreground data-active:bg-sidebar-accent data-active:font-medium data-active:text-sidebar-accent-foreground [&_svg]:size-4 [&_svg]:shrink-0 [&>span:last-child]:truncate hover:bg-sidebar-accent relative h-9 rounded-lg !bg-transparent px-2 text-sm font-medium text-sidebar-foreground/78 shadow-none transition-colors before:absolute before:left-0 before:top-1/2 before:h-4 before:w-0.5 before:-translate-y-1/2 before:rounded-full before:bg-sidebar-primary before:opacity-0 before:transition-opacity hover:!bg-sidebar-accent/70 hover:text-sidebar-foreground data-[active=true]:!bg-sidebar-accent data-[active=true]:text-sidebar-accent-foreground data-[active=true]:before:opacity-100 [&>svg]:text-sidebar-foreground/60 hover:[&>svg]:text-sidebar-foreground data-[active=true]:[&>svg]:text-sidebar-primary" data-state="closed" href="/dashboard/combos"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-layers shrink-0" aria-hidden="true"><path d="M12.83 2.18a2 2 0 0 0-1.66 0L2.6 6.08a1 1 0 0 0 0 1.83l8.58 3.91a2 2 0 0 0 1.66 0l8.58-3.9a1 1 0 0 0 0-1.83z"></path><path d="M2 12a1 1 0 0 0 .58.91l8.6 3.91a2 2 0 0 0 1.65 0l8.58-3.9A1 1 0 0 0 22 12"></path><path d="M2 17a1 1 0 0 0 .58.91l8.6 3.91a2 2 0 0 0 1.65 0l8.58-3.9A1 1 0 0 0 22 17"></path></svg><span>Combos</span></a></li><li data-slot="sidebar-menu-item" data-sidebar="menu-item" class="group/menu-item relative"><a data-slot="sidebar-menu-button" data-sidebar="menu-button" data-size="default" data-active="false" class="peer/menu-button group/menu-button flex w-full items-center gap-2 overflow-hidden p-2 text-left ring-sidebar-ring outline-hidden group-has-data-[sidebar=menu-action]/menu-item:pr-8 group-data-[collapsible=icon]:size-8! group-data-[collapsible=icon]:p-2! focus-visible:ring-2 active:bg-sidebar-accent active:text-sidebar-accent-foreground disabled:pointer-events-none disabled:opacity-50 aria-disabled:pointer-events-none aria-disabled:opacity-50 data-open:hover:bg-sidebar-accent data-open:hover:text-sidebar-accent-foreground data-active:bg-sidebar-accent data-active:font-medium data-active:text-sidebar-accent-foreground [&_svg]:size-4 [&_svg]:shrink-0 [&>span:last-child]:truncate hover:bg-sidebar-accent relative h-9 rounded-lg !bg-transparent px-2 text-sm font-medium text-sidebar-foreground/78 shadow-none transition-colors before:absolute before:left-0 before:top-1/2 before:h-4 before:w-0.5 before:-translate-y-1/2 before:rounded-full before:bg-sidebar-primary before:opacity-0 before:transition-opacity hover:!bg-sidebar-accent/70 hover:text-sidebar-foreground data-[active=true]:!bg-sidebar-accent data-[active=true]:text-sidebar-accent-foreground data-[active=true]:before:opacity-100 [&>svg]:text-sidebar-foreground/60 hover:[&>svg]:text-sidebar-foreground data-[active=true]:[&>svg]:text-sidebar-primary" data-state="closed" href="/dashboard/quota"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-gauge shrink-0" aria-hidden="true"><path d="m12 14 4-4"></path><path d="M3.34 19a10 10 0 1 1 17.32 0"></path></svg><span>Quota Tracker</span></a></li><li data-slot="sidebar-menu-item" data-sidebar="menu-item" class="group/menu-item relative"><a data-slot="sidebar-menu-button" data-sidebar="menu-button" data-size="default" data-active="false" class="peer/menu-button group/menu-button flex w-full items-center gap-2 overflow-hidden p-2 text-left ring-sidebar-ring outline-hidden group-has-data-[sidebar=menu-action]/menu-item:pr-8 group-data-[collapsible=icon]:size-8! group-data-[collapsible=icon]:p-2! focus-visible:ring-2 active:bg-sidebar-accent active:text-sidebar-accent-foreground disabled:pointer-events-none disabled:opacity-50 aria-disabled:pointer-events-none aria-disabled:opacity-50 data-open:hover:bg-sidebar-accent data-open:hover:text-sidebar-accent-foreground data-active:bg-sidebar-accent data-active:font-medium data-active:text-sidebar-accent-foreground [&_svg]:size-4 [&_svg]:shrink-0 [&>span:last-child]:truncate hover:bg-sidebar-accent relative h-9 rounded-lg !bg-transparent px-2 text-sm font-medium text-sidebar-foreground/78 shadow-none transition-colors before:absolute before:left-0 before:top-1/2 before:h-4 before:w-0.5 before:-translate-y-1/2 before:rounded-full before:bg-sidebar-primary before:opacity-0 before:transition-opacity hover:!bg-sidebar-accent/70 hover:text-sidebar-foreground data-[active=true]:!bg-sidebar-accent data-[active=true]:text-sidebar-accent-foreground data-[active=true]:before:opacity-100 [&>svg]:text-sidebar-foreground/60 hover:[&>svg]:text-sidebar-foreground data-[active=true]:[&>svg]:text-sidebar-primary" data-state="closed" href="/dashboard/usage"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-chart-column shrink-0" aria-hidden="true"><path d="M3 3v16a2 2 0 0 0 2 2h16"></path><path d="M18 17V9"></path><path d="M13 17V5"></path><path d="M8 17v-3"></path></svg><span>Usage</span></a></li><li data-slot="sidebar-menu-item" data-sidebar="menu-item" class="group/menu-item relative"><a data-slot="sidebar-menu-button" data-sidebar="menu-button" data-size="default" data-active="false" class="peer/menu-button group/menu-button flex w-full items-center gap-2 overflow-hidden p-2 text-left ring-sidebar-ring outline-hidden group-has-data-[sidebar=menu-action]/menu-item:pr-8 group-data-[collapsible=icon]:size-8! group-data-[collapsible=icon]:p-2! focus-visible:ring-2 active:bg-sidebar-accent active:text-sidebar-accent-foreground disabled:pointer-events-none disabled:opacity-50 aria-disabled:pointer-events-none aria-disabled:opacity-50 data-open:hover:bg-sidebar-accent data-open:hover:text-sidebar-accent-foreground data-active:bg-sidebar-accent data-active:font-medium data-active:text-sidebar-accent-foreground [&_svg]:size-4 [&_svg]:shrink-0 [&>span:last-child]:truncate hover:bg-sidebar-accent relative h-9 rounded-lg !bg-transparent px-2 text-sm font-medium text-sidebar-foreground/78 shadow-none transition-colors before:absolute before:left-0 before:top-1/2 before:h-4 before:w-0.5 before:-translate-y-1/2 before:rounded-full before:bg-sidebar-primary before:opacity-0 before:transition-opacity hover:!bg-sidebar-accent/70 hover:text-sidebar-foreground data-[active=true]:!bg-sidebar-accent data-[active=true]:text-sidebar-accent-foreground data-[active=true]:before:opacity-100 [&>svg]:text-sidebar-foreground/60 hover:[&>svg]:text-sidebar-foreground data-[active=true]:[&>svg]:text-sidebar-primary" data-state="closed" href="/dashboard/analytics"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-database-zap shrink-0" aria-hidden="true"><ellipse cx="12" cy="5" rx="9" ry="3"></ellipse><path d="M3 5V19A9 3 0 0 0 15 21.84"></path><path d="M21 5V8"></path><path d="M21 12L18 17H22L19 22"></path><path d="M3 12A9 3 0 0 0 14.59 14.87"></path></svg><span>Analytics</span></a></li><li data-slot="sidebar-menu-item" data-sidebar="menu-item" class="group/menu-item relative"><a data-slot="sidebar-menu-button" data-sidebar="menu-button" data-size="default" data-active="false" class="peer/menu-button group/menu-button flex w-full items-center gap-2 overflow-hidden p-2 text-left ring-sidebar-ring outline-hidden group-has-data-[sidebar=menu-action]/menu-item:pr-8 group-data-[collapsible=icon]:size-8! group-data-[collapsible=icon]:p-2! focus-visible:ring-2 active:bg-sidebar-accent active:text-sidebar-accent-foreground disabled:pointer-events-none disabled:opacity-50 aria-disabled:pointer-events-none aria-disabled:opacity-50 data-open:hover:bg-sidebar-accent data-open:hover:text-sidebar-accent-foreground data-active:bg-sidebar-accent data-active:font-medium data-active:text-sidebar-accent-foreground [&_svg]:size-4 [&_svg]:shrink-0 [&>span:last-child]:truncate hover:bg-sidebar-accent relative h-9 rounded-lg !bg-transparent px-2 text-sm font-medium text-sidebar-foreground/78 shadow-none transition-colors before:absolute before:left-0 before:top-1/2 before:h-4 before:w-0.5 before:-translate-y-1/2 before:rounded-full before:bg-sidebar-primary before:opacity-0 before:transition-opacity hover:!bg-sidebar-accent/70 hover:text-sidebar-foreground data-[active=true]:!bg-sidebar-accent data-[active=true]:text-sidebar-accent-foreground data-[active=true]:before:opacity-100 [&>svg]:text-sidebar-foreground/60 hover:[&>svg]:text-sidebar-foreground data-[active=true]:[&>svg]:text-sidebar-primary" data-state="closed" href="/dashboard/mitm"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-shield shrink-0" aria-hidden="true"><path d="M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z"></path></svg><span>MITM</span></a></li><li data-slot="sidebar-menu-item" data-sidebar="menu-item" class="group/menu-item relative"><a data-slot="sidebar-menu-button" data-sidebar="menu-button" data-size="default" data-active="false" class="peer/menu-button group/menu-button flex w-full items-center gap-2 overflow-hidden p-2 text-left ring-sidebar-ring outline-hidden group-has-data-[sidebar=menu-action]/menu-item:pr-8 group-data-[collapsible=icon]:size-8! group-data-[collapsible=icon]:p-2! focus-visible:ring-2 active:bg-sidebar-accent active:text-sidebar-accent-foreground disabled:pointer-events-none disabled:opacity-50 aria-disabled:pointer-events-none aria-disabled:opacity-50 data-open:hover:bg-sidebar-accent data-open:hover:text-sidebar-accent-foreground data-active:bg-sidebar-accent data-active:font-medium data-active:text-sidebar-accent-foreground [&_svg]:size-4 [&_svg]:shrink-0 [&>span:last-child]:truncate hover:bg-sidebar-accent relative h-9 rounded-lg !bg-transparent px-2 text-sm font-medium text-sidebar-foreground/78 shadow-none transition-colors before:absolute before:left-0 before:top-1/2 before:h-4 before:w-0.5 before:-translate-y-1/2 before:rounded-full before:bg-sidebar-primary before:opacity-0 before:transition-opacity hover:!bg-sidebar-accent/70 hover:text-sidebar-foreground data-[active=true]:!bg-sidebar-accent data-[active=true]:text-sidebar-accent-foreground data-[active=true]:before:opacity-100 [&>svg]:text-sidebar-foreground/60 hover:[&>svg]:text-sidebar-foreground data-[active=true]:[&>svg]:text-sidebar-primary" data-state="closed" href="/dashboard/cli-tools"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-terminal shrink-0" aria-hidden="true"><path d="M12 19h8"></path><path d="m4 17 6-6-6-6"></path></svg><span>CLI Tools</span></a></li><li data-slot="sidebar-menu-item" data-sidebar="menu-item" class="group/menu-item relative"><a data-slot="sidebar-menu-button" data-sidebar="menu-button" data-size="default" data-active="false" class="peer/menu-button group/menu-button flex w-full items-center gap-2 overflow-hidden p-2 text-left ring-sidebar-ring outline-hidden group-has-data-[sidebar=menu-action]/menu-item:pr-8 group-data-[collapsible=icon]:size-8! group-data-[collapsible=icon]:p-2! focus-visible:ring-2 active:bg-sidebar-accent active:text-sidebar-accent-foreground disabled:pointer-events-none disabled:opacity-50 aria-disabled:pointer-events-none aria-disabled:opacity-50 data-open:hover:bg-sidebar-accent data-open:hover:text-sidebar-accent-foreground data-active:bg-sidebar-accent data-active:font-medium data-active:text-sidebar-accent-foreground [&_svg]:size-4 [&_svg]:shrink-0 [&>span:last-child]:truncate hover:bg-sidebar-accent relative h-9 rounded-lg !bg-transparent px-2 text-sm font-medium text-sidebar-foreground/78 shadow-none transition-colors before:absolute before:left-0 before:top-1/2 before:h-4 before:w-0.5 before:-translate-y-1/2 before:rounded-full before:bg-sidebar-primary before:opacity-0 before:transition-opacity hover:!bg-sidebar-accent/70 hover:text-sidebar-foreground data-[active=true]:!bg-sidebar-accent data-[active=true]:text-sidebar-accent-foreground data-[active=true]:before:opacity-100 [&>svg]:text-sidebar-foreground/60 hover:[&>svg]:text-sidebar-foreground data-[active=true]:[&>svg]:text-sidebar-primary" data-state="closed" href="/dashboard/morph"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-route shrink-0" aria-hidden="true"><circle cx="6" cy="19" r="3"></circle><path d="M9 19h8.5a3.5 3.5 0 0 0 0-7h-11a3.5 3.5 0 0 1 0-7H15"></path><circle cx="18" cy="5" r="3"></circle></svg><span>Morph</span></a></li><li data-slot="sidebar-menu-item" data-sidebar="menu-item" class="group/menu-item relative"><a aria-current="page" data-slot="sidebar-menu-button" data-sidebar="menu-button" data-size="default" data-active="true" class="peer/menu-button group/menu-button flex w-full items-center gap-2 overflow-hidden p-2 text-left ring-sidebar-ring outline-hidden group-has-data-[sidebar=menu-action]/menu-item:pr-8 group-data-[collapsible=icon]:size-8! group-data-[collapsible=icon]:p-2! focus-visible:ring-2 active:bg-sidebar-accent active:text-sidebar-accent-foreground disabled:pointer-events-none disabled:opacity-50 aria-disabled:pointer-events-none aria-disabled:opacity-50 data-open:hover:bg-sidebar-accent data-open:hover:text-sidebar-accent-foreground data-active:bg-sidebar-accent data-active:font-medium data-active:text-sidebar-accent-foreground [&_svg]:size-4 [&_svg]:shrink-0 [&>span:last-child]:truncate hover:bg-sidebar-accent relative h-9 rounded-lg !bg-transparent px-2 text-sm font-medium text-sidebar-foreground/78 shadow-none transition-colors before:absolute before:left-0 before:top-1/2 before:h-4 before:w-0.5 before:-translate-y-1/2 before:rounded-full before:bg-sidebar-primary before:opacity-0 before:transition-opacity hover:!bg-sidebar-accent/70 hover:text-sidebar-foreground data-[active=true]:!bg-sidebar-accent data-[active=true]:text-sidebar-accent-foreground data-[active=true]:before:opacity-100 [&>svg]:text-sidebar-foreground/60 hover:[&>svg]:text-sidebar-foreground data-[active=true]:[&>svg]:text-sidebar-primary" data-state="closed" href="/dashboard/skills"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-sparkles shrink-0" aria-hidden="true"><path d="M11.017 2.814a1 1 0 0 1 1.966 0l1.051 5.558a2 2 0 0 0 1.594 1.594l5.558 1.051a1 1 0 0 1 0 1.966l-5.558 1.051a2 2 0 0 0-1.594 1.594l-1.051 5.558a1 1 0 0 1-1.966 0l-1.051-5.558a2 2 0 0 0-1.594-1.594l-5.558-1.051a1 1 0 0 1 0-1.966l5.558-1.051a2 2 0 0 0 1.594-1.594z"></path><path d="M20 2v4"></path><path d="M22 4h-4"></path><circle cx="4" cy="20" r="2"></circle></svg><span>Skills</span></a></li><li data-slot="sidebar-menu-item" data-sidebar="menu-item" class="group/menu-item relative"><a data-slot="sidebar-menu-button" data-sidebar="menu-button" data-size="default" data-active="false" class="peer/menu-button group/menu-button flex w-full items-center gap-2 overflow-hidden p-2 text-left ring-sidebar-ring outline-hidden group-has-data-[sidebar=menu-action]/menu-item:pr-8 group-data-[collapsible=icon]:size-8! group-data-[collapsible=icon]:p-2! focus-visible:ring-2 active:bg-sidebar-accent active:text-sidebar-accent-foreground disabled:pointer-events-none disabled:opacity-50 aria-disabled:pointer-events-none aria-disabled:opacity-50 data-open:hover:bg-sidebar-accent data-open:hover:text-sidebar-accent-foreground data-active:bg-sidebar-accent data-active:font-medium data-active:text-sidebar-accent-foreground [&_svg]:size-4 [&_svg]:shrink-0 [&>span:last-child]:truncate hover:bg-sidebar-accent relative h-9 rounded-lg !bg-transparent px-2 text-sm font-medium text-sidebar-foreground/78 shadow-none transition-colors before:absolute before:left-0 before:top-1/2 before:h-4 before:w-0.5 before:-translate-y-1/2 before:rounded-full before:bg-sidebar-primary before:opacity-0 before:transition-opacity hover:!bg-sidebar-accent/70 hover:text-sidebar-foreground data-[active=true]:!bg-sidebar-accent data-[active=true]:text-sidebar-accent-foreground data-[active=true]:before:opacity-100 [&>svg]:text-sidebar-foreground/60 hover:[&>svg]:text-sidebar-foreground data-[active=true]:[&>svg]:text-sidebar-primary" data-state="closed" href="/dashboard/mcp"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-route shrink-0" aria-hidden="true"><circle cx="6" cy="19" r="3"></circle><path d="M9 19h8.5a3.5 3.5 0 0 0 0-7h-11a3.5 3.5 0 0 1 0-7H15"></path><circle cx="18" cy="5" r="3"></circle></svg><span>MCP</span></a></li></ul></div></div><div data-slot="sidebar-group" data-sidebar="group" class="relative flex w-full min-w-0 flex-col p-2 px-0 py-0"><div data-slot="sidebar-group-label" data-sidebar="group-label" class="flex shrink-0 items-center rounded-md ring-sidebar-ring outline-hidden transition-[margin,opacity] duration-200 ease-linear group-data-[collapsible=icon]:-mt-8 group-data-[collapsible=icon]:opacity-0 focus-visible:ring-2 [&>svg]:size-4 [&>svg]:shrink-0 h-7 px-2 text-[10px] font-semibold uppercase tracking-[0.18em] text-sidebar-foreground/40">Projects</div><div data-slot="sidebar-group-content" data-sidebar="group-content" class="w-full text-sm"><ul data-slot="sidebar-menu" data-sidebar="menu" class="flex w-full min-w-0 flex-col gap-1.5"><li data-slot="collapsible" data-sidebar="menu-item" class="group/menu-item relative group/collapsible" data-state="closed"><button data-slot="collapsible-trigger" data-sidebar="menu-button" data-size="default" data-active="false" class="peer/menu-button group/menu-button flex w-full items-center gap-2 overflow-hidden p-2 text-left ring-sidebar-ring outline-hidden group-has-data-[sidebar=menu-action]/menu-item:pr-8 group-data-[collapsible=icon]:size-8! group-data-[collapsible=icon]:p-2! focus-visible:ring-2 active:bg-sidebar-accent active:text-sidebar-accent-foreground disabled:pointer-events-none disabled:opacity-50 aria-disabled:pointer-events-none aria-disabled:opacity-50 data-open:hover:bg-sidebar-accent data-open:hover:text-sidebar-accent-foreground data-active:bg-sidebar-accent data-active:font-medium data-active:text-sidebar-accent-foreground [&_svg]:size-4 [&_svg]:shrink-0 [&>span:last-child]:truncate hover:bg-sidebar-accent relative h-9 cursor-pointer rounded-lg !bg-transparent px-2 text-sm font-medium text-sidebar-foreground/78 shadow-none transition-colors before:absolute before:left-0 before:top-1/2 before:h-4 before:w-0.5 before:-translate-y-1/2 before:rounded-full before:bg-sidebar-primary before:opacity-0 before:transition-opacity hover:!bg-sidebar-accent/70 hover:text-sidebar-foreground data-[active=true]:!bg-sidebar-accent data-[active=true]:text-sidebar-accent-foreground data-[active=true]:before:opacity-100 [&>svg]:text-sidebar-foreground/60 hover:[&>svg]:text-sidebar-foreground data-[active=true]:[&>svg]:text-sidebar-primary" type="button" aria-controls="radix-_R_3ad9fdb_" aria-expanded="false" data-state="closed"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-image shrink-0" aria-hidden="true"><rect width="18" height="18" x="3" y="3" rx="2" ry="2"></rect><circle cx="9" cy="9" r="2"></circle><path d="m21 15-3.086-3.086a2 2 0 0 0-2.828 0L6 21"></path></svg><span>Media Providers</span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-chevron-right ml-auto transition-transform duration-200 group-data-[state=open]/collapsible:rotate-90" aria-hidden="true"><path d="m9 18 6-6-6-6"></path></svg><span class="sr-only">Toggle media providers</span></button><div data-state="closed" id="radix-_R_3ad9fdb_" hidden="" data-slot="collapsible-content"></div></li><li data-slot="sidebar-menu-item" data-sidebar="menu-item" class="group/menu-item relative"><a data-slot="sidebar-menu-button" data-sidebar="menu-button" data-size="default" data-active="false" class="peer/menu-button group/menu-button flex w-full items-center gap-2 overflow-hidden p-2 text-left ring-sidebar-ring outline-hidden group-has-data-[sidebar=menu-action]/menu-item:pr-8 group-data-[collapsible=icon]:size-8! group-data-[collapsible=icon]:p-2! focus-visible:ring-2 active:bg-sidebar-accent active:text-sidebar-accent-foreground disabled:pointer-events-none disabled:opacity-50 aria-disabled:pointer-events-none aria-disabled:opacity-50 data-open:hover:bg-sidebar-accent data-open:hover:text-sidebar-accent-foreground data-active:bg-sidebar-accent data-active:font-medium data-active:text-sidebar-accent-foreground [&_svg]:size-4 [&_svg]:shrink-0 [&>span:last-child]:truncate hover:bg-sidebar-accent relative h-9 rounded-lg !bg-transparent px-2 text-sm font-medium text-sidebar-foreground/78 shadow-none transition-colors before:absolute before:left-0 before:top-1/2 before:h-4 before:w-0.5 before:-translate-y-1/2 before:rounded-full before:bg-sidebar-primary before:opacity-0 before:transition-opacity hover:!bg-sidebar-accent/70 hover:text-sidebar-foreground data-[active=true]:!bg-sidebar-accent data-[active=true]:text-sidebar-accent-foreground data-[active=true]:before:opacity-100 [&>svg]:text-sidebar-foreground/60 hover:[&>svg]:text-sidebar-foreground data-[active=true]:[&>svg]:text-sidebar-primary" data-state="closed" href="/dashboard/proxy-pools"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-folder-cog shrink-0" aria-hidden="true"><path d="M10.3 20H4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h3.98a2 2 0 0 1 1.69.9l.66 1.2A2 2 0 0 0 12 6h8a2 2 0 0 1 2 2v3.3"></path><path d="m14.305 19.53.923-.382"></path><path d="m15.228 16.852-.923-.383"></path><path d="m16.852 15.228-.383-.923"></path><path d="m16.852 20.772-.383.924"></path><path d="m19.148 15.228.383-.923"></path><path d="m19.53 21.696-.382-.924"></path><path d="m20.772 16.852.924-.383"></path><path d="m20.772 19.148.924.383"></path><circle cx="18" cy="18" r="3"></circle></svg><span>Proxy Pools</span></a></li><li data-slot="sidebar-menu-item" data-sidebar="menu-item" class="group/menu-item relative"><a data-slot="sidebar-menu-button" data-sidebar="menu-button" data-size="default" data-active="false" class="peer/menu-button group/menu-button flex w-full items-center gap-2 overflow-hidden p-2 text-left ring-sidebar-ring outline-hidden group-has-data-[sidebar=menu-action]/menu-item:pr-8 group-data-[collapsible=icon]:size-8! group-data-[collapsible=icon]:p-2! focus-visible:ring-2 active:bg-sidebar-accent active:text-sidebar-accent-foreground disabled:pointer-events-none disabled:opacity-50 aria-disabled:pointer-events-none aria-disabled:opacity-50 data-open:hover:bg-sidebar-accent data-open:hover:text-sidebar-accent-foreground data-active:bg-sidebar-accent data-active:font-medium data-active:text-sidebar-accent-foreground [&_svg]:size-4 [&_svg]:shrink-0 [&>span:last-child]:truncate hover:bg-sidebar-accent relative h-9 rounded-lg !bg-transparent px-2 text-sm font-medium text-sidebar-foreground/78 shadow-none transition-colors before:absolute before:left-0 before:top-1/2 before:h-4 before:w-0.5 before:-translate-y-1/2 before:rounded-full before:bg-sidebar-primary before:opacity-0 before:transition-opacity hover:!bg-sidebar-accent/70 hover:text-sidebar-foreground data-[active=true]:!bg-sidebar-accent data-[active=true]:text-sidebar-accent-foreground data-[active=true]:before:opacity-100 [&>svg]:text-sidebar-foreground/60 hover:[&>svg]:text-sidebar-foreground data-[active=true]:[&>svg]:text-sidebar-primary" data-state="closed" href="/dashboard/console-log"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-scroll-text shrink-0" aria-hidden="true"><path d="M15 12h-5"></path><path d="M15 8h-5"></path><path d="M19 17V5a2 2 0 0 0-2-2H4"></path><path d="M8 21h12a2 2 0 0 0 2-2v-1a1 1 0 0 0-1-1H11a1 1 0 0 0-1 1v1a2 2 0 1 1-4 0V5a2 2 0 1 0-4 0v2a1 1 0 0 0 1 1h3"></path></svg><span>Console Log</span></a></li><li data-slot="sidebar-menu-item" data-sidebar="menu-item" class="group/menu-item relative"><a data-slot="sidebar-menu-button" data-sidebar="menu-button" data-size="default" data-active="false" class="peer/menu-button group/menu-button flex w-full items-center gap-2 overflow-hidden p-2 text-left ring-sidebar-ring outline-hidden group-has-data-[sidebar=menu-action]/menu-item:pr-8 group-data-[collapsible=icon]:size-8! group-data-[collapsible=icon]:p-2! focus-visible:ring-2 active:bg-sidebar-accent active:text-sidebar-accent-foreground disabled:pointer-events-none disabled:opacity-50 aria-disabled:pointer-events-none aria-disabled:opacity-50 data-open:hover:bg-sidebar-accent data-open:hover:text-sidebar-accent-foreground data-active:bg-sidebar-accent data-active:font-medium data-active:text-sidebar-accent-foreground [&_svg]:size-4 [&_svg]:shrink-0 [&>span:last-child]:truncate hover:bg-sidebar-accent relative h-9 rounded-lg !bg-transparent px-2 text-sm font-medium text-sidebar-foreground/78 shadow-none transition-colors before:absolute before:left-0 before:top-1/2 before:h-4 before:w-0.5 before:-translate-y-1/2 before:rounded-full before:bg-sidebar-primary before:opacity-0 before:transition-opacity hover:!bg-sidebar-accent/70 hover:text-sidebar-foreground data-[active=true]:!bg-sidebar-accent data-[active=true]:text-sidebar-accent-foreground data-[active=true]:before:opacity-100 [&>svg]:text-sidebar-foreground/60 hover:[&>svg]:text-sidebar-foreground data-[active=true]:[&>svg]:text-sidebar-primary" data-state="closed" href="/dashboard/settings"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-settings shrink-0" aria-hidden="true"><path d="M9.671 4.136a2.34 2.34 0 0 1 4.659 0 2.34 2.34 0 0 0 3.319 1.915 2.34 2.34 0 0 1 2.33 4.033 2.34 2.34 0 0 0 0 3.831 2.34 2.34 0 0 1-2.33 4.033 2.34 2.34 0 0 0-3.319 1.915 2.34 2.34 0 0 1-4.659 0 2.34 2.34 0 0 0-3.32-1.915 2.34 2.34 0 0 1-2.33-4.033 2.34 2.34 0 0 0 0-3.831A2.34 2.34 0 0 1 6.35 6.051a2.34 2.34 0 0 0 3.319-1.915"></path><circle cx="12" cy="12" r="3"></circle></svg><span>Settings</span></a></li></ul></div></div></div></div><div data-slot="sidebar-footer" data-sidebar="footer" class="flex flex-col gap-2 p-2 px-3 pb-4 pt-3"><div class="group-data-[collapsible=icon]:hidden"><div class="rounded-[4px] border border-sidebar-border/80 bg-sidebar-accent/45 p-3 shadow-[0_12px_30px_rgba(0,0,0,0.18)]"><div class="flex items-center justify-between gap-2 text-xs"><div class="flex min-w-0 items-center gap-2"><span class="size-2 shrink-0 rounded-full bg-success shadow-[0_0_16px_color-mix(in_srgb,var(--color-success)_55%,transparent)]"></span><span class="truncate font-medium text-sidebar-foreground">AI gateway <!-- -->healthy</span></div><span class="inline-flex items-center gap-1.5 border py-1 tracking-[0.01em] h-5 shrink-0 rounded-sm px-1.5 text-[10px] font-medium tabular-nums text-[var(--color-success)] border-[var(--color-success)]/35 bg-[var(--color-success)]/15">1ms</span></div><div class="mt-2 flex items-center justify-between text-[11px] text-sidebar-foreground/45"><span>AxonRouter runtime</span><span>v<!-- -->0.1.4</span></div></div></div></div><button data-sidebar="rail" data-slot="sidebar-rail" aria-label="Toggle Sidebar" tabindex="-1" title="Toggle Sidebar" class="absolute inset-y-0 z-20 hidden w-4 transition-all ease-linear group-data-[side=left]:-right-4 group-data-[side=right]:left-0 after:absolute after:inset-y-0 after:start-1/2 after:w-[2px] hover:after:bg-sidebar-border sm:flex ltr:-translate-x-1/2 rtl:-translate-x-1/2 in-data-[side=left]:cursor-w-resize in-data-[side=right]:cursor-e-resize [[data-side=left][data-state=collapsed]_&]:cursor-e-resize [[data-side=right][data-state=collapsed]_&]:cursor-w-resize group-data-[collapsible=offcanvas]:translate-x-0 group-data-[collapsible=offcanvas]:after:left-full hover:group-data-[collapsible=offcanvas]:bg-sidebar [[data-side=left][data-collapsible=offcanvas]_&]:-right-2 [[data-side=right][data-collapsible=offcanvas]_&]:-left-2"></button></div></div></div><main data-slot="sidebar-inset" class="relative flex w-full flex-1 flex-col md:peer-data-[variant=inset]:m-2 md:peer-data-[variant=inset]:ml-0 md:peer-data-[variant=inset]:rounded-xl md:peer-data-[variant=inset]:shadow-sm md:peer-data-[variant=inset]:peer-data-[state=collapsed]:ml-2 min-h-svh bg-transparent"><header class="flex min-h-18 items-center gap-3 border-b border-border/80 bg-background/82 px-5 shadow-[0_16px_42px_rgba(0,0,0,0.16)] backdrop-blur-xl max-sm:min-h-16 max-sm:px-3"><div class="hidden shrink-0 max-lg:block"><button class="inline-flex cursor-pointer items-center justify-center gap-2 rounded-[4px] border font-medium transition-[background,border-color,color,transform] duration-150 active:not-disabled:translate-y-px disabled:cursor-not-allowed disabled:opacity-60 [&_svg]:shrink-0 border-transparent bg-transparent text-muted-foreground hover:border-primary/45 hover:bg-primary/15 hover:text-foreground size-8 p-0" data-sidebar="trigger" data-slot="sidebar-trigger" aria-label="Open navigation"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-panel-left" aria-hidden="true"><rect width="18" height="18" x="3" y="3" rx="2"></rect><path d="M9 3v18"></path></svg><span class="sr-only">Toggle Sidebar</span></button></div><div class="min-w-0 flex-1"><div class="min-w-0"><h1 class="truncate text-xl font-bold leading-tight tracking-[-0.035em] text-foreground max-[640px]:text-base">Skills</h1><p class="mt-0.5 truncate text-xs text-muted-foreground max-[760px]:hidden">Copy capability-specific skill prompts for AxonRouter workflows</p></div></div><div class="flex min-h-10 w-[min(28vw,22rem)] items-center gap-2 rounded-[4px] border border-border/80 bg-secondary/60 px-3 text-muted-foreground shadow-[inset_0_1px_0_rgba(255,255,255,0.04)] max-[900px]:hidden"><svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-search" aria-hidden="true"><path d="m21 21-4.34-4.34"></path><circle cx="11" cy="11" r="8"></circle></svg><input type="text" data-slot="input" class="w-full min-w-0 rounded-[4px] border-input py-1 transition-colors outline-none file:inline-flex file:h-6 file:border-0 file:bg-transparent file:text-sm file:font-medium file:text-foreground placeholder:text-muted-foreground focus-visible:border-ring focus-visible:ring-ring/50 disabled:pointer-events-none disabled:cursor-not-allowed disabled:bg-input/50 disabled:opacity-50 aria-invalid:border-destructive aria-invalid:ring-3 aria-invalid:ring-destructive/20 md:text-sm dark:bg-input/30 dark:disabled:bg-input/80 dark:aria-invalid:border-destructive/50 dark:aria-invalid:ring-destructive/40 h-auto min-h-0 border-0 bg-transparent px-0 text-sm text-foreground focus-visible:ring-0" placeholder="Search AI gateway..." value=""/></div><div role="separator" data-orientation="vertical" class="shrink-0 bg-border h-7 w-px max-sm:hidden"></div><button class="inline-flex cursor-pointer items-center justify-center gap-2 rounded-[4px] border font-medium transition-[background,border-color,color,transform] duration-150 active:not-disabled:translate-y-px disabled:cursor-not-allowed disabled:opacity-60 [&_svg]:shrink-0 border-border bg-secondary text-secondary-foreground hover:border-primary/45 hover:bg-primary/15 size-8 p-0" type="button" aria-label="Open dashboard menu" id="radix-_R_3bpfdb_" aria-haspopup="menu" aria-expanded="false" data-state="closed" data-slot="dropdown-menu-trigger"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-grid3x3 lucide-grid-3x3 shrink-0" aria-hidden="true"><rect width="18" height="18" x="3" y="3" rx="2"></rect><path d="M3 9h18"></path><path d="M3 15h18"></path><path d="M9 3v18"></path><path d="M15 3v18"></path></svg></button><div class=""></div></header><main class="rr-main-scroll"><div class="rr-main-inner"><!--$?--><template id="B:0"></template><div class="flex flex-col gap-6 p-6 lg:p-10"><div class="grid gap-4 md:grid-cols-3"><div class="rounded-[4px] border border-border bg-card p-5"><div class="animate-pulse rounded-[4px] bg-foreground/10 mb-4 h-4 w-24"></div><div class="animate-pulse rounded-[4px] bg-foreground/10 h-8 w-20"></div></div><div class="rounded-[4px] border border-border bg-card p-5"><div class="animate-pulse rounded-[4px] bg-foreground/10 mb-4 h-4 w-24"></div><div class="animate-pulse rounded-[4px] bg-foreground/10 h-8 w-20"></div></div><div class="rounded-[4px] border border-border bg-card p-5"><div class="animate-pulse rounded-[4px] bg-foreground/10 mb-4 h-4 w-24"></div><div class="animate-pulse rounded-[4px] bg-foreground/10 h-8 w-20"></div></div></div><div class="grid gap-6 xl:grid-cols-[1.5fr_1fr]"><div class="rounded-[4px] border border-border bg-card p-6"><div class="animate-pulse rounded-[4px] bg-foreground/10 mb-5 h-5 w-48"></div><div class="space-y-3"><div class="animate-pulse rounded-[4px] bg-foreground/10 h-12 w-full"></div><div class="animate-pulse rounded-[4px] bg-foreground/10 h-12 w-full"></div><div class="animate-pulse rounded-[4px] bg-foreground/10 h-12 w-full"></div><div class="animate-pulse rounded-[4px] bg-foreground/10 h-12 w-full"></div><div class="animate-pulse rounded-[4px] bg-foreground/10 h-12 w-full"></div></div></div><div class="rounded-[4px] border border-border bg-card p-6"><div class="animate-pulse rounded-[4px] bg-foreground/10 mb-5 h-5 w-32"></div><div class="space-y-4"><div class="space-y-2"><div class="animate-pulse rounded-[4px] bg-foreground/10 h-3 w-20"></div><div class="animate-pulse rounded-[4px] bg-foreground/10 h-10 w-full"></div></div><div class="space-y-2"><div class="animate-pulse rounded-[4px] bg-foreground/10 h-3 w-20"></div><div class="animate-pulse rounded-[4px] bg-foreground/10 h-10 w-full"></div></div><div class="space-y-2"><div class="animate-pulse rounded-[4px] bg-foreground/10 h-3 w-20"></div><div class="animate-pulse rounded-[4px] bg-foreground/10 h-10 w-full"></div></div><div class="space-y-2"><div class="animate-pulse rounded-[4px] bg-foreground/10 h-3 w-20"></div><div class="animate-pulse rounded-[4px] bg-foreground/10 h-10 w-full"></div></div></div></div></div></div><!--/$--></div></main></main></div><script>requestAnimationFrame(function(){$RT=performance.now()});</script><script src="/_next/static/chunks/0-hrh_uw98wb_.js" id="_R_" async=""></script><div hidden id="S:0"><div class="flex flex-col gap-6"><div class="flex flex-col gap-3 sm:flex-row sm:items-end sm:justify-between"><div><p class="text-[11px] font-semibold uppercase tracking-[0.22em] text-muted-foreground">Agent skills</p><h2 class="mt-1 text-2xl font-extrabold tracking-[-0.03em] text-foreground">Skills library</h2><p class="mt-2 max-w-3xl text-sm leading-6 text-muted-foreground">Drop-in skill documents for AI agents. Copy a link and paste it to your AI to enable AxonRouter capabilities.</p></div><div class="inline-flex items-center gap-1 rounded-[4px] border border-border bg-secondary/75 p-1" aria-label="Skills sections"><button type="button" data-state="on" class="inline-flex min-h-9 cursor-pointer items-center justify-center gap-1.5 rounded-[4px] px-3 py-1.5 text-sm font-bold transition-colors disabled:cursor-not-allowed disabled:opacity-60 hover:bg-primary/10 hover:text-foreground bg-primary/15 text-primary min-w-24">Built-in</button><button type="button" data-state="off" class="inline-flex min-h-9 cursor-pointer items-center justify-center gap-1.5 rounded-[4px] px-3 py-1.5 text-sm font-bold text-muted-foreground transition-colors disabled:cursor-not-allowed disabled:opacity-60 hover:bg-primary/10 hover:text-foreground min-w-24">Custom</button></div></div><div class="rounded-[4px] border text-card-foreground border-primary/30 bg-primary/5"><div class="p-4 flex items-center gap-4 flex-wrap"><div class="size-10 rounded-lg flex items-center justify-center bg-primary/10 text-primary text-lg shrink-0">⚡</div><div class="min-w-0 flex-1"><p class="text-xs font-medium text-muted-foreground mb-1">Paste this to your AI agent to get started:</p><code class="text-xs font-mono text-foreground break-all">Read this skill and use it: <!-- -->/api/skills/axonrouter</code></div><button class="inline-flex cursor-pointer items-center justify-center rounded-[4px] border font-medium transition-[background,border-color,color,transform] duration-150 active:not-disabled:translate-y-px disabled:cursor-not-allowed disabled:opacity-60 [&_svg]:shrink-0 border-border bg-transparent text-foreground hover:border-primary/45 hover:bg-primary/15 min-h-8 px-2.5 py-1.5 h-7 text-xs gap-1.5" type="button"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-copy shrink-0 text-xs" aria-hidden="true"><rect width="14" height="14" x="8" y="8" rx="2" ry="2"></rect><path d="M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2"></path></svg>Copy prompt</button></div></div><div class="flex items-center gap-2"><div class="relative flex-1 max-w-sm"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-search shrink-0 pointer-events-none absolute left-2.5 top-1/2 -translate-y-1/2 text-muted-foreground text-sm" aria-hidden="true"><path d="m21 21-4.34-4.34"></path><circle cx="11" cy="11" r="8"></circle></svg><input data-slot="input" class="w-full min-w-0 rounded-[4px] border border-input bg-transparent px-2.5 py-1 transition-colors outline-none file:inline-flex file:h-6 file:border-0 file:bg-transparent file:text-sm file:font-medium file:text-foreground placeholder:text-muted-foreground focus-visible:border-ring focus-visible:ring-3 focus-visible:ring-ring/50 disabled:pointer-events-none disabled:cursor-not-allowed disabled:bg-input/50 disabled:opacity-50 aria-invalid:border-destructive aria-invalid:ring-3 aria-invalid:ring-destructive/20 md:text-sm dark:bg-input/30 dark:disabled:bg-input/80 dark:aria-invalid:border-destructive/50 dark:aria-invalid:ring-destructive/40 pl-8 h-8 text-xs" placeholder="Search skills..." value=""/></div><a href="https://github.com/rickicode/axonrouter/tree/main/skills" target="_blank" rel="noreferrer"><button class="inline-flex cursor-pointer items-center justify-center rounded-[4px] border font-medium transition-[background,border-color,color,transform] duration-150 active:not-disabled:translate-y-px disabled:cursor-not-allowed disabled:opacity-60 [&_svg]:shrink-0 border-border bg-transparent text-foreground hover:border-primary/45 hover:bg-primary/15 min-h-8 px-2.5 py-1.5 h-8 text-xs gap-1.5" type="button"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-arrow-right shrink-0 text-xs" aria-hidden="true"><path d="M5 12h14"></path><path d="m12 5 7 7-7 7"></path></svg>GitHub</button></a></div><div class="grid gap-3 sm:grid-cols-2 lg:grid-cols-3"><div class="sm:col-span-2 lg:col-span-3"><div class="rounded-[4px] border bg-card text-card-foreground group transition-shadow hover:shadow-md border-primary/50 ring-1 ring-primary/20"><div class="p-4 space-y-3"><div class="flex items-start gap-3"><div class="size-10 rounded-lg flex items-center justify-center shrink-0 text-lg bg-muted">⚡</div><div class="min-w-0 flex-1"><div class="flex items-center gap-2 flex-wrap"><h3 class="text-sm font-bold text-foreground truncate">AxonRouter (Entry)</h3><span class="inline-flex items-center gap-1.5 rounded-sm border font-bold tracking-[0.01em] border-primary/25 bg-primary/15 text-primary text-[10px] px-1.5 py-0">START HERE</span></div></div></div><p class="text-xs text-muted-foreground leading-relaxed line-clamp-2">Setup + index of all capabilities. Start here for auth, model discovery, and links to every capability skill.</p><div class="flex items-center gap-1.5 pt-1"><button class="inline-flex cursor-pointer items-center justify-center rounded-[4px] border font-medium transition-[background,border-color,color,transform] duration-150 active:not-disabled:translate-y-px disabled:cursor-not-allowed disabled:opacity-60 [&_svg]:shrink-0 border-border bg-transparent text-foreground hover:border-primary/45 hover:bg-primary/15 min-h-8 px-2.5 py-1.5 h-7 text-xs gap-1.5" type="button"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-copy shrink-0 text-xs" aria-hidden="true"><rect width="14" height="14" x="8" y="8" rx="2" ry="2"></rect><path d="M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2"></path></svg>Copy link</button><button class="inline-flex cursor-pointer items-center justify-center rounded-[4px] border font-medium transition-[background,border-color,color,transform] duration-150 active:not-disabled:translate-y-px disabled:cursor-not-allowed disabled:opacity-60 [&_svg]:shrink-0 border-border bg-transparent text-foreground hover:border-primary/45 hover:bg-primary/15 min-h-8 px-2.5 py-1.5 h-7 text-xs gap-1.5" type="button"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-copy shrink-0 text-xs" aria-hidden="true"><rect width="14" height="14" x="8" y="8" rx="2" ry="2"></rect><path d="M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2"></path></svg>Use skill</button><a href="https://github.com/rickicode/axonrouter/blob/main/skills/axonrouter/SKILL.md" target="_blank" rel="noreferrer" class="ml-auto"><button class="inline-flex cursor-pointer items-center justify-center rounded-[4px] border font-medium transition-[background,border-color,color,transform] duration-150 active:not-disabled:translate-y-px disabled:cursor-not-allowed disabled:opacity-60 [&_svg]:shrink-0 border-transparent bg-transparent hover:border-primary/45 hover:bg-primary/15 min-h-8 px-2.5 py-1.5 h-7 text-xs gap-1 text-muted-foreground hover:text-foreground" type="button"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-arrow-right shrink-0 text-xs" aria-hidden="true"><path d="M5 12h14"></path><path d="m12 5 7 7-7 7"></path></svg>Source</button></a></div></div></div></div><div class="rounded-[4px] border border-border bg-card text-card-foreground group transition-shadow hover:shadow-md"><div class="p-4 space-y-3"><div class="flex items-start gap-3"><div class="size-10 rounded-lg flex items-center justify-center shrink-0 text-lg bg-muted">⚡</div><div class="min-w-0 flex-1"><div class="flex items-center gap-2 flex-wrap"><h3 class="text-sm font-bold text-foreground truncate">Unified Routing API</h3></div><code class="text-[11px] text-muted-foreground font-mono">/v1/unified</code></div></div><p class="text-xs text-muted-foreground leading-relaxed line-clamp-2">Single multimodal contract for text, image, audio, and future video routing with a shared response envelope.</p><div class="flex items-center gap-1.5 pt-1"><button class="inline-flex cursor-pointer items-center justify-center rounded-[4px] border font-medium transition-[background,border-color,color,transform] duration-150 active:not-disabled:translate-y-px disabled:cursor-not-allowed disabled:opacity-60 [&_svg]:shrink-0 border-border bg-transparent text-foreground hover:border-primary/45 hover:bg-primary/15 min-h-8 px-2.5 py-1.5 h-7 text-xs gap-1.5" type="button"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-copy shrink-0 text-xs" aria-hidden="true"><rect width="14" height="14" x="8" y="8" rx="2" ry="2"></rect><path d="M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2"></path></svg>Copy link</button><button class="inline-flex cursor-pointer items-center justify-center rounded-[4px] border font-medium transition-[background,border-color,color,transform] duration-150 active:not-disabled:translate-y-px disabled:cursor-not-allowed disabled:opacity-60 [&_svg]:shrink-0 border-border bg-transparent text-foreground hover:border-primary/45 hover:bg-primary/15 min-h-8 px-2.5 py-1.5 h-7 text-xs gap-1.5" type="button"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-copy shrink-0 text-xs" aria-hidden="true"><rect width="14" height="14" x="8" y="8" rx="2" ry="2"></rect><path d="M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2"></path></svg>Use skill</button><a href="https://github.com/rickicode/axonrouter/blob/main/skills/axonrouter-unified/SKILL.md" target="_blank" rel="noreferrer" class="ml-auto"><button class="inline-flex cursor-pointer items-center justify-center rounded-[4px] border font-medium transition-[background,border-color,color,transform] duration-150 active:not-disabled:translate-y-px disabled:cursor-not-allowed disabled:opacity-60 [&_svg]:shrink-0 border-transparent bg-transparent hover:border-primary/45 hover:bg-primary/15 min-h-8 px-2.5 py-1.5 h-7 text-xs gap-1 text-muted-foreground hover:text-foreground" type="button"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-arrow-right shrink-0 text-xs" aria-hidden="true"><path d="M5 12h14"></path><path d="m12 5 7 7-7 7"></path></svg>Source</button></a></div></div></div><div class="rounded-[4px] border border-border bg-card text-card-foreground group transition-shadow hover:shadow-md"><div class="p-4 space-y-3"><div class="flex items-start gap-3"><div class="size-10 rounded-lg flex items-center justify-center shrink-0 text-lg bg-muted">💬</div><div class="min-w-0 flex-1"><div class="flex items-center gap-2 flex-wrap"><h3 class="text-sm font-bold text-foreground truncate">Chat</h3></div><code class="text-[11px] text-muted-foreground font-mono">/v1/chat/completions</code></div></div><p class="text-xs text-muted-foreground leading-relaxed line-clamp-2">Chat / code generation via OpenAI or Anthropic format with streaming.</p><div class="flex items-center gap-1.5 pt-1"><button class="inline-flex cursor-pointer items-center justify-center rounded-[4px] border font-medium transition-[background,border-color,color,transform] duration-150 active:not-disabled:translate-y-px disabled:cursor-not-allowed disabled:opacity-60 [&_svg]:shrink-0 border-border bg-transparent text-foreground hover:border-primary/45 hover:bg-primary/15 min-h-8 px-2.5 py-1.5 h-7 text-xs gap-1.5" type="button"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-copy shrink-0 text-xs" aria-hidden="true"><rect width="14" height="14" x="8" y="8" rx="2" ry="2"></rect><path d="M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2"></path></svg>Copy link</button><button class="inline-flex cursor-pointer items-center justify-center rounded-[4px] border font-medium transition-[background,border-color,color,transform] duration-150 active:not-disabled:translate-y-px disabled:cursor-not-allowed disabled:opacity-60 [&_svg]:shrink-0 border-border bg-transparent text-foreground hover:border-primary/45 hover:bg-primary/15 min-h-8 px-2.5 py-1.5 h-7 text-xs gap-1.5" type="button"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-copy shrink-0 text-xs" aria-hidden="true"><rect width="14" height="14" x="8" y="8" rx="2" ry="2"></rect><path d="M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2"></path></svg>Use skill</button><a href="https://github.com/rickicode/axonrouter/blob/main/skills/axonrouter-chat/SKILL.md" target="_blank" rel="noreferrer" class="ml-auto"><button class="inline-flex cursor-pointer items-center justify-center rounded-[4px] border font-medium transition-[background,border-color,color,transform] duration-150 active:not-disabled:translate-y-px disabled:cursor-not-allowed disabled:opacity-60 [&_svg]:shrink-0 border-transparent bg-transparent hover:border-primary/45 hover:bg-primary/15 min-h-8 px-2.5 py-1.5 h-7 text-xs gap-1 text-muted-foreground hover:text-foreground" type="button"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-arrow-right shrink-0 text-xs" aria-hidden="true"><path d="M5 12h14"></path><path d="m12 5 7 7-7 7"></path></svg>Source</button></a></div></div></div><div class="rounded-[4px] border border-border bg-card text-card-foreground group transition-shadow hover:shadow-md"><div class="p-4 space-y-3"><div class="flex items-start gap-3"><div class="size-10 rounded-lg flex items-center justify-center shrink-0 text-lg bg-muted">🖼️</div><div class="min-w-0 flex-1"><div class="flex items-center gap-2 flex-wrap"><h3 class="text-sm font-bold text-foreground truncate">Image Generation</h3></div><code class="text-[11px] text-muted-foreground font-mono">/v1/images/generations</code></div></div><p class="text-xs text-muted-foreground leading-relaxed line-clamp-2">Text-to-image via DALL-E, Imagen, FLUX, MiniMax, SDWebUI, and more.</p><div class="flex items-center gap-1.5 pt-1"><button class="inline-flex cursor-pointer items-center justify-center rounded-[4px] border font-medium transition-[background,border-color,color,transform] duration-150 active:not-disabled:translate-y-px disabled:cursor-not-allowed disabled:opacity-60 [&_svg]:shrink-0 border-border bg-transparent text-foreground hover:border-primary/45 hover:bg-primary/15 min-h-8 px-2.5 py-1.5 h-7 text-xs gap-1.5" type="button"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-copy shrink-0 text-xs" aria-hidden="true"><rect width="14" height="14" x="8" y="8" rx="2" ry="2"></rect><path d="M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2"></path></svg>Copy link</button><button class="inline-flex cursor-pointer items-center justify-center rounded-[4px] border font-medium transition-[background,border-color,color,transform] duration-150 active:not-disabled:translate-y-px disabled:cursor-not-allowed disabled:opacity-60 [&_svg]:shrink-0 border-border bg-transparent text-foreground hover:border-primary/45 hover:bg-primary/15 min-h-8 px-2.5 py-1.5 h-7 text-xs gap-1.5" type="button"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-copy shrink-0 text-xs" aria-hidden="true"><rect width="14" height="14" x="8" y="8" rx="2" ry="2"></rect><path d="M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2"></path></svg>Use skill</button><a href="https://github.com/rickicode/axonrouter/blob/main/skills/axonrouter-image/SKILL.md" target="_blank" rel="noreferrer" class="ml-auto"><button class="inline-flex cursor-pointer items-center justify-center rounded-[4px] border font-medium transition-[background,border-color,color,transform] duration-150 active:not-disabled:translate-y-px disabled:cursor-not-allowed disabled:opacity-60 [&_svg]:shrink-0 border-transparent bg-transparent hover:border-primary/45 hover:bg-primary/15 min-h-8 px-2.5 py-1.5 h-7 text-xs gap-1 text-muted-foreground hover:text-foreground" type="button"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-arrow-right shrink-0 text-xs" aria-hidden="true"><path d="M5 12h14"></path><path d="m12 5 7 7-7 7"></path></svg>Source</button></a></div></div></div><div class="rounded-[4px] border border-border bg-card text-card-foreground group transition-shadow hover:shadow-md"><div class="p-4 space-y-3"><div class="flex items-start gap-3"><div class="size-10 rounded-lg flex items-center justify-center shrink-0 text-lg bg-muted">🔊</div><div class="min-w-0 flex-1"><div class="flex items-center gap-2 flex-wrap"><h3 class="text-sm font-bold text-foreground truncate">Text-to-Speech</h3></div><code class="text-[11px] text-muted-foreground font-mono">/v1/audio/speech</code></div></div><p class="text-xs text-muted-foreground leading-relaxed line-clamp-2">Speech synthesis via OpenAI, ElevenLabs, Edge, Google, and Deepgram voices.</p><div class="flex items-center gap-1.5 pt-1"><button class="inline-flex cursor-pointer items-center justify-center rounded-[4px] border font-medium transition-[background,border-color,color,transform] duration-150 active:not-disabled:translate-y-px disabled:cursor-not-allowed disabled:opacity-60 [&_svg]:shrink-0 border-border bg-transparent text-foreground hover:border-primary/45 hover:bg-primary/15 min-h-8 px-2.5 py-1.5 h-7 text-xs gap-1.5" type="button"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-copy shrink-0 text-xs" aria-hidden="true"><rect width="14" height="14" x="8" y="8" rx="2" ry="2"></rect><path d="M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2"></path></svg>Copy link</button><button class="inline-flex cursor-pointer items-center justify-center rounded-[4px] border font-medium transition-[background,border-color,color,transform] duration-150 active:not-disabled:translate-y-px disabled:cursor-not-allowed disabled:opacity-60 [&_svg]:shrink-0 border-border bg-transparent text-foreground hover:border-primary/45 hover:bg-primary/15 min-h-8 px-2.5 py-1.5 h-7 text-xs gap-1.5" type="button"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-copy shrink-0 text-xs" aria-hidden="true"><rect width="14" height="14" x="8" y="8" rx="2" ry="2"></rect><path d="M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2"></path></svg>Use skill</button><a href="https://github.com/rickicode/axonrouter/blob/main/skills/axonrouter-tts/SKILL.md" target="_blank" rel="noreferrer" class="ml-auto"><button class="inline-flex cursor-pointer items-center justify-center rounded-[4px] border font-medium transition-[background,border-color,color,transform] duration-150 active:not-disabled:translate-y-px disabled:cursor-not-allowed disabled:opacity-60 [&_svg]:shrink-0 border-transparent bg-transparent hover:border-primary/45 hover:bg-primary/15 min-h-8 px-2.5 py-1.5 h-7 text-xs gap-1 text-muted-foreground hover:text-foreground" type="button"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-arrow-right shrink-0 text-xs" aria-hidden="true"><path d="M5 12h14"></path><path d="m12 5 7 7-7 7"></path></svg>Source</button></a></div></div></div><div class="rounded-[4px] border border-border bg-card text-card-foreground group transition-shadow hover:shadow-md"><div class="p-4 space-y-3"><div class="flex items-start gap-3"><div class="size-10 rounded-lg flex items-center justify-center shrink-0 text-lg bg-muted">🎙️</div><div class="min-w-0 flex-1"><div class="flex items-center gap-2 flex-wrap"><h3 class="text-sm font-bold text-foreground truncate">Speech-to-Text</h3></div><code class="text-[11px] text-muted-foreground font-mono">/v1/audio/transcriptions</code></div></div><p class="text-xs text-muted-foreground leading-relaxed line-clamp-2">Transcribe audio via OpenAI Whisper, Groq, Gemini, Deepgram, AssemblyAI, and more.</p><div class="flex items-center gap-1.5 pt-1"><button class="inline-flex cursor-pointer items-center justify-center rounded-[4px] border font-medium transition-[background,border-color,color,transform] duration-150 active:not-disabled:translate-y-px disabled:cursor-not-allowed disabled:opacity-60 [&_svg]:shrink-0 border-border bg-transparent text-foreground hover:border-primary/45 hover:bg-primary/15 min-h-8 px-2.5 py-1.5 h-7 text-xs gap-1.5" type="button"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-copy shrink-0 text-xs" aria-hidden="true"><rect width="14" height="14" x="8" y="8" rx="2" ry="2"></rect><path d="M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2"></path></svg>Copy link</button><button class="inline-flex cursor-pointer items-center justify-center rounded-[4px] border font-medium transition-[background,border-color,color,transform] duration-150 active:not-disabled:translate-y-px disabled:cursor-not-allowed disabled:opacity-60 [&_svg]:shrink-0 border-border bg-transparent text-foreground hover:border-primary/45 hover:bg-primary/15 min-h-8 px-2.5 py-1.5 h-7 text-xs gap-1.5" type="button"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-copy shrink-0 text-xs" aria-hidden="true"><rect width="14" height="14" x="8" y="8" rx="2" ry="2"></rect><path d="M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2"></path></svg>Use skill</button><a href="https://github.com/rickicode/axonrouter/blob/main/skills/axonrouter-stt/SKILL.md" target="_blank" rel="noreferrer" class="ml-auto"><button class="inline-flex cursor-pointer items-center justify-center rounded-[4px] border font-medium transition-[background,border-color,color,transform] duration-150 active:not-disabled:translate-y-px disabled:cursor-not-allowed disabled:opacity-60 [&_svg]:shrink-0 border-transparent bg-transparent hover:border-primary/45 hover:bg-primary/15 min-h-8 px-2.5 py-1.5 h-7 text-xs gap-1 text-muted-foreground hover:text-foreground" type="button"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-arrow-right shrink-0 text-xs" aria-hidden="true"><path d="M5 12h14"></path><path d="m12 5 7 7-7 7"></path></svg>Source</button></a></div></div></div><div class="rounded-[4px] border border-border bg-card text-card-foreground group transition-shadow hover:shadow-md"><div class="p-4 space-y-3"><div class="flex items-start gap-3"><div class="size-10 rounded-lg flex items-center justify-center shrink-0 text-lg bg-muted">📐</div><div class="min-w-0 flex-1"><div class="flex items-center gap-2 flex-wrap"><h3 class="text-sm font-bold text-foreground truncate">Embeddings</h3></div><code class="text-[11px] text-muted-foreground font-mono">/v1/embeddings</code></div></div><p class="text-xs text-muted-foreground leading-relaxed line-clamp-2">Vectors for RAG and semantic search via OpenAI, Gemini, Mistral, and others.</p><div class="flex items-center gap-1.5 pt-1"><button class="inline-flex cursor-pointer items-center justify-center rounded-[4px] border font-medium transition-[background,border-color,color,transform] duration-150 active:not-disabled:translate-y-px disabled:cursor-not-allowed disabled:opacity-60 [&_svg]:shrink-0 border-border bg-transparent text-foreground hover:border-primary/45 hover:bg-primary/15 min-h-8 px-2.5 py-1.5 h-7 text-xs gap-1.5" type="button"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-copy shrink-0 text-xs" aria-hidden="true"><rect width="14" height="14" x="8" y="8" rx="2" ry="2"></rect><path d="M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2"></path></svg>Copy link</button><button class="inline-flex cursor-pointer items-center justify-center rounded-[4px] border font-medium transition-[background,border-color,color,transform] duration-150 active:not-disabled:translate-y-px disabled:cursor-not-allowed disabled:opacity-60 [&_svg]:shrink-0 border-border bg-transparent text-foreground hover:border-primary/45 hover:bg-primary/15 min-h-8 px-2.5 py-1.5 h-7 text-xs gap-1.5" type="button"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-copy shrink-0 text-xs" aria-hidden="true"><rect width="14" height="14" x="8" y="8" rx="2" ry="2"></rect><path d="M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2"></path></svg>Use skill</button><a href="https://github.com/rickicode/axonrouter/blob/main/skills/axonrouter-embeddings/SKILL.md" target="_blank" rel="noreferrer" class="ml-auto"><button class="inline-flex cursor-pointer items-center justify-center rounded-[4px] border font-medium transition-[background,border-color,color,transform] duration-150 active:not-disabled:translate-y-px disabled:cursor-not-allowed disabled:opacity-60 [&_svg]:shrink-0 border-transparent bg-transparent hover:border-primary/45 hover:bg-primary/15 min-h-8 px-2.5 py-1.5 h-7 text-xs gap-1 text-muted-foreground hover:text-foreground" type="button"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-arrow-right shrink-0 text-xs" aria-hidden="true"><path d="M5 12h14"></path><path d="m12 5 7 7-7 7"></path></svg>Source</button></a></div></div></div><div class="rounded-[4px] border border-border bg-card text-card-foreground group transition-shadow hover:shadow-md"><div class="p-4 space-y-3"><div class="flex items-start gap-3"><div class="size-10 rounded-lg flex items-center justify-center shrink-0 text-lg bg-muted">🔍</div><div class="min-w-0 flex-1"><div class="flex items-center gap-2 flex-wrap"><h3 class="text-sm font-bold text-foreground truncate">Web Search</h3></div><code class="text-[11px] text-muted-foreground font-mono">/v1/search</code></div></div><p class="text-xs text-muted-foreground leading-relaxed line-clamp-2">Search via Tavily, Exa, Brave, Serper, SearXNG, and related providers.</p><div class="flex items-center gap-1.5 pt-1"><button class="inline-flex cursor-pointer items-center justify-center rounded-[4px] border font-medium transition-[background,border-color,color,transform] duration-150 active:not-disabled:translate-y-px disabled:cursor-not-allowed disabled:opacity-60 [&_svg]:shrink-0 border-border bg-transparent text-foreground hover:border-primary/45 hover:bg-primary/15 min-h-8 px-2.5 py-1.5 h-7 text-xs gap-1.5" type="button"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-copy shrink-0 text-xs" aria-hidden="true"><rect width="14" height="14" x="8" y="8" rx="2" ry="2"></rect><path d="M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2"></path></svg>Copy link</button><button class="inline-flex cursor-pointer items-center justify-center rounded-[4px] border font-medium transition-[background,border-color,color,transform] duration-150 active:not-disabled:translate-y-px disabled:cursor-not-allowed disabled:opacity-60 [&_svg]:shrink-0 border-border bg-transparent text-foreground hover:border-primary/45 hover:bg-primary/15 min-h-8 px-2.5 py-1.5 h-7 text-xs gap-1.5" type="button"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-copy shrink-0 text-xs" aria-hidden="true"><rect width="14" height="14" x="8" y="8" rx="2" ry="2"></rect><path d="M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2"></path></svg>Use skill</button><a href="https://github.com/rickicode/axonrouter/blob/main/skills/axonrouter-web-search/SKILL.md" target="_blank" rel="noreferrer" class="ml-auto"><button class="inline-flex cursor-pointer items-center justify-center rounded-[4px] border font-medium transition-[background,border-color,color,transform] duration-150 active:not-disabled:translate-y-px disabled:cursor-not-allowed disabled:opacity-60 [&_svg]:shrink-0 border-transparent bg-transparent hover:border-primary/45 hover:bg-primary/15 min-h-8 px-2.5 py-1.5 h-7 text-xs gap-1 text-muted-foreground hover:text-foreground" type="button"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-arrow-right shrink-0 text-xs" aria-hidden="true"><path d="M5 12h14"></path><path d="m12 5 7 7-7 7"></path></svg>Source</button></a></div></div></div><div class="rounded-[4px] border border-border bg-card text-card-foreground group transition-shadow hover:shadow-md"><div class="p-4 space-y-3"><div class="flex items-start gap-3"><div class="size-10 rounded-lg flex items-center justify-center shrink-0 text-lg bg-muted">🌐</div><div class="min-w-0 flex-1"><div class="flex items-center gap-2 flex-wrap"><h3 class="text-sm font-bold text-foreground truncate">Web Fetch</h3></div><code class="text-[11px] text-muted-foreground font-mono">/v1/web/fetch</code></div></div><p class="text-xs text-muted-foreground leading-relaxed line-clamp-2">Fetch URL content as markdown/text/HTML via Firecrawl, Jina, Tavily, and Exa.</p><div class="flex items-center gap-1.5 pt-1"><button class="inline-flex cursor-pointer items-center justify-center rounded-[4px] border font-medium transition-[background,border-color,color,transform] duration-150 active:not-disabled:translate-y-px disabled:cursor-not-allowed disabled:opacity-60 [&_svg]:shrink-0 border-border bg-transparent text-foreground hover:border-primary/45 hover:bg-primary/15 min-h-8 px-2.5 py-1.5 h-7 text-xs gap-1.5" type="button"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-copy shrink-0 text-xs" aria-hidden="true"><rect width="14" height="14" x="8" y="8" rx="2" ry="2"></rect><path d="M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2"></path></svg>Copy link</button><button class="inline-flex cursor-pointer items-center justify-center rounded-[4px] border font-medium transition-[background,border-color,color,transform] duration-150 active:not-disabled:translate-y-px disabled:cursor-not-allowed disabled:opacity-60 [&_svg]:shrink-0 border-border bg-transparent text-foreground hover:border-primary/45 hover:bg-primary/15 min-h-8 px-2.5 py-1.5 h-7 text-xs gap-1.5" type="button"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-copy shrink-0 text-xs" aria-hidden="true"><rect width="14" height="14" x="8" y="8" rx="2" ry="2"></rect><path d="M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2"></path></svg>Use skill</button><a href="https://github.com/rickicode/axonrouter/blob/main/skills/axonrouter-web-fetch/SKILL.md" target="_blank" rel="noreferrer" class="ml-auto"><button class="inline-flex cursor-pointer items-center justify-center rounded-[4px] border font-medium transition-[background,border-color,color,transform] duration-150 active:not-disabled:translate-y-px disabled:cursor-not-allowed disabled:opacity-60 [&_svg]:shrink-0 border-transparent bg-transparent hover:border-primary/45 hover:bg-primary/15 min-h-8 px-2.5 py-1.5 h-7 text-xs gap-1 text-muted-foreground hover:text-foreground" type="button"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-arrow-right shrink-0 text-xs" aria-hidden="true"><path d="M5 12h14"></path><path d="m12 5 7 7-7 7"></path></svg>Source</button></a></div></div></div></div></div><!--$--><!--/$--></div><script>$RB=[];$RV=function(a){$RT=performance.now();for(var b=0;b<a.length;b+=2){var c=a[b],e=a[b+1];null!==e.parentNode&&e.parentNode.removeChild(e);var f=c.parentNode;if(f){var g=c.previousSibling,h=0;do{if(c&&8===c.nodeType){var d=c.data;if("/$"===d||"/&"===d)if(0===h)break;else h--;else"$"!==d&&"$?"!==d&&"$~"!==d&&"$!"!==d&&"&"!==d||h++}d=c.nextSibling;f.removeChild(c);c=d}while(c);for(;e.firstChild;)f.insertBefore(e.firstChild,c);g.data="$";g._reactRetry&&requestAnimationFrame(g._reactRetry)}}a.length=0};
|
|
2
|
+
$RC=function(a,b){if(b=document.getElementById(b))(a=document.getElementById(a))?(a.previousSibling.data="$~",$RB.push(a,b),2===$RB.length&&("number"!==typeof $RT?requestAnimationFrame($RV.bind(null,$RB)):(a=performance.now(),setTimeout($RV.bind(null,$RB),2300>a&&2E3<a?2300-a:$RT+300-a)))):b.parentNode.removeChild(b)};$RC("B:0","S:0")</script><script>(self.__next_f=self.__next_f||[]).push([0])</script><script>self.__next_f.push([1,"1:\"$Sreact.fragment\"\n2:I[450222,[\"/_next/static/chunks/0r04.q6_-b836.js\",\"/_next/static/chunks/0i.l9589uvx0j.js\",\"/_next/static/chunks/0j3dsi52f1dl3.js\",\"/_next/static/chunks/0soxzgvx8maah.js\",\"/_next/static/chunks/056ne4nz_q~nb.js\",\"/_next/static/chunks/05030e9junrlf.js\",\"/_next/static/chunks/0v9isxr6.bcmz.js\",\"/_next/static/chunks/07c6k_1f5h-sr.js\",\"/_next/static/chunks/13cjgpm_agha_.js\",\"/_next/static/chunks/0vqox~1257tth.js\",\"/_next/static/chunks/03~wesrv2kvkm.js\",\"/_next/static/chunks/0_e~bfjzzxje8.js\",\"/_next/static/chunks/10xuig64fgu6..js\"],\"ThemeProvider\"]\n3:I[604988,[\"/_next/static/chunks/0r04.q6_-b836.js\",\"/_next/static/chunks/0i.l9589uvx0j.js\",\"/_next/static/chunks/0j3dsi52f1dl3.js\"],\"QueryProvider\"]\n4:I[730362,[\"/_next/static/chunks/0r04.q6_-b836.js\",\"/_next/static/chunks/0i.l9589uvx0j.js\",\"/_next/static/chunks/0j3dsi52f1dl3.js\"],\"RuntimeI18nProvider\"]\n5:I[339756,[\"/_next/static/chunks/0r04.q6_-b836.js\",\"/_next/static/chunks/0i.l9589uvx0j.js\",\"/_next/static/chunks/0j3dsi52f1dl3.js\"],\"default\"]\n6:I[837457,[\"/_next/static/chunks/0r04.q6_-b836.js\",\"/_next/static/chunks/0i.l9589uvx0j.js\",\"/_next/static/chunks/0j3dsi52f1dl3.js\"],\"default\"]\n7:I[165149,[\"/_next/static/chunks/0r04.q6_-b836.js\",\"/_next/static/chunks/0i.l9589uvx0j.js\",\"/_next/static/chunks/0j3dsi52f1dl3.js\",\"/_next/static/chunks/0soxzgvx8maah.js\",\"/_next/static/chunks/056ne4nz_q~nb.js\",\"/_next/static/chunks/05030e9junrlf.js\",\"/_next/static/chunks/0v9isxr6.bcmz.js\",\"/_next/static/chunks/07c6k_1f5h-sr.js\",\"/_next/static/chunks/13cjgpm_agha_.js\",\"/_next/static/chunks/0vqox~1257tth.js\",\"/_next/static/chunks/03~wesrv2kvkm.js\",\"/_next/static/chunks/0_e~bfjzzxje8.js\",\"/_next/static/chunks/10xuig64fgu6..js\"],\"default\"]\nf:I[168027,[\"/_next/static/chunks/0r04.q6_-b836.js\",\"/_next/static/chunks/0i.l9589uvx0j.js\",\"/_next/static/chunks/0j3dsi52f1dl3.js\"],\"default\",1]\n:HL[\"/_next/static/chunks/0chvw-cg-07m9.css\",\"style\"]\n:HL[\"/_next/static/chunks/0lwx_b7jnm00z.css\",\"style\"]\n:HL[\"/_next/static/chunks/0jvmviuftg5e2.css\",\"style\"]\n:HL[\"https://fonts.googleapis.com/css2?family=Material+Symbols+Outlined:opsz,wght,FILL,GRAD@20..48,100..700,0..1,-50..200\u0026display=swap\",\"style\"]\n"])</script><script>self.__next_f.push([1,"0:{\"P\":null,\"c\":[\"\",\"dashboard\",\"skills\"],\"q\":\"\",\"i\":false,\"f\":[[[\"\",{\"children\":[\"(dashboard)\",{\"children\":[\"dashboard\",{\"children\":[\"skills\",{\"children\":[\"__PAGE__\",{}]}]},\"$undefined\",\"$undefined\",4]},\"$undefined\",\"$undefined\",8]},\"$undefined\",\"$undefined\",24],[[\"$\",\"$1\",\"c\",{\"children\":[[[\"$\",\"link\",\"0\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/chunks/0chvw-cg-07m9.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}],[\"$\",\"link\",\"1\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/chunks/0lwx_b7jnm00z.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}],[\"$\",\"script\",\"script-0\",{\"src\":\"/_next/static/chunks/0r04.q6_-b836.js\",\"async\":true,\"nonce\":\"$undefined\"}],[\"$\",\"script\",\"script-1\",{\"src\":\"/_next/static/chunks/0i.l9589uvx0j.js\",\"async\":true,\"nonce\":\"$undefined\"}],[\"$\",\"script\",\"script-2\",{\"src\":\"/_next/static/chunks/0j3dsi52f1dl3.js\",\"async\":true,\"nonce\":\"$undefined\"}]],[\"$\",\"html\",null,{\"lang\":\"en\",\"suppressHydrationWarning\":true,\"children\":[[\"$\",\"head\",null,{\"children\":[[\"$\",\"link\",null,{\"rel\":\"preconnect\",\"href\":\"https://fonts.googleapis.com\"}],[\"$\",\"link\",null,{\"rel\":\"preconnect\",\"href\":\"https://fonts.gstatic.com\",\"crossOrigin\":\"anonymous\"}],[\"$\",\"link\",null,{\"rel\":\"preload\",\"href\":\"https://fonts.googleapis.com/css2?family=Material+Symbols+Outlined:opsz,wght,FILL,GRAD@20..48,100..700,0..1,-50..200\u0026display=swap\",\"as\":\"style\"}],[\"$\",\"link\",null,{\"href\":\"https://fonts.googleapis.com/css2?family=Material+Symbols+Outlined:opsz,wght,FILL,GRAD@20..48,100..700,0..1,-50..200\u0026display=swap\",\"rel\":\"stylesheet\"}]]}],[\"$\",\"body\",null,{\"children\":[\"$\",\"$L2\",null,{\"children\":[\"$\",\"$L3\",null,{\"children\":[\"$\",\"$L4\",null,{\"children\":[\"$\",\"$L5\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L6\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":[[[\"$\",\"title\",null,{\"children\":\"404: This page could not be found.\"}],[\"$\",\"div\",null,{\"style\":{\"fontFamily\":\"system-ui,\\\"Segoe UI\\\",Roboto,Helvetica,Arial,sans-serif,\\\"Apple Color Emoji\\\",\\\"Segoe UI Emoji\\\"\",\"height\":\"100vh\",\"textAlign\":\"center\",\"display\":\"flex\",\"flexDirection\":\"column\",\"alignItems\":\"center\",\"justifyContent\":\"center\"},\"children\":[\"$\",\"div\",null,{\"children\":[[\"$\",\"style\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}\"}}],[\"$\",\"h1\",null,{\"className\":\"next-error-h1\",\"style\":{\"display\":\"inline-block\",\"margin\":\"0 20px 0 0\",\"padding\":\"0 23px 0 0\",\"fontSize\":24,\"fontWeight\":500,\"verticalAlign\":\"top\",\"lineHeight\":\"49px\"},\"children\":404}],[\"$\",\"div\",null,{\"style\":{\"display\":\"inline-block\"},\"children\":[\"$\",\"h2\",null,{\"style\":{\"fontSize\":14,\"fontWeight\":400,\"lineHeight\":\"49px\",\"margin\":0},\"children\":\"This page could not be found.\"}]}]]}]}]],[]],\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]}]}]}]}]]}]]}],{\"children\":[[\"$\",\"$1\",\"c\",{\"children\":[[[\"$\",\"link\",\"0\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/chunks/0jvmviuftg5e2.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}],[\"$\",\"script\",\"script-0\",{\"src\":\"/_next/static/chunks/0soxzgvx8maah.js\",\"async\":true,\"nonce\":\"$undefined\"}],[\"$\",\"script\",\"script-1\",{\"src\":\"/_next/static/chunks/056ne4nz_q~nb.js\",\"async\":true,\"nonce\":\"$undefined\"}],[\"$\",\"script\",\"script-2\",{\"src\":\"/_next/static/chunks/05030e9junrlf.js\",\"async\":true,\"nonce\":\"$undefined\"}],[\"$\",\"script\",\"script-3\",{\"src\":\"/_next/static/chunks/0v9isxr6.bcmz.js\",\"async\":true,\"nonce\":\"$undefined\"}],[\"$\",\"script\",\"script-4\",{\"src\":\"/_next/static/chunks/07c6k_1f5h-sr.js\",\"async\":true,\"nonce\":\"$undefined\"}],[\"$\",\"script\",\"script-5\",{\"src\":\"/_next/static/chunks/13cjgpm_agha_.js\",\"async\":true,\"nonce\":\"$undefined\"}],[\"$\",\"script\",\"script-6\",{\"src\":\"/_next/static/chunks/0vqox~1257tth.js\",\"async\":true,\"nonce\":\"$undefined\"}],[\"$\",\"script\",\"script-7\",{\"src\":\"/_next/static/chunks/03~wesrv2kvkm.js\",\"async\":true,\"nonce\":\"$undefined\"}],[\"$\",\"script\",\"script-8\",{\"src\":\"/_next/static/chunks/0_e~bfjzzxje8.js\",\"async\":true,\"nonce\":\"$undefined\"}],[\"$\",\"script\",\"script-9\",{\"src\":\"/_next/static/chunks/10xuig64fgu6..js\",\"async\":true,\"nonce\":\"$undefined\"}]],[\"$\",\"$L7\",null,{\"children\":[\"$\",\"$L5\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L6\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":[[[\"$\",\"title\",null,{\"children\":\"404: This page could not be found.\"}],[\"$\",\"div\",null,{\"style\":\"$0:f:0:1:0:props:children:1:props:children:1:props:children:props:children:props:children:props:children:props:notFound:0:1:props:style\",\"children\":[\"$\",\"div\",null,{\"children\":[[\"$\",\"style\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}\"}}],\"$L8\",\"$L9\"]}]}]],[]],\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]}]]}],{\"children\":[\"$La\",{\"children\":[\"$Lb\",{\"children\":[\"$Lc\",{},null,false,null]},null,false,\"$@d\"]},null,false,\"$@d\"]},null,false,null]},null,false,null],\"$Le\",false]],\"m\":\"$undefined\",\"G\":[\"$f\",[\"$L10\",\"$L11\"]],\"S\":true,\"h\":null,\"s\":\"$undefined\",\"l\":\"$undefined\",\"p\":\"$undefined\",\"d\":\"$undefined\",\"b\":\"M2h-hQnrMHLeo3VEIuZ5a\"}\n"])</script><script>self.__next_f.push([1,"12:I[339756,[\"/_next/static/chunks/0r04.q6_-b836.js\",\"/_next/static/chunks/0i.l9589uvx0j.js\",\"/_next/static/chunks/0j3dsi52f1dl3.js\"],\"LoadingBoundaryProvider\"]\n13:I[347257,[\"/_next/static/chunks/0r04.q6_-b836.js\",\"/_next/static/chunks/0i.l9589uvx0j.js\",\"/_next/static/chunks/0j3dsi52f1dl3.js\"],\"ClientPageRoot\"]\n14:I[251718,[\"/_next/static/chunks/0r04.q6_-b836.js\",\"/_next/static/chunks/0i.l9589uvx0j.js\",\"/_next/static/chunks/0j3dsi52f1dl3.js\",\"/_next/static/chunks/0soxzgvx8maah.js\",\"/_next/static/chunks/056ne4nz_q~nb.js\",\"/_next/static/chunks/05030e9junrlf.js\",\"/_next/static/chunks/0v9isxr6.bcmz.js\",\"/_next/static/chunks/07c6k_1f5h-sr.js\",\"/_next/static/chunks/13cjgpm_agha_.js\",\"/_next/static/chunks/0vqox~1257tth.js\",\"/_next/static/chunks/03~wesrv2kvkm.js\",\"/_next/static/chunks/0_e~bfjzzxje8.js\",\"/_next/static/chunks/10xuig64fgu6..js\",\"/_next/static/chunks/0v8acd5buc5xi.js\"],\"default\"]\n17:I[897367,[\"/_next/static/chunks/0r04.q6_-b836.js\",\"/_next/static/chunks/0i.l9589uvx0j.js\",\"/_next/static/chunks/0j3dsi52f1dl3.js\"],\"OutletBoundary\"]\n18:\"$Sreact.suspense\"\n1b:I[897367,[\"/_next/static/chunks/0r04.q6_-b836.js\",\"/_next/static/chunks/0i.l9589uvx0j.js\",\"/_next/static/chunks/0j3dsi52f1dl3.js\"],\"ViewportBoundary\"]\n1d:I[897367,[\"/_next/static/chunks/0r04.q6_-b836.js\",\"/_next/static/chunks/0i.l9589uvx0j.js\",\"/_next/static/chunks/0j3dsi52f1dl3.js\"],\"MetadataBoundary\"]\n8:[\"$\",\"h1\",null,{\"className\":\"next-error-h1\",\"style\":\"$0:f:0:1:0:props:children:1:props:children:1:props:children:props:children:props:children:props:children:props:notFound:0:1:props:children:props:children:1:props:style\",\"children\":404}]\n9:[\"$\",\"div\",null,{\"style\":\"$0:f:0:1:0:props:children:1:props:children:1:props:children:props:children:props:children:props:children:props:notFound:0:1:props:children:props:children:2:props:style\",\"children\":[\"$\",\"h2\",null,{\"style\":\"$0:f:0:1:0:props:children:1:props:children:1:props:children:props:children:props:children:props:children:props:notFound:0:1:props:children:props:children:2:props:children:props:style\",\"children\":\"This page could not be found.\"}]}]\n"])</script><script>self.__next_f.push([1,"a:[\"$\",\"$L12\",null,{\"loading\":[[\"$\",\"div\",\"l\",{\"className\":\"flex flex-col gap-6 p-6 lg:p-10\",\"children\":[[\"$\",\"div\",null,{\"className\":\"grid gap-4 md:grid-cols-3\",\"children\":[[\"$\",\"div\",\"0\",{\"className\":\"rounded-[4px] border border-border bg-card p-5\",\"children\":[[\"$\",\"div\",null,{\"className\":\"animate-pulse rounded-[4px] bg-foreground/10 mb-4 h-4 w-24\"}],[\"$\",\"div\",null,{\"className\":\"animate-pulse rounded-[4px] bg-foreground/10 h-8 w-20\"}]]}],[\"$\",\"div\",\"1\",{\"className\":\"rounded-[4px] border border-border bg-card p-5\",\"children\":[[\"$\",\"div\",null,{\"className\":\"animate-pulse rounded-[4px] bg-foreground/10 mb-4 h-4 w-24\"}],[\"$\",\"div\",null,{\"className\":\"animate-pulse rounded-[4px] bg-foreground/10 h-8 w-20\"}]]}],[\"$\",\"div\",\"2\",{\"className\":\"rounded-[4px] border border-border bg-card p-5\",\"children\":[[\"$\",\"div\",null,{\"className\":\"animate-pulse rounded-[4px] bg-foreground/10 mb-4 h-4 w-24\"}],[\"$\",\"div\",null,{\"className\":\"animate-pulse rounded-[4px] bg-foreground/10 h-8 w-20\"}]]}]]}],[\"$\",\"div\",null,{\"className\":\"grid gap-6 xl:grid-cols-[1.5fr_1fr]\",\"children\":[[\"$\",\"div\",null,{\"className\":\"rounded-[4px] border border-border bg-card p-6\",\"children\":[[\"$\",\"div\",null,{\"className\":\"animate-pulse rounded-[4px] bg-foreground/10 mb-5 h-5 w-48\"}],[\"$\",\"div\",null,{\"className\":\"space-y-3\",\"children\":[[\"$\",\"div\",\"0\",{\"className\":\"animate-pulse rounded-[4px] bg-foreground/10 h-12 w-full\"}],[\"$\",\"div\",\"1\",{\"className\":\"animate-pulse rounded-[4px] bg-foreground/10 h-12 w-full\"}],[\"$\",\"div\",\"2\",{\"className\":\"animate-pulse rounded-[4px] bg-foreground/10 h-12 w-full\"}],[\"$\",\"div\",\"3\",{\"className\":\"animate-pulse rounded-[4px] bg-foreground/10 h-12 w-full\"}],[\"$\",\"div\",\"4\",{\"className\":\"animate-pulse rounded-[4px] bg-foreground/10 h-12 w-full\"}]]}]]}],[\"$\",\"div\",null,{\"className\":\"rounded-[4px] border border-border bg-card p-6\",\"children\":[[\"$\",\"div\",null,{\"className\":\"animate-pulse rounded-[4px] bg-foreground/10 mb-5 h-5 w-32\"}],[\"$\",\"div\",null,{\"className\":\"space-y-4\",\"children\":[[\"$\",\"div\",\"0\",{\"className\":\"space-y-2\",\"children\":[[\"$\",\"div\",null,{\"className\":\"animate-pulse rounded-[4px] bg-foreground/10 h-3 w-20\"}],[\"$\",\"div\",null,{\"className\":\"animate-pulse rounded-[4px] bg-foreground/10 h-10 w-full\"}]]}],[\"$\",\"div\",\"1\",{\"className\":\"space-y-2\",\"children\":[[\"$\",\"div\",null,{\"className\":\"animate-pulse rounded-[4px] bg-foreground/10 h-3 w-20\"}],[\"$\",\"div\",null,{\"className\":\"animate-pulse rounded-[4px] bg-foreground/10 h-10 w-full\"}]]}],[\"$\",\"div\",\"2\",{\"className\":\"space-y-2\",\"children\":[[\"$\",\"div\",null,{\"className\":\"animate-pulse rounded-[4px] bg-foreground/10 h-3 w-20\"}],[\"$\",\"div\",null,{\"className\":\"animate-pulse rounded-[4px] bg-foreground/10 h-10 w-full\"}]]}],[\"$\",\"div\",\"3\",{\"className\":\"space-y-2\",\"children\":[[\"$\",\"div\",null,{\"className\":\"animate-pulse rounded-[4px] bg-foreground/10 h-3 w-20\"}],[\"$\",\"div\",null,{\"className\":\"animate-pulse rounded-[4px] bg-foreground/10 h-10 w-full\"}]]}]]}]]}]]}]]}],[],[]],\"children\":[\"$\",\"$1\",\"c\",{\"children\":[null,[\"$\",\"$L5\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L6\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":\"$undefined\",\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]]}]}]\n"])</script><script>self.__next_f.push([1,"b:[\"$\",\"$1\",\"c\",{\"children\":[null,[\"$\",\"$L5\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L6\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":\"$undefined\",\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]]}]\nc:[\"$\",\"$1\",\"c\",{\"children\":[[\"$\",\"$L13\",null,{\"Component\":\"$14\",\"serverProvidedParams\":{\"searchParams\":{},\"params\":{},\"promises\":[\"$@15\",\"$@16\"]}}],[[\"$\",\"script\",\"script-0\",{\"src\":\"/_next/static/chunks/0v8acd5buc5xi.js\",\"async\":true,\"nonce\":\"$undefined\"}]],[\"$\",\"$L17\",null,{\"children\":[\"$\",\"$18\",null,{\"name\":\"Next.MetadataOutlet\",\"children\":\"$@19\"}]}]]}]\n1a:[]\nd:\"$W1a\"\ne:[\"$\",\"$1\",\"h\",{\"children\":[null,[\"$\",\"$L1b\",null,{\"children\":\"$L1c\"}],[\"$\",\"div\",null,{\"hidden\":true,\"children\":[\"$\",\"$L1d\",null,{\"children\":[\"$\",\"$18\",null,{\"name\":\"Next.Metadata\",\"children\":\"$L1e\"}]}]}],null]}]\n10:[\"$\",\"link\",\"0\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/chunks/0chvw-cg-07m9.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}]\n11:[\"$\",\"link\",\"1\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/chunks/0lwx_b7jnm00z.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}]\n"])</script><script>self.__next_f.push([1,"15:{}\n16:\"$c:props:children:0:props:serverProvidedParams:params\"\n"])</script><script>self.__next_f.push([1,"1c:[[\"$\",\"meta\",\"0\",{\"charSet\":\"utf-8\"}],[\"$\",\"meta\",\"1\",{\"name\":\"viewport\",\"content\":\"width=device-width, initial-scale=1\"}],[\"$\",\"meta\",\"2\",{\"name\":\"theme-color\",\"content\":\"#201d1d\"}]]\n"])</script><script>self.__next_f.push([1,"1f:I[27201,[\"/_next/static/chunks/0r04.q6_-b836.js\",\"/_next/static/chunks/0i.l9589uvx0j.js\",\"/_next/static/chunks/0j3dsi52f1dl3.js\"],\"IconMark\"]\n19:null\n1e:[[\"$\",\"title\",\"0\",{\"children\":\"Dashboard - AxonRouter\"}],[\"$\",\"meta\",\"1\",{\"name\":\"description\",\"content\":\"One endpoint for all your AI providers. Manage keys, monitor usage, and scale effortlessly.\"}],[\"$\",\"link\",\"2\",{\"rel\":\"manifest\",\"href\":\"/manifest.webmanifest\",\"crossOrigin\":\"$undefined\"}],[\"$\",\"link\",\"3\",{\"rel\":\"icon\",\"href\":\"/favicon.ico?favicon.0x3dzn~oxb6tn.ico\",\"sizes\":\"256x256\",\"type\":\"image/x-icon\"}],[\"$\",\"link\",\"4\",{\"rel\":\"icon\",\"href\":\"/favicon.svg\"}],[\"$\",\"$L1f\",\"5\",{}]]\n"])</script></body></html>
|