Unlimited FREE AI coding. Connect Claude Code, Codex, Cursor, Cline, Copilot, Antigravity to FREE Claude/GPT/Gemini via 40+ providers. Auto-fallback, RTK -40% tokens, never hit limits.
410 matches across 8 categories. Click a row to expand file-level details.
| Severity | File | Line | Snippet |
|---|---|---|---|
| HIGH | README.md | 1249 | Authorization: Bearer your-api-key |
| HIGH | README.md | 1265 | Authorization: Bearer your-api-key |
| HIGH | README.zh-CN.md | 1242 | Authorization: Bearer your-api-key |
| HIGH | README.zh-CN.md | 1258 | Authorization: Bearer your-api-key |
| HIGH | gitbook/content/vi/troubleshooting.md | 247 | -H "Authorization: Bearer your-api-key" |
| HIGH | gitbook/content/vi/integration/other-tools.md | 21 | API Key: your-api-key-from-dashboard |
| HIGH | gitbook/content/vi/integration/other-tools.md | 28 | API Key: your-api-key-from-dashboard |
| HIGH | gitbook/content/vi/integration/other-tools.md | 55 | api_key="your-api-key-from-dashboard", |
| HIGH | gitbook/content/vi/integration/other-tools.md | 75 | apiKey: "your-api-key-from-dashboard", |
| HIGH | gitbook/content/vi/integration/other-tools.md | 94 | -H "Authorization: Bearer your-api-key-from-dashboard" \ |
| HIGH | gitbook/content/vi/integration/other-tools.md | 113 | Authorization: Bearer your-api-key-from-dashboard |
| HIGH | gitbook/content/vi/integration/other-tools.md | 136 | openai_api_key="your-api-key-from-dashboard", |
| HIGH | gitbook/content/vi/integration/other-tools.md | 153 | api_key="your-api-key-from-dashboard", |
| HIGH | gitbook/content/vi/integration/other-tools.md | 169 | openai.api_key = "your-api-key-from-dashboard" |
| HIGH | gitbook/content/vi/integration/other-tools.md | 201 | apiKey: "your-api-key-from-dashboard", |
| HIGH | gitbook/content/vi/integration/other-tools.md | 227 | api_key="your-api-key-from-dashboard", |
| HIGH | gitbook/content/vi/integration/other-tools.md | 256 | ROUTER_API_KEY=your-api-key-from-dashboard |
| HIGH | gitbook/content/vi/integration/other-tools.md | 277 | api_key="your-api-key", |
| HIGH | gitbook/content/vi/integration/other-tools.md | 298 | api_key="your-api-key", |
| HIGH | gitbook/content/vi/integration/other-tools.md | 344 | - Kiểm tra format header Authorization: `Bearer your-api-key` |
| HIGH | gitbook/content/vi/integration/continue.md | 33 | "apiKey": "your-api-key-from-dashboard", |
| HIGH | gitbook/content/vi/integration/continue.md | 48 | "apiKey": "your-api-key-from-dashboard", |
| HIGH | gitbook/content/vi/integration/continue.md | 55 | "apiKey": "your-api-key-from-dashboard", |
| HIGH | gitbook/content/vi/integration/continue.md | 62 | "apiKey": "your-api-key-from-dashboard", |
| HIGH | gitbook/content/vi/integration/continue.md | 69 | "apiKey": "your-api-key-from-dashboard", |
| HIGH | gitbook/content/vi/integration/continue.md | 145 | "apiKey": "your-api-key", |
| HIGH | gitbook/content/vi/integration/continue.md | 164 | "apiKey": "your-api-key", |
| HIGH | gitbook/content/vi/integration/roo.md | 26 | API Key: your-api-key-from-dashboard |
| HIGH | gitbook/content/vi/integration/roo.md | 32 | API Key: your-api-key-from-dashboard |
| HIGH | gitbook/content/vi/providers/cheap.md | 55 | API Key: zhipu-your-api-key-here |
| HIGH | gitbook/content/vi/features/quota-tracking.md | 565 | Authorization: Bearer your-api-key |
| HIGH | gitbook/content/vi/features/quota-tracking.md | 618 | Authorization: Bearer your-api-key |
| HIGH | gitbook/content/vi/features/combos.md | 384 | -H "Authorization: Bearer your-api-key" \ |
| HIGH | gitbook/content/vi/getting-started/installation.md | 150 | -H "Authorization: Bearer your-api-key" |
| HIGH | gitbook/content/vi/getting-started/installation.md | 172 | -H "Authorization: Bearer your-api-key" \ |
| HIGH | gitbook/content/ja/troubleshooting.md | 247 | -H "Authorization: Bearer your-api-key" |
| HIGH | gitbook/content/ja/integration/other-tools.md | 21 | API Key: your-api-key-from-dashboard |
| HIGH | gitbook/content/ja/integration/other-tools.md | 28 | API Key: your-api-key-from-dashboard |
| HIGH | gitbook/content/ja/integration/other-tools.md | 55 | api_key="your-api-key-from-dashboard", |
| HIGH | gitbook/content/ja/integration/other-tools.md | 75 | apiKey: "your-api-key-from-dashboard", |
| HIGH | gitbook/content/ja/integration/other-tools.md | 94 | -H "Authorization: Bearer your-api-key-from-dashboard" \ |
| HIGH | gitbook/content/ja/integration/other-tools.md | 113 | Authorization: Bearer your-api-key-from-dashboard |
| HIGH | gitbook/content/ja/integration/other-tools.md | 136 | openai_api_key="your-api-key-from-dashboard", |
| HIGH | gitbook/content/ja/integration/other-tools.md | 153 | api_key="your-api-key-from-dashboard", |
| HIGH | gitbook/content/ja/integration/other-tools.md | 169 | openai.api_key = "your-api-key-from-dashboard" |
| HIGH | gitbook/content/ja/integration/other-tools.md | 201 | apiKey: "your-api-key-from-dashboard", |
| HIGH | gitbook/content/ja/integration/other-tools.md | 227 | api_key="your-api-key-from-dashboard", |
| HIGH | gitbook/content/ja/integration/other-tools.md | 256 | ROUTER_API_KEY=your-api-key-from-dashboard |
| HIGH | gitbook/content/ja/integration/other-tools.md | 277 | api_key="your-api-key", |
| HIGH | gitbook/content/ja/integration/other-tools.md | 298 | api_key="your-api-key", |
| HIGH | gitbook/content/ja/integration/continue.md | 33 | "apiKey": "your-api-key-from-dashboard", |
| HIGH | gitbook/content/ja/integration/continue.md | 48 | "apiKey": "your-api-key-from-dashboard", |
| HIGH | gitbook/content/ja/integration/continue.md | 55 | "apiKey": "your-api-key-from-dashboard", |
| HIGH | gitbook/content/ja/integration/continue.md | 62 | "apiKey": "your-api-key-from-dashboard", |
| HIGH | gitbook/content/ja/integration/continue.md | 69 | "apiKey": "your-api-key-from-dashboard", |
| HIGH | gitbook/content/ja/integration/continue.md | 145 | "apiKey": "your-api-key", |
| HIGH | gitbook/content/ja/integration/continue.md | 164 | "apiKey": "your-api-key", |
| HIGH | gitbook/content/ja/integration/roo.md | 26 | API Key: your-api-key-from-dashboard |
| HIGH | gitbook/content/ja/integration/roo.md | 32 | API Key: your-api-key-from-dashboard |
| HIGH | gitbook/content/ja/providers/cheap.md | 55 | API Key: zhipu-your-api-key-here |
| 108 more matches not shown… | |||
| Severity | File | Line | Snippet |
|---|---|---|---|
| MEDIUM | open-sse/config/ttsModels.js | 3 | // ── Voice definitions (DRY — reused across providers) ────────────────────── |
| MEDIUM | open-sse/config/ttsModels.js | 36 | // ── TTS Config (config-driven, single source of truth) ───────────────────── |
| MEDIUM | open-sse/config/ttsModels.js | 110 | // ── Helper: get voices for a specific model ──────────────────────────────── |
| MEDIUM | open-sse/config/ttsModels.js | 117 | // ── Build flat entries for PROVIDER_MODELS backward compat ───────────────── |
| MEDIUM | open-sse/utils/proxyFetch.js | 8 | // ─── TLS fingerprinting via got-scraping (browser-like JA3) ─────────────── |
| MEDIUM | open-sse/handlers/ttsCore.js | 14 | // ── Response Formatter (DRY) ─────────────────────────────────── |
| MEDIUM | open-sse/handlers/ttsCore.js | 44 | // ── Core handler ─────────────────────────────────────────────── |
| MEDIUM | open-sse/handlers/search/callers.js | 33 | // ── Helpers ───────────────────────────────────────────────────────────── |
| MEDIUM | open-sse/handlers/search/callers.js | 87 | // ── Provider Request Builders ─────────────────────────────────────────── |
| MEDIUM | open-sse/handlers/search/callers.js | 330 | // ── Dispatcher ────────────────────────────────────────────────────────── |
| MEDIUM | open-sse/services/projectId.js | 12 | // ─── Cache ──────────────────────────────────────────────────────────────────── |
| MEDIUM | open-sse/services/projectId.js | 19 | // ─── Pending-fetch deduplication ───────────────────────────────────────────── |
| MEDIUM | open-sse/services/projectId.js | 26 | // ─── Periodic cleanup ──────────────────────────────────────────────────────── |
| MEDIUM | open-sse/services/projectId.js | 76 | // ─── Public API ─────────────────────────────────────────────────────────────── |
| MEDIUM | open-sse/services/projectId.js | 148 | // ─── Internal helpers ───────────────────────────────────────────────────────── |
| MEDIUM | open-sse/services/usage.js | 984 | // ── MiniMax helpers ────────────────────────────────────────────────────── |
| MEDIUM | tests/unit/embeddings.cloud.test.js | 21 | // ─── Module mocks (hoisted before imports) ─────────────────────────────────── |
| MEDIUM | tests/unit/embeddings.cloud.test.js | 59 | // ─── Imports (after mocks) ──────────────────────────────────────────────────── |
| MEDIUM | tests/unit/embeddings.cloud.test.js | 67 | // ─── Fixtures ───────────────────────────────────────────────────────────────── |
| MEDIUM | tests/unit/embeddings.cloud.test.js | 116 | // ─── Tests: CORS OPTIONS ────────────────────────────────────────────────────── |
| MEDIUM | tests/unit/embeddings.cloud.test.js | 136 | // ─── Tests: Authentication ──────────────────────────────────────────────────── |
| MEDIUM | tests/unit/embeddings.cloud.test.js | 231 | // ─── Tests: Body validation ─────────────────────────────────────────────────── |
| MEDIUM | tests/unit/embeddings.cloud.test.js | 290 | // ─── Tests: Happy path — valid request ──────────────────────────────────────── |
| MEDIUM | tests/unit/embeddings.cloud.test.js | 378 | // ─── Tests: Rate limiting ────────────────────────────────────────────────────── |
| MEDIUM | tests/unit/embeddings.cloud.test.js | 471 | // ─── Tests: machineId-override (old-format URL path) ───────────────────────── |
| MEDIUM | tests/unit/antigravity-cache.test.js | 145 | // ─── Codex-style sessionId comparison ──────────────────────────────── |
| MEDIUM | tests/unit/embeddingsCore.test.js | 13 | // ─── Mock the executors/index.js to avoid transitive uuid dependency ───────── |
| MEDIUM | tests/unit/embeddingsCore.test.js | 35 | // ─── Helpers ───────────────────────────────────────────────────────────────── |
| MEDIUM | tests/unit/embeddingsCore.test.js | 80 | // ─── Test: buildEmbeddingsBody (via handleEmbeddingsCore internals) ────────── |
| MEDIUM | tests/unit/embeddingsCore.test.js | 191 | // ─── Test: buildEmbeddingsUrl ──────────────────────────────────────────────── |
| MEDIUM | tests/unit/embeddingsCore.test.js | 291 | // ─── Test: buildEmbeddingsHeaders ─────────────────────────────────────────── |
| MEDIUM | tests/unit/embeddingsCore.test.js | 358 | // ─── Test: handleEmbeddingsCore — input validation ─────────────────────────── |
| MEDIUM | tests/unit/embeddingsCore.test.js | 425 | // ─── Test: handleEmbeddingsCore — success path ─────────────────────────────── |
| MEDIUM | tests/unit/embeddingsCore.test.js | 502 | // ─── Test: handleEmbeddingsCore — provider error handling ──────────────────── |
| MEDIUM | tests/unit/embeddingsCore.test.js | 574 | // ─── Test: handleEmbeddingsCore — token refresh on 401 ─────────────────────── |
| MEDIUM | tests/unit/oauth-cursor-auto-import.test.js | 66 | // ── macOS path probing ──────────────────────────────────────────────── |
| MEDIUM | tests/unit/oauth-cursor-auto-import.test.js | 88 | // ── Token extraction ────────────────────────────────────────────────── |
| MEDIUM | tests/unit/oauth-cursor-auto-import.test.js | 123 | // ── Fuzzy fallback (macOS only) ─────────────────────────────────────── |
| MEDIUM | tests/unit/claude-header-forwarding.test.js | 15 | // ─── claudeHeaderCache ──────────────────────────────────────────────────────── |
| MEDIUM | tests/unit/claude-header-forwarding.test.js | 118 | // ─── DefaultExecutor.buildHeaders() ────────────────────────────────────────── |
| MEDIUM | tests/unit/claude-header-forwarding.test.js | 231 | // ─── anthropic-compatible header stripping ──────────────────────────────────── |
| MEDIUM | tests/unit/claude-header-forwarding.test.js | 323 | // ─── proxyFetch anthropicFetch routing ──────────────────────────────────────── |
| MEDIUM | cli/scripts/buildMitm.js | 5 | // ── Build config ───────────────────────────────────────── |
| MEDIUM | cli/scripts/buildMitm.js | 11 | // ───────────────────────────────────────────────────────── |
| MEDIUM | cli/src/cli/menus/cliTools.js | 23 | // ─── Shared helpers ─────────────────────────────────────────────────────────── |
| MEDIUM | cli/src/cli/menus/cliTools.js | 35 | // ─── Claude Code ────────────────────────────────────────────────────────────── |
| MEDIUM | cli/src/cli/menus/cliTools.js | 172 | // ─── Codex CLI ──────────────────────────────────────────────────────────────── |
| MEDIUM | cli/src/cli/menus/cliTools.js | 260 | // ─── Factory Droid ──────────────────────────────────────────────────────────── |
| MEDIUM | cli/src/cli/menus/cliTools.js | 343 | // ─── Open Claw ──────────────────────────────────────────────────────────────── |
| MEDIUM | cli/src/cli/menus/cliTools.js | 428 | // ─── OpenCode CLI ───────────────────────────────────────────────────────────── |
| MEDIUM | cli/src/cli/menus/cliTools.js | 516 | // ─── Hermes Agent ───────────────────────────────────────────────────────────── |
| MEDIUM | cli/src/cli/menus/cliTools.js | 576 | // ─── Main CLI Tools Menu ────────────────────────────────────────────────────── |
| MEDIUM | src/sse/services/tokenRefresh.js | 29 | // ─── Re-exports wrapped with local logger ───────────────────────────────────── |
| MEDIUM | src/sse/services/tokenRefresh.js | 70 | // ─── Lifecycle hook ─────────────────────────────────────────────────────────── |
| MEDIUM | src/sse/services/tokenRefresh.js | 85 | // ─── Internal helpers ───────────────────────────────────────────────────────── |
| MEDIUM | src/sse/services/tokenRefresh.js | 145 | // ─── Local-specific: persist credentials to localDb ────────────────────────── |
| MEDIUM | src/sse/services/tokenRefresh.js | 194 | // ─── Local-specific: proactive token refresh ───────────────────────────────── |
| MEDIUM | src/sse/services/tokenRefresh.js | 207 | // ── 1. Regular access-token expiry ──────────────────────────────────────── |
| MEDIUM | src/sse/services/tokenRefresh.js | 249 | // ── 2. GitHub Copilot token expiry ──────────────────────────────────────── |
| MEDIUM | src/sse/services/tokenRefresh.js | 282 | // ─── Local-specific: combined GitHub + Copilot refresh ─────────────────────── |
| 30 more matches not shown… | |||
| Severity | File | Line | Snippet |
|---|---|---|---|
| LOW | open-sse/config/kiroConstants.js | 219 | export function buildThinkingSystemPrefix(budget = KIRO_THINKING_BUDGET_DEFAULT) { |
| LOW | open-sse/config/providers.js | 454 | export function resolveXiaomiTokenplanBaseUrl(credentials) { |
| LOW | open-sse/transformer/responsesTransformer.js | 54 | export function createResponsesApiTransformStream(logger = null) { |
| LOW | open-sse/transformer/streamToJsonConverter.js | 49 | export async function convertResponsesStreamToJson(stream) { |
| LOW | open-sse/utils/streamHandler.js | 97 | export function createDisconnectAwareStream(transformStream, streamController) { |
| LOW | open-sse/utils/stream.js | 377 | export function createSSETransformStreamWithLogger(targetFormat, sourceFormat, provider = null, reqLogger = null, toolNa |
| LOW | open-sse/utils/stream.js | 393 | export function createPassthroughStreamWithLogger(provider = null, reqLogger = null, model = null, connectionId = null, |
| LOW | open-sse/utils/bypassHandler.js | 128 | function createNonStreamingResponse(sourceFormat, model, text) { |
| LOW | open-sse/utils/bypassHandler.js | 264 | function createOpenAIStreamingChunks(completeResponse) { |
| LOW | open-sse/utils/proxyFetch.js | 203 | function resolveConnectionProxyUrl(targetUrl, proxyOptions) { |
| LOW | open-sse/translator/response/openai-to-antigravity.js | 8 | export function openaiToAntigravityResponse(chunk, state) { |
| LOW | open-sse/translator/response/openai-responses.js | 12 | export function openaiToOpenAIResponsesResponse(chunk, state) { |
| LOW | open-sse/translator/response/openai-responses.js | 370 | export function openaiResponsesToOpenAIResponse(chunk, state) { |
| LOW | open-sse/translator/response/commandcode-to-openai.js | 58 | export function convertCommandCodeToOpenAI(chunk, state) { |
| LOW | open-sse/translator/request/openai-to-gemini.js | 26 | function sanitizeGeminiFunctionName(name) { |
| LOW | open-sse/translator/request/openai-to-gemini.js | 320 | function wrapInCloudCodeEnvelopeForClaude(model, claudeRequest, credentials = null) { |
| LOW | open-sse/translator/request/openai-to-gemini.js | 456 | export function openaiToAntigravityRequest(model, body, stream, credentials = null) { |
| LOW | open-sse/translator/request/antigravity-to-openai.js | 7 | export function antigravityToOpenAIRequest(model, body, stream) { |
| LOW | open-sse/translator/request/openai-responses.js | 18 | export function openaiResponsesToOpenAIRequest(model, body, stream, credentials) { |
| LOW | open-sse/translator/request/openai-responses.js | 201 | export function openaiToOpenAIResponsesRequest(model, body, stream, credentials) { |
| LOW | open-sse/translator/request/openai-to-claude.js | 210 | function getContentBlocksFromMessage(msg, toolNameMap = new Map()) { |
| LOW | open-sse/translator/request/openai-to-claude.js | 326 | function openaiToClaudeRequestForAntigravity(model, body, stream) { |
| LOW | open-sse/translator/helpers/geminiHelper.js | 35 | export function convertOpenAIContentToParts(content) { |
| LOW | open-sse/translator/helpers/geminiHelper.js | 124 | function removeUnsupportedKeywords(obj, keywords) { |
| LOW | open-sse/translator/helpers/geminiHelper.js | 164 | function convertEnumValuesToStrings(obj) { |
| LOW | open-sse/translator/helpers/geminiHelper.js | 298 | export function cleanJSONSchemaForAntigravity(schema) { |
| LOW | open-sse/translator/helpers/responsesApiHelper.js | 29 | export function convertResponsesApiFormat(body) { |
| LOW | open-sse/executors/codex.js | 36 | function convertSystemToDeveloperRole(body) { |
| LOW | open-sse/executors/codex.js | 46 | function stripStoredItemReferences(body) { |
| LOW | open-sse/executors/cursor.js | 49 | function visibleComposerContentFromThinking(thinking) { |
| LOW | open-sse/executors/grok-web.js | 192 | async function buildNonStreamingResponse(eventStream, model, cid, created, isThinkingModel, signal) { |
| LOW | open-sse/executors/perplexity-web.js | 359 | async function buildNonStreamingResponse(eventStream, model, cid, created, history, currentMsg, signal) { |
| LOW | open-sse/executors/qwen.js | 39 | function sanitizeQwenThinkingToolChoice(body) { |
| LOW | open-sse/handlers/imageGenerationCore.js | 29 | export async function handleImageGenerationCore({ |
| LOW | open-sse/handlers/sttCore.js | 141 | async function transcribeOpenAICompatible(cfg, file, model, token, formData) { |
| LOW | open-sse/handlers/embeddingProviders/openai.js | 17 | export default function createOpenAIEmbeddingAdapter(providerId) { |
| LOW | open-sse/handlers/chatCore/nonStreamingHandler.js | 15 | export function translateNonStreamingResponse(responseBody, targetFormat, sourceFormat) { |
| LOW | open-sse/handlers/chatCore/nonStreamingHandler.js | 131 | export async function handleNonStreamingResponse({ providerResponse, provider, model, sourceFormat, targetFormat, body, |
| LOW | open-sse/handlers/chatCore/sseToJsonHandler.js | 8 | function textFromResponsesMessageItem(item) { |
| LOW | open-sse/handlers/chatCore/sseToJsonHandler.js | 21 | function pickAssistantMessageForChatCompletion(output) { |
| LOW | open-sse/handlers/imageProviders/cloudflareAi.js | 117 | function normalizeCloudflareResponse(responseBody) { |
| LOW | open-sse/services/provider.js | 33 | function buildAnthropicCompatibleUrl(baseUrl) { |
| LOW | open-sse/services/tokenRefresh.js | 71 | export function isUnrecoverableRefreshError(result) { |
| LOW | open-sse/services/tokenRefresh.js | 703 | export function formatProviderCredentials(provider, credentials, log) { |
| LOW | open-sse/services/kiroModels.js | 67 | function buildKiroFingerprintHeaders(credentials) { |
| LOW | open-sse/services/projectId.js | 86 | export async function getProjectIdForConnection(connectionId, accessToken) { |
| LOW | open-sse/services/projectId.js | 290 | function extractProjectIdFromOnboard(data) { |
| LOW | open-sse/services/usage.js | 209 | function formatGitHubQuotaSnapshot(quota) { |
| LOW | open-sse/services/usage.js | 302 | function normalizeCloudCodeProjectId(project) { |
| LOW | open-sse/services/usage.js | 313 | async function getGeminiSubscriptionInfo(accessToken, proxyOptions = null) { |
| LOW | open-sse/services/usage.js | 467 | async function getAntigravitySubscriptionInfo(accessToken, proxyOptions = null) { |
| LOW | open-sse/services/model.js | 246 | function inferProviderFromModelName(modelName) { |
| LOW | open-sse/services/accountFallback.js | 72 | export function getEarliestRateLimitedUntil(accounts) { |
| LOW | open-sse/services/accountFallback.js | 131 | export function getEarliestModelLockUntil(connection) { |
| LOW | open-sse/services/accountFallback.js | 155 | export function buildClearModelLocksUpdate(connection) { |
| LOW | tests/unit/embeddingsCore.test.js | 46 | function makeProviderErrorResponse(status, message) { |
| LOW | tests/unit/compatible-provider-connections.test.js | 54 | function expectCompatibleConnection(connection, node, { apiType } = {}) { |
| LOW | cli/hooks/sqliteRuntime.js | 47 | function isBetterSqliteBinaryValid() { |
| LOW | cli/src/cli/utils/modelSelector.js | 34 | async function getAvailableModelsGrouped() { |
| LOW | cli/src/cli/menus/providers.js | 154 | function countConnectionsByProvider(connections) { |
| 46 more matches not shown… | |||
| Severity | File | Line | Snippet |
|---|---|---|---|
| LOW | open-sse/translator/index.js | 93 | // Step 1: source -> openai (if source is not openai) |
| LOW | open-sse/translator/index.js | 103 | // Step 2: openai -> target (if target is not openai) |
| LOW | open-sse/translator/index.js | 160 | // Step 1: target -> openai (if target is not openai) |
| LOW | open-sse/translator/index.js | 173 | // Step 2: openai -> source (if source is not openai) |
| LOW | cli/scripts/build-cli.js | 91 | // Step 0: Sync version from app/cli/package.json to app/package.json |
| LOW | cli/scripts/build-cli.js | 104 | // Step 1: Build app with Next.js (workspace tracing root → traced node_modules in standalone). |
| LOW | cli/scripts/build-cli.js | 126 | // Step 2: Clean old app/cli/app if exists |
| LOW | cli/scripts/build-cli.js | 133 | // Step 3: Copy Next.js standalone build to app/cli/app. |
| LOW | cli/scripts/build-cli.js | 189 | // Step 4: Copy static files |
| LOW | cli/scripts/build-cli.js | 201 | // Step 5: Copy public folder if exists |
| LOW | cli/scripts/build-cli.js | 212 | // Step 6: Copy vendor-chunks (required for production) |
| LOW | cli/scripts/build-cli.js | 224 | // Step 7: Copy MITM server files (not bundled by Next.js standalone) |
| LOW | cli/scripts/build-cli.js | 246 | // Step 8: Build MITM server (config driven - see app/cli/scripts/buildMitm.js) |
| LOW | cli/src/cli/menus/providers.js | 458 | // Step 1: Get auth URL |
| LOW | cli/src/cli/menus/providers.js | 480 | // Step 2: Show URL and instructions |
| LOW | cli/src/cli/menus/providers.js | 503 | // Step 3: Parse callback URL and extract code |
| LOW | cli/src/cli/menus/providers.js | 529 | // Step 4: Exchange code for tokens |
| LOW | cli/src/cli/menus/providers.js | 556 | // Step 1: Request device code |
| LOW | cli/src/cli/menus/providers.js | 580 | // Step 2: Show instructions |
| LOW | cli/src/cli/menus/providers.js | 597 | // Step 3: Poll for token |
| LOW | cli/src/cli/menus/providers.js | 775 | // Step 1: Select type |
| LOW | cli/src/cli/menus/providers.js | 785 | // Step 2: Inputs |
| LOW | cli/src/cli/menus/providers.js | 795 | // Step 3: API type (OpenAI only) |
| LOW | src/app/api/oauth/iflow/cookie/route.js | 28 | // Step 1: GET API key info to get the name |
| LOW | src/app/api/oauth/iflow/cookie/route.js | 65 | // Step 2: POST to refresh API key |
| LOW | src/app/api/cli-tools/cowork-mcp-tools/route.js | 18 | // Step 1: initialize |
| LOW | src/app/api/cli-tools/cowork-mcp-tools/route.js | 40 | // Step 2: notifications/initialized (required by spec before tools/list) |
| LOW | src/app/api/cli-tools/cowork-mcp-tools/route.js | 48 | // Step 3: tools/list |
| LOW | src/app/(dashboard)/dashboard/translator/page.js | 67 | // Step 1: detect provider/format from model field |
| LOW | src/mitm/manager.js | 512 | // Step 1: Generate Root CA if missing or expired |
| LOW | src/mitm/manager.js | 552 | // Step 2: Spawn server (Root CA already installed in Step 1.5) |
| LOW | src/lib/oauth/providers.js | 858 | // Step 1: Register client with AWS SSO OIDC |
| LOW | src/lib/oauth/providers.js | 881 | // Step 2: Request device authorization |
| LOW | src/lib/oauth/constants/oauth.js | 247 | // Step 1: POST /v2/plugin/auth/state?platform=CLI → get { state, authUrl } |
| LOW | src/lib/oauth/constants/oauth.js | 248 | // Step 2: Open authUrl in browser |
| LOW | src/lib/oauth/constants/oauth.js | 249 | // Step 3: Poll POST /v2/plugin/auth/token with state until success |
| Severity | File | Line | Snippet |
|---|---|---|---|
| MEDIUM | gitbook/content/vi/integration/other-tools.md | 288 | print(f"Error: {e}") |
| MEDIUM | gitbook/content/ja/integration/other-tools.md | 288 | print(f"Error: {e}") |
| MEDIUM | gitbook/content/zh-CN/integration/other-tools.md | 288 | print(f"Error: {e}") |
| MEDIUM | gitbook/content/es/integration/other-tools.md | 288 | print(f"Error: {e}") |
| MEDIUM | gitbook/content/en/integration/other-tools.md | 288 | print(f"Error: {e}") |
| Severity | File | Line | Snippet |
|---|---|---|---|
| CRITICAL | …rd)/dashboard/cli-tools/components/OpenCodeToolCard.js | 62 | setSubagentModel(status.config.agent.explorer.model.replace("9router/", "")); |
| Severity | File | Line | Snippet |
|---|---|---|---|
| MEDIUM | open-sse/config/codexInstructions.js | 30 | ## Codex CLI harness, sandboxing, and approvals |
| Severity | File | Line | Snippet |
|---|---|---|---|
| LOW | open-sse/utils/requestLogger.js | 81 | // for (const key of Object.keys(masked)) { |
| LOW | src/shared/constants/cliTools.js | 341 | }, |
| LOW | src/shared/constants/providers.js | 121 | // aimlapi: { id: "aimlapi", alias: "aiml", name: "AI/ML API", icon: "hub", color: "#6366F1", textIcon: "AI", website: |