chore: Rename Connect AI LAB to Connect AI and bump version to v1.0.12
This commit is contained in:
@@ -1,6 +1,6 @@
|
|||||||
MIT License
|
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
|
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||||
of this software and associated documentation files (the "Software"), to deal
|
of this software and associated documentation files (the "Software"), to deal
|
||||||
|
|||||||
@@ -1,8 +1,8 @@
|
|||||||
# ✦ Connect AI LAB
|
# ✦ Connect AI
|
||||||
|
|
||||||
**100% 로컬 · 100% 오프라인 · 100% 무료**
|
**100% 로컬 · 100% 오프라인 · 100% 무료**
|
||||||
VS Code / Cursor 기반의 프리미엄 AI 코딩 에이전트입니다. 코드를 읽고, 작성하고, 터미널 명령어를 대신 실행해 줍니다.
|
VS Code / Cursor 기반의 프리미엄 AI 코딩 에이전트입니다. 코드를 읽고, 작성하고, 터미널 명령어를 대신 실행해 줍니다.
|
||||||
이 프로젝트는 **EZERAI**와 **Connect AI LAB**이 함께 연구하고 제작했습니다.
|
이 프로젝트는 **EZERAI**와 **Connect AI**이 함께 연구하고 제작했습니다.
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
@@ -44,7 +44,7 @@ vsce package
|
|||||||
|
|
||||||
## ⚙️ AI 엔진 세팅 가이드 (Ollama / LM Studio)
|
## ⚙️ AI 엔진 세팅 가이드 (Ollama / LM Studio)
|
||||||
|
|
||||||
Connect AI LAB은 사용자의 컴퓨터 자원 안에서 돌아가는 오프라인 모델을 사용합니다. 아래 두 가지 엔진 중 편하신 것을 하나 사용하세요.
|
Connect AI은 사용자의 컴퓨터 자원 안에서 돌아가는 오프라인 모델을 사용합니다. 아래 두 가지 엔진 중 편하신 것을 하나 사용하세요.
|
||||||
|
|
||||||
### 🟡 Option A: Ollama 설정 (초보자 추천)
|
### 🟡 Option A: Ollama 설정 (초보자 추천)
|
||||||
1. **설치:** [Ollama 공식 홈페이지](https://ollama.com)에서 다운로드 또는 `brew install ollama`
|
1. **설치:** [Ollama 공식 홈페이지](https://ollama.com)에서 다운로드 또는 `brew install ollama`
|
||||||
@@ -75,4 +75,4 @@ ollama pull gemma4:e2b
|
|||||||
## 📄 라이선스
|
## 📄 라이선스
|
||||||
MIT License — 자유롭게 사용, 수정, 배포 가능합니다.
|
MIT License — 자유롭게 사용, 수정, 배포 가능합니다.
|
||||||
|
|
||||||
**Designed & Developed with ❤️ by EZERAI and Connect AI LAB**
|
**Designed & Developed with ❤️ by EZERAI and Connect AI**
|
||||||
|
|||||||
+8
-8
@@ -1,8 +1,8 @@
|
|||||||
{
|
{
|
||||||
"name": "connect-ai-lab",
|
"name": "connect-ai-lab",
|
||||||
"displayName": "Connect AI LAB",
|
"displayName": "Connect AI",
|
||||||
"description": "100% 로컬 AI 코딩 에이전트 — 파일 생성, 코드 편집, 터미널 실행을 오프라인으로. Ollama + Gemma/Llama/DeepSeek 지원.",
|
"description": "100% 로컬 AI 코딩 에이전트 — 파일 생성, 코드 편집, 터미널 실행을 오프라인으로. Ollama + Gemma/Llama/DeepSeek 지원.",
|
||||||
"version": "1.0.11",
|
"version": "1.0.12",
|
||||||
"publisher": "connectailab",
|
"publisher": "connectailab",
|
||||||
"license": "MIT",
|
"license": "MIT",
|
||||||
"icon": "assets/icon.png",
|
"icon": "assets/icon.png",
|
||||||
@@ -35,20 +35,20 @@
|
|||||||
"commands": [
|
"commands": [
|
||||||
{
|
{
|
||||||
"command": "connect-ai-lab.newChat",
|
"command": "connect-ai-lab.newChat",
|
||||||
"title": "Connect AI LAB: New Chat",
|
"title": "Connect AI: New Chat",
|
||||||
"icon": "$(add)"
|
"icon": "$(add)"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"command": "connect-ai-lab.exportChat",
|
"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",
|
"command": "connect-ai-lab.explainSelection",
|
||||||
"title": "Connect AI LAB: Explain Selected Code"
|
"title": "Connect AI: Explain Selected Code"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"command": "connect-ai-lab.focusChat",
|
"command": "connect-ai-lab.focusChat",
|
||||||
"title": "Connect AI LAB: Focus Chat Input"
|
"title": "Connect AI: Focus Chat Input"
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
"keybindings": [
|
"keybindings": [
|
||||||
@@ -71,7 +71,7 @@
|
|||||||
"activitybar": [
|
"activitybar": [
|
||||||
{
|
{
|
||||||
"id": "connect-ai-lab-sidebar",
|
"id": "connect-ai-lab-sidebar",
|
||||||
"title": "Connect AI LAB",
|
"title": "Connect AI",
|
||||||
"icon": "$(hubot)"
|
"icon": "$(hubot)"
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
@@ -86,7 +86,7 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
"configuration": {
|
"configuration": {
|
||||||
"title": "Connect AI LAB",
|
"title": "Connect AI",
|
||||||
"properties": {
|
"properties": {
|
||||||
"connectAiLab.ollamaUrl": {
|
"connectAiLab.ollamaUrl": {
|
||||||
"type": "string",
|
"type": "string",
|
||||||
|
|||||||
+15
-11
@@ -4,7 +4,7 @@ import * as fs from 'fs';
|
|||||||
import * as path from 'path';
|
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
|
// 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 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:
|
You have THREE powerful agent actions. Use them whenever appropriate:
|
||||||
|
|
||||||
@@ -58,8 +58,8 @@ RULES:
|
|||||||
// ============================================================
|
// ============================================================
|
||||||
|
|
||||||
export function activate(context: vscode.ExtensionContext) {
|
export function activate(context: vscode.ExtensionContext) {
|
||||||
vscode.window.showInformationMessage('🔥 Connect AI LAB V2 활성화 완료!');
|
vscode.window.showInformationMessage('🔥 Connect AI V2 활성화 완료!');
|
||||||
console.log('Connect AI LAB extension activated.');
|
console.log('Connect AI extension activated.');
|
||||||
|
|
||||||
const provider = new SidebarChatProvider(context.extensionUri, context);
|
const provider = new SidebarChatProvider(context.extensionUri, context);
|
||||||
context.subscriptions.push(
|
context.subscriptions.push(
|
||||||
@@ -152,7 +152,7 @@ class SidebarChatProvider implements vscode.WebviewViewProvider {
|
|||||||
if (this._view) {
|
if (this._view) {
|
||||||
this._view.webview.postMessage({ type: 'clearChat' });
|
this._view.webview.postMessage({ type: 'clearChat' });
|
||||||
}
|
}
|
||||||
vscode.window.showInformationMessage('Connect AI LAB: 새 대화가 시작되었습니다.');
|
vscode.window.showInformationMessage('Connect AI: 새 대화가 시작되었습니다.');
|
||||||
}
|
}
|
||||||
|
|
||||||
/** 대화를 Markdown 파일로 내보내기 */
|
/** 대화를 Markdown 파일로 내보내기 */
|
||||||
@@ -161,9 +161,9 @@ class SidebarChatProvider implements vscode.WebviewViewProvider {
|
|||||||
vscode.window.showWarningMessage('내보낼 대화가 없습니다.');
|
vscode.window.showWarningMessage('내보낼 대화가 없습니다.');
|
||||||
return;
|
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) {
|
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`;
|
md += `### ${label}\n\n${m.text}\n\n---\n\n`;
|
||||||
}
|
}
|
||||||
const root = vscode.workspace.workspaceFolders?.[0]?.uri.fsPath;
|
const root = vscode.workspace.workspaceFolders?.[0]?.uri.fsPath;
|
||||||
@@ -442,8 +442,12 @@ class SidebarChatProvider implements vscode.WebviewViewProvider {
|
|||||||
this._saveHistory();
|
this._saveHistory();
|
||||||
|
|
||||||
} catch (error: any) {
|
} 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'
|
const errMsg = error.code === 'ECONNREFUSED'
|
||||||
? '⚠️ Ollama 서버에 연결할 수 없습니다.\n터미널에서 `ollama serve`를 실행해주세요.'
|
? `⚠️ ${targetName} 서버에 연결할 수 없습니다.\n앱에서 로컬 서버가 켜져 있는지(Start Server) 확인해주세요.`
|
||||||
: `⚠️ 오류: ${error.message}`;
|
: `⚠️ 오류: ${error.message}`;
|
||||||
this._view.webview.postMessage({ type: 'error', value: errMsg });
|
this._view.webview.postMessage({ type: 'error', value: errMsg });
|
||||||
}
|
}
|
||||||
@@ -538,7 +542,7 @@ class SidebarChatProvider implements vscode.WebviewViewProvider {
|
|||||||
try {
|
try {
|
||||||
if (!this._terminal || this._terminal.exitStatus !== undefined) {
|
if (!this._terminal || this._terminal.exitStatus !== undefined) {
|
||||||
this._terminal = vscode.window.createTerminal({
|
this._terminal = vscode.window.createTerminal({
|
||||||
name: '🚀 Connect AI LAB',
|
name: '🚀 Connect AI',
|
||||||
cwd: rootPath
|
cwd: rootPath
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
@@ -553,7 +557,7 @@ class SidebarChatProvider implements vscode.WebviewViewProvider {
|
|||||||
// Show notification
|
// Show notification
|
||||||
const successCount = report.filter(r => r.startsWith('✅') || r.startsWith('✏️') || r.startsWith('🖥️')).length;
|
const successCount = report.filter(r => r.startsWith('✅') || r.startsWith('✏️') || r.startsWith('🖥️')).length;
|
||||||
if (successCount > 0) {
|
if (successCount > 0) {
|
||||||
vscode.window.showInformationMessage(`Connect AI LAB: ${successCount}개 에이전트 작업 완료!`);
|
vscode.window.showInformationMessage(`Connect AI: ${successCount}개 에이전트 작업 완료!`);
|
||||||
}
|
}
|
||||||
|
|
||||||
return report;
|
return report;
|
||||||
@@ -570,7 +574,7 @@ class SidebarChatProvider implements vscode.WebviewViewProvider {
|
|||||||
private _getHtml(): string {
|
private _getHtml(): string {
|
||||||
return `<!DOCTYPE html>
|
return `<!DOCTYPE html>
|
||||||
<html lang="ko"><head><meta charset="UTF-8"><meta name="viewport" content="width=device-width,initial-scale=1.0">
|
<html lang="ko"><head><meta charset="UTF-8"><meta name="viewport" content="width=device-width,initial-scale=1.0">
|
||||||
<title>Connect AI LAB</title>
|
<title>Connect AI</title>
|
||||||
<style>
|
<style>
|
||||||
*{margin:0;padding:0;box-sizing:border-box}
|
*{margin:0;padding:0;box-sizing:border-box}
|
||||||
:root{
|
:root{
|
||||||
|
|||||||
Reference in New Issue
Block a user