diff --git a/setting/chat.go b/setting/chat.go index bb8a99771939..cec1d5792f0b 100644 --- a/setting/chat.go +++ b/setting/chat.go @@ -25,6 +25,9 @@ var Chats = []map[string]string{ { "DeepChat": "deepchat://provider/install?v=1&data={deepchatConfig}", }, + { + "AQBot": "aqbot://providers?{aqbotConfig}", + }, { "Lobe Chat 官方示例": "https://chat-preview.lobehub.com/?settings={\"keyVaults\":{\"openai\":{\"apiKey\":\"{key}\",\"baseURL\":\"{address}/v1\"}}}", }, diff --git a/web/src/features/chat/lib/chat-links.ts b/web/src/features/chat/lib/chat-links.ts index 729a59fef4ef..770d0acb7fe4 100644 --- a/web/src/features/chat/lib/chat-links.ts +++ b/web/src/features/chat/lib/chat-links.ts @@ -89,7 +89,8 @@ export function chatLinkRequiresApiKey(url: string): boolean { url.includes('{key}') || url.includes('{cherryConfig}') || url.includes('{aionuiConfig}') || - url.includes('{deepchatConfig}') + url.includes('{deepchatConfig}') || + url.includes('{aqbotConfig}') ) } @@ -189,6 +190,16 @@ export function resolveChatUrl({ return replaceToken(url, '{deepchatConfig}', encoded) } + if (url.includes('{aqbotConfig}')) { + const query = [ + `name=${encodeURIComponent('New API')}`, + `baseurl=${encodeURIComponent(safeServerAddress)}`, + `apikey=${encodeURIComponent(safeApiKey)}`, + 'type=openai', + ].join('&') + return replaceToken(url, '{aqbotConfig}', query) + } + if (safeServerAddress) { const encodedAddress = encodeURIComponent(safeServerAddress) url = replaceToken(url, '{address}', encodedAddress)