Files
hack/tools/scripts/llm-key-hunter/results/_cache/content/canace22_md-render.json
T
OpenCode 68a9071cf1 feat: reconcile local master with origin (exa/hot-platform hunters, leaks ledger, latest results)
Local branch had diverged from origin/master (sibling commits on the same base). Rewrote local history linearly on top of origin/master, folding in all local content: exa/hot-platform discovery hunters, leaks ledger, nightly sweep orchestrator, updated .gitignore and skill docs, plus the latest hunt output and vault state. Remote-only files (vault keys, channel scripts) were restored rather than dropped, so the resulting tree is a full union of both sides.
2026-08-07 12:53:47 +08:00

1 line
8.5 KiB
JSON
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
{"repo": "canace22/md-render", "files": {"apps/editor/renderer/src/core/agent/aiProviders.js": {"a02f3856f1a987dda620fc1bdfc187fe6d3c4cb2": {"t": 1785746019.0221944, "n": 983, "h": "f2424f649efcf98e", "c": "/**\n * 预设 AI 服务商(OpenAI 兼容)。\n *\n * 只预设非敏感信息:服务商 id、显示名、完整 baseURL、默认模型。\n *\n * API key 策略:\n * - 内置服务商(minimax):key 存在主进程 .env,renderer 不接触。\n * - 自定义服务商:用户在设置面板手填,存 localStorage。\n *\n * baseURL 存「完整基址」(含各家自己的路径),请求时统一拼 `${baseURL}/chat/completions`。\n */\n\nexport const AI_PROVIDERS = Object.freeze([\n {\n id: 'minimax',\n label: 'MiniMax',\n baseURL: 'https://api.minimaxi.com/v1',\n defaultModel: 'MiniMax-M3',\n },\n {\n id: 'deepseek',\n label: 'DeepSeek',\n baseURL: 'https://api.deepseek.com/v1',\n defaultModel: 'deepseek-chat',\n },\n {\n id: 'aliyun',\n label: '阿里百炼(通义千问)',\n baseURL: 'https://dashscope.aliyuncs.com/compatible-mode/v1',\n defaultModel: 'qwen-plus',\n },\n {\n id: 'custom',\n label: '自定义(OpenAI 兼容)',\n baseURL: '',\n defaultModel: '',\n },\n]);\n\nexport const DEFAULT_PROVIDER_ID = 'minimax';\n\nexport const getProvider = (id) =>\n AI_PROVIDERS.find((p) => p.id === id) || AI_PROVIDERS.find((p) => p.id === DEFAULT_PROVIDER_ID);\n"}, "8861b2deee1e7eb367d1e2ff5f0c6b422ba46de9": {"t": 1785758838.3099303, "n": 983, "h": "f2424f649efcf98e", "c": "/**\n * 预设 AI 服务商(OpenAI 兼容)。\n *\n * 只预设非敏感信息:服务商 id、显示名、完整 baseURL、默认模型。\n *\n * API key 策略:\n * - 内置服务商(minimax):key 存在主进程 .env,renderer 不接触。\n * - 自定义服务商:用户在设置面板手填,存 localStorage。\n *\n * baseURL 存「完整基址」(含各家自己的路径),请求时统一拼 `${baseURL}/chat/completions`。\n */\n\nexport const AI_PROVIDERS = Object.freeze([\n {\n id: 'minimax',\n label: 'MiniMax',\n baseURL: 'https://api.minimaxi.com/v1',\n defaultModel: 'MiniMax-M3',\n },\n {\n id: 'deepseek',\n label: 'DeepSeek',\n baseURL: 'https://api.deepseek.com/v1',\n defaultModel: 'deepseek-chat',\n },\n {\n id: 'aliyun',\n label: '阿里百炼(通义千问)',\n baseURL: 'https://dashscope.aliyuncs.com/compatible-mode/v1',\n defaultModel: 'qwen-plus',\n },\n {\n id: 'custom',\n label: '自定义(OpenAI 兼容)',\n baseURL: '',\n defaultModel: '',\n },\n]);\n\nexport const DEFAULT_PROVIDER_ID = 'minimax';\n\nexport const getProvider = (id) =>\n AI_PROVIDERS.find((p) => p.id === id) || AI_PROVIDERS.find((p) => p.id === DEFAULT_PROVIDER_ID);\n"}, "b73ade735fcc320a77550d05e7307ebf87490e5f": {"t": 1785758839.5680017, "n": 981, "h": "94fca6a1ae197b18", "c": "/**\n * 预设 AI 服务商(OpenAI 兼容)。\n *\n * 只预设非敏感信息:服务商 id、显示名、完整 baseURL、默认模型。\n *\n * API key 策略:\n * - 内置服务商(minimax):key 存在主进程 .env,renderer 不接触。\n * - 自定义服务商:用户在设置面板手填,存 localStorage。\n *\n * baseURL 存「完整基址」(含各家自己的路径),请求时统一拼 `${baseURL}/chat/completions`。\n */\n\nexport const AI_PROVIDERS = Object.freeze([\n {\n id: 'minimax',\n label: 'MiniMax',\n baseURL: 'https://api.minimax.io/v1',\n defaultModel: 'MiniMax-M3',\n },\n {\n id: 'deepseek',\n label: 'DeepSeek',\n baseURL: 'https://api.deepseek.com/v1',\n defaultModel: 'deepseek-chat',\n },\n {\n id: 'aliyun',\n label: '阿里百炼(通义千问)',\n baseURL: 'https://dashscope.aliyuncs.com/compatible-mode/v1',\n defaultModel: 'qwen-plus',\n },\n {\n id: 'custom',\n label: '自定义(OpenAI 兼容)',\n baseURL: '',\n defaultModel: '',\n },\n]);\n\nexport const DEFAULT_PROVIDER_ID = 'minimax';\n\nexport const getProvider = (id) =>\n AI_PROVIDERS.find((p) => p.id === id) || AI_PROVIDERS.find((p) => p.id === DEFAULT_PROVIDER_ID);\n"}, "79fcaded0e7f9e553cec5cc91286284496392b0c": {"t": 1785758841.7069302, "n": 1146, "h": "bd06ec53190b2d5a", "c": "/**\n * 预设 AI 服务商(OpenAI 兼容)。\n *\n * 只预设非敏感信息:服务商 id、显示名、完整 baseURL、默认模型。\n *\n * API key 策略:\n * - 内置服务商(xiaomi-mimo, minimax):key 存在主进程 .env,renderer 不接触。\n * - 自定义服务商:用户在设置面板手填,存 localStorage。\n *\n * baseURL 存「完整基址」(含各家自己的路径),请求时统一拼 `${baseURL}/chat/completions`。\n */\n\nexport const AI_PROVIDERS = Object.freeze([\n {\n id: 'xiaomi-mimo',\n label: '小米 MiMo',\n baseURL: 'https://token-plan-sgp.xiaomimimo.com/v1',\n defaultModel: 'mimo-v2.5-pro',\n },\n {\n id: 'minimax',\n label: 'MiniMax',\n baseURL: 'https://api.minimaxi.com/v1',\n defaultModel: 'MiniMax-M3',\n },\n {\n id: 'deepseek',\n label: 'DeepSeek',\n baseURL: 'https://api.deepseek.com/v1',\n defaultModel: 'deepseek-chat',\n },\n {\n id: 'aliyun',\n label: '阿里百炼(通义千问)',\n baseURL: 'https://dashscope.aliyuncs.com/compatible-mode/v1',\n defaultModel: 'qwen-plus',\n },\n {\n id: 'custom',\n label: '自定义(OpenAI 兼容)',\n baseURL: '',\n defaultModel: '',\n },\n]);\n\nexport const DEFAULT_PROVIDER_ID = 'xiaomi-mimo';\n\nexport const getProvider = (id) =>\n AI_PROVIDERS.find((p) => p.id === id) || AI_PROVIDERS.find((p) => p.id === DEFAULT_PROVIDER_ID);\n"}, "540ae2e5f5243908df716cc8ae1034ec3d28b8a1": {"t": 1785758843.056691, "n": 1120, "h": "ed1e5a0e49a187a1", "c": "/**\n * 预设 AI 服务商(OpenAI 兼容)。\n *\n * 只预设非敏感信息:服务商 id、显示名、完整 baseURL、默认模型。\n * API key 绝不写在这里——由用户在设置面板手填,存 localStorage(不入库)。\n *\n * baseURL 存「完整基址」(含各家自己的路径),因为不是所有家都用 /v1:\n * 例如阿里百炼是 /compatible-mode/v1。请求时统一拼 `${baseURL}/chat/completions`。\n */\n\nexport const AI_PROVIDERS = Object.freeze([\n {\n id: 'deepseek',\n label: 'DeepSeek',\n baseURL: 'https://api.deepseek.com/v1',\n defaultModel: 'deepseek-chat',\n },\n {\n id: 'aliyun',\n label: '阿里百炼(通义千问)',\n baseURL: 'https://dashscope.aliyuncs.com/compatible-mode/v1',\n defaultModel: 'qwen-plus',\n },\n {\n id: 'xiaomi-mimo',\n label: '小米 MiMo',\n baseURL: 'https://token-plan-sgp.xiaomimimo.com/v1',\n defaultModel: 'mimo-v2.5-pro',\n },\n {\n id: 'minimax',\n label: 'MiniMax',\n baseURL: 'https://api.minimax.io/v1',\n defaultModel: 'MiniMax-M2',\n },\n {\n id: 'custom',\n label: '自定义(OpenAI 兼容)',\n baseURL: '',\n defaultModel: '',\n },\n]);\n\nexport const DEFAULT_PROVIDER_ID = 'deepseek';\n\nexport const getProvider = (id) =>\n AI_PROVIDERS.find((p) => p.id === id) || AI_PROVIDERS.find((p) => p.id === DEFAULT_PROVIDER_ID);\n"}, "4f16d83743477d0041a1cafebb392ddfec1c6af9": {"t": 1786068361.7997158, "n": 983, "h": "f2424f649efcf98e", "c": "/**\n * 预设 AI 服务商(OpenAI 兼容)。\n *\n * 只预设非敏感信息:服务商 id、显示名、完整 baseURL、默认模型。\n *\n * API key 策略:\n * - 内置服务商(minimax):key 存在主进程 .env,renderer 不接触。\n * - 自定义服务商:用户在设置面板手填,存 localStorage。\n *\n * baseURL 存「完整基址」(含各家自己的路径),请求时统一拼 `${baseURL}/chat/completions`。\n */\n\nexport const AI_PROVIDERS = Object.freeze([\n {\n id: 'minimax',\n label: 'MiniMax',\n baseURL: 'https://api.minimaxi.com/v1',\n defaultModel: 'MiniMax-M3',\n },\n {\n id: 'deepseek',\n label: 'DeepSeek',\n baseURL: 'https://api.deepseek.com/v1',\n defaultModel: 'deepseek-chat',\n },\n {\n id: 'aliyun',\n label: '阿里百炼(通义千问)',\n baseURL: 'https://dashscope.aliyuncs.com/compatible-mode/v1',\n defaultModel: 'qwen-plus',\n },\n {\n id: 'custom',\n label: '自定义(OpenAI 兼容)',\n baseURL: '',\n defaultModel: '',\n },\n]);\n\nexport const DEFAULT_PROVIDER_ID = 'minimax';\n\nexport const getProvider = (id) =>\n AI_PROVIDERS.find((p) => p.id === id) || AI_PROVIDERS.find((p) => p.id === DEFAULT_PROVIDER_ID);\n"}}}}