chore: connectai 작업 준비 및 저장소 변경 (to locallm)

This commit is contained in:
2026-04-24 11:17:47 +09:00
parent f731b4735b
commit e063ab28e7
4 changed files with 54 additions and 4 deletions
BIN
View File
Binary file not shown.
+37
View File
@@ -0,0 +1,37 @@
diff --git a/src/extension.ts b/src/extension.ts
index 7720f87..e47cca3 100644
--- a/src/extension.ts
+++ b/src/extension.ts
@@ -1017,7 +1017,8 @@ class SidebarChatProvider implements vscode.WebviewViewProvider {
// --------------------------------------------------------
private async _sendModels() {
if (!this._view) { return; }
- const { ollamaBase, defaultModel } = getConfig();
+ const { ollamaBase } = getConfig();
+ let defaultModel = getConfig().defaultModel;
try {
const isLMStudio = ollamaBase.includes('1234') || ollamaBase.includes('v1');
let models: string[] = [];
@@ -1034,9 +1035,21 @@ class SidebarChatProvider implements vscode.WebviewViewProvider {
if (models.length === 0) {
models = [defaultModel];
- } else if (!models.includes(defaultModel)) {
+ }
+
+ // 媛€?몄삩 紐⑤뜽 紐⑸줉???꾩옱 defaultModel???녿떎硫? 遺덈윭??泥?踰덉㎏ 紐⑤뜽濡?defaultModel???먮룞 ?낅뜲?댄듃
+ if (!models.includes(defaultModel) && models.length > 0) {
+ defaultModel = models[0];
+ await vscode.workspace.getConfiguration('connectAiLab').update('defaultModel', defaultModel, vscode.ConfigurationTarget.Global);
+ }
+
+ // defaultModel????긽 ?쒕∼?ㅼ슫 理쒖긽?⑥뿉 ?ㅻ룄濡??ㅼ젙
+ const defaultIdx = models.indexOf(defaultModel);
+ if (defaultIdx > 0) {
+ models.splice(defaultIdx, 1);
models.unshift(defaultModel);
}
+
this._view.webview.postMessage({ type: 'modelsList', value: models });
} catch {
this._view.webview.postMessage({ type: 'modelsList', value: [defaultModel] });
+2 -2
View File
@@ -1,12 +1,12 @@
{
"name": "connect-ai-lab",
"version": "2.2.10",
"version": "2.2.15",
"lockfileVersion": 3,
"requires": true,
"packages": {
"": {
"name": "connect-ai-lab",
"version": "2.2.10",
"version": "2.2.15",
"license": "MIT",
"dependencies": {
"axios": "^1.15.0",
+15 -2
View File
@@ -1017,7 +1017,8 @@ class SidebarChatProvider implements vscode.WebviewViewProvider {
// --------------------------------------------------------
private async _sendModels() {
if (!this._view) { return; }
const { ollamaBase, defaultModel } = getConfig();
const { ollamaBase } = getConfig();
let defaultModel = getConfig().defaultModel;
try {
const isLMStudio = ollamaBase.includes('1234') || ollamaBase.includes('v1');
let models: string[] = [];
@@ -1034,9 +1035,21 @@ class SidebarChatProvider implements vscode.WebviewViewProvider {
if (models.length === 0) {
models = [defaultModel];
} else if (!models.includes(defaultModel)) {
}
// 가져온 모델 목록에 현재 defaultModel이 없다면, 불러온 첫 번째 모델로 defaultModel을 자동 업데이트
if (!models.includes(defaultModel) && models.length > 0) {
defaultModel = models[0];
await vscode.workspace.getConfiguration('connectAiLab').update('defaultModel', defaultModel, vscode.ConfigurationTarget.Global);
}
// defaultModel이 항상 드롭다운 최상단에 오도록 설정
const defaultIdx = models.indexOf(defaultModel);
if (defaultIdx > 0) {
models.splice(defaultIdx, 1);
models.unshift(defaultModel);
}
this._view.webview.postMessage({ type: 'modelsList', value: models });
} catch {
this._view.webview.postMessage({ type: 'modelsList', value: [defaultModel] });