diff --git a/LICENSE b/LICENSE index df1bca3..dfe2c78 100644 --- a/LICENSE +++ b/LICENSE @@ -1,6 +1,6 @@ MIT License -Copyright (c) 2026 Connect AI LAB (Jay) +Copyright (c) 2026 Connect AI (Jay) Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal diff --git a/README.md b/README.md index 20ddb6e..71827a4 100644 --- a/README.md +++ b/README.md @@ -1,8 +1,8 @@ -# ✦ Connect AI LAB +# ✦ Connect AI **100% 로컬 · 100% 오프라인 · 100% 무료** VS Code / Cursor 기반의 프리미엄 AI 코딩 에이전트입니다. 코드를 읽고, 작성하고, 터미널 명령어를 대신 실행해 줍니다. -이 프로젝트는 **EZERAI**와 **Connect AI LAB**이 함께 연구하고 제작했습니다. +이 프로젝트는 **EZERAI**와 **Connect AI**이 함께 연구하고 제작했습니다. --- @@ -44,7 +44,7 @@ vsce package ## ⚙️ AI 엔진 세팅 가이드 (Ollama / LM Studio) -Connect AI LAB은 사용자의 컴퓨터 자원 안에서 돌아가는 오프라인 모델을 사용합니다. 아래 두 가지 엔진 중 편하신 것을 하나 사용하세요. +Connect AI은 사용자의 컴퓨터 자원 안에서 돌아가는 오프라인 모델을 사용합니다. 아래 두 가지 엔진 중 편하신 것을 하나 사용하세요. ### 🟡 Option A: Ollama 설정 (초보자 추천) 1. **설치:** [Ollama 공식 홈페이지](https://ollama.com)에서 다운로드 또는 `brew install ollama` @@ -75,4 +75,4 @@ ollama pull gemma4:e2b ## 📄 라이선스 MIT License — 자유롭게 사용, 수정, 배포 가능합니다. -**Designed & Developed with ❤️ by EZERAI and Connect AI LAB** +**Designed & Developed with ❤️ by EZERAI and Connect AI** diff --git a/package.json b/package.json index 122de0a..f720351 100644 --- a/package.json +++ b/package.json @@ -1,8 +1,8 @@ { "name": "connect-ai-lab", - "displayName": "Connect AI LAB", + "displayName": "Connect AI", "description": "100% 로컬 AI 코딩 에이전트 — 파일 생성, 코드 편집, 터미널 실행을 오프라인으로. Ollama + Gemma/Llama/DeepSeek 지원.", - "version": "1.0.11", + "version": "1.0.12", "publisher": "connectailab", "license": "MIT", "icon": "assets/icon.png", @@ -35,20 +35,20 @@ "commands": [ { "command": "connect-ai-lab.newChat", - "title": "Connect AI LAB: New Chat", + "title": "Connect AI: New Chat", "icon": "$(add)" }, { "command": "connect-ai-lab.exportChat", - "title": "Connect AI LAB: Export Chat as Markdown" + "title": "Connect AI: Export Chat as Markdown" }, { "command": "connect-ai-lab.explainSelection", - "title": "Connect AI LAB: Explain Selected Code" + "title": "Connect AI: Explain Selected Code" }, { "command": "connect-ai-lab.focusChat", - "title": "Connect AI LAB: Focus Chat Input" + "title": "Connect AI: Focus Chat Input" } ], "keybindings": [ @@ -71,7 +71,7 @@ "activitybar": [ { "id": "connect-ai-lab-sidebar", - "title": "Connect AI LAB", + "title": "Connect AI", "icon": "$(hubot)" } ] @@ -86,7 +86,7 @@ ] }, "configuration": { - "title": "Connect AI LAB", + "title": "Connect AI", "properties": { "connectAiLab.ollamaUrl": { "type": "string", diff --git a/src/extension.ts b/src/extension.ts index 0089cab..7d58d32 100644 --- a/src/extension.ts +++ b/src/extension.ts @@ -4,7 +4,7 @@ import * as fs from 'fs'; import * as path from 'path'; // ============================================================ -// Connect AI LAB — Full Agentic Local AI for VS Code +// Connect AI — Full Agentic Local AI for VS Code // 100% Offline · File Create · File Edit · Terminal · Multi-file Context // ============================================================ @@ -26,7 +26,7 @@ const EXCLUDED_DIRS = new Set([ ]); const MAX_CONTEXT_SIZE = 40_000; // chars -const SYSTEM_PROMPT = `You are "Connect AI LAB", a premium agentic AI coding assistant running 100% offline on the user's machine. +const SYSTEM_PROMPT = `You are "Connect AI", a premium agentic AI coding assistant running 100% offline on the user's machine. You have THREE powerful agent actions. Use them whenever appropriate: @@ -58,8 +58,8 @@ RULES: // ============================================================ export function activate(context: vscode.ExtensionContext) { - vscode.window.showInformationMessage('🔥 Connect AI LAB V2 활성화 완료!'); -console.log('Connect AI LAB extension activated.'); + vscode.window.showInformationMessage('🔥 Connect AI V2 활성화 완료!'); +console.log('Connect AI extension activated.'); const provider = new SidebarChatProvider(context.extensionUri, context); context.subscriptions.push( @@ -152,7 +152,7 @@ class SidebarChatProvider implements vscode.WebviewViewProvider { if (this._view) { this._view.webview.postMessage({ type: 'clearChat' }); } - vscode.window.showInformationMessage('Connect AI LAB: 새 대화가 시작되었습니다.'); + vscode.window.showInformationMessage('Connect AI: 새 대화가 시작되었습니다.'); } /** 대화를 Markdown 파일로 내보내기 */ @@ -161,9 +161,9 @@ class SidebarChatProvider implements vscode.WebviewViewProvider { vscode.window.showWarningMessage('내보낼 대화가 없습니다.'); return; } - let md = `# Connect AI LAB — 대화 기록\n\n_${new Date().toLocaleString('ko-KR')}_\n\n---\n\n`; + let md = `# Connect AI — 대화 기록\n\n_${new Date().toLocaleString('ko-KR')}_\n\n---\n\n`; for (const m of this._displayMessages) { - const label = m.role === 'user' ? '**👤 You**' : '**✦ Connect AI LAB**'; + const label = m.role === 'user' ? '**👤 You**' : '**✦ Connect AI**'; md += `### ${label}\n\n${m.text}\n\n---\n\n`; } const root = vscode.workspace.workspaceFolders?.[0]?.uri.fsPath; @@ -442,8 +442,12 @@ class SidebarChatProvider implements vscode.WebviewViewProvider { this._saveHistory(); } catch (error: any) { + const { ollamaBase } = getConfig(); + const isLM = ollamaBase.includes('1234') || ollamaBase.includes('v1'); + const targetName = isLM ? "LM Studio" : "Ollama"; + const errMsg = error.code === 'ECONNREFUSED' - ? '⚠️ Ollama 서버에 연결할 수 없습니다.\n터미널에서 `ollama serve`를 실행해주세요.' + ? `⚠️ ${targetName} 서버에 연결할 수 없습니다.\n앱에서 로컬 서버가 켜져 있는지(Start Server) 확인해주세요.` : `⚠️ 오류: ${error.message}`; this._view.webview.postMessage({ type: 'error', value: errMsg }); } @@ -538,7 +542,7 @@ class SidebarChatProvider implements vscode.WebviewViewProvider { try { if (!this._terminal || this._terminal.exitStatus !== undefined) { this._terminal = vscode.window.createTerminal({ - name: '🚀 Connect AI LAB', + name: '🚀 Connect AI', cwd: rootPath }); } @@ -553,7 +557,7 @@ class SidebarChatProvider implements vscode.WebviewViewProvider { // Show notification const successCount = report.filter(r => r.startsWith('✅') || r.startsWith('✏️') || r.startsWith('🖥️')).length; if (successCount > 0) { - vscode.window.showInformationMessage(`Connect AI LAB: ${successCount}개 에이전트 작업 완료!`); + vscode.window.showInformationMessage(`Connect AI: ${successCount}개 에이전트 작업 완료!`); } return report; @@ -570,7 +574,7 @@ class SidebarChatProvider implements vscode.WebviewViewProvider { private _getHtml(): string { return `
-