@mrtrinhvn/ag-kit 1.4.0 → 1.4.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md
CHANGED
|
@@ -21,6 +21,9 @@ npx @mrtrinhvn/ag-kit@latest brain
|
|
|
21
21
|
|
|
22
22
|
# 3. Tra cứu Vector Memory (Xem các node đã lưu)
|
|
23
23
|
npx @mrtrinhvn/ag-kit@latest memory
|
|
24
|
+
|
|
25
|
+
# 4. Kiểm tra cửa ngõ IDE, Telegram Bot (Dành cho project dùng bot)
|
|
26
|
+
npx @mrtrinhvn/ag-kit@latest gateway
|
|
24
27
|
```
|
|
25
28
|
|
|
26
29
|
---
|
|
@@ -33,6 +36,7 @@ npx @mrtrinhvn/ag-kit@latest memory
|
|
|
33
36
|
| `ag-kit init` | **Khởi tạo** | Cấy ghép toàn bộ tủy não `.agent` vào dự án trắng. |
|
|
34
37
|
| `ag-kit brain` | **Bộ Não** | Tự động gọi `brain_builder.py` để quét Codebase, trích xuất Vector Memory và viết Báo cáo Nhận thức `summary.md`. |
|
|
35
38
|
| `ag-kit memory` | **Ký ức** | Hiển thị các Mảnh ký ức (Hot/Cold Nodes) đang được lưu trong Không gian Vector `graph.db`. |
|
|
39
|
+
| `ag-kit gateway` | **Bot Test** | (Tùy chọn) Quét cổng CDP (IDE), Ollama và Telegram Bot Token cho các dự án dùng Agentic bot. |
|
|
36
40
|
| `ag-kit update` | **Cập nhật** | Nâng cấp Agents/Skills/Workflows mới nhất từ NPM mà không làm mất dữ liệu Ký ức hoặc Knowledge của dự án. |
|
|
37
41
|
| `ag-kit status` | **Trạng thái** | Hiển thị phiên bản Tool và kiểm tra xem Bộ Não (`summary.md`) đã được hình thành chưa. |
|
|
38
42
|
|
package/bin/cli.js
CHANGED
|
@@ -120,6 +120,52 @@ program.command('memory')
|
|
|
120
120
|
}
|
|
121
121
|
});
|
|
122
122
|
|
|
123
|
+
program.command('gateway')
|
|
124
|
+
.description('Kiểm tra trạng thái Agentic Gateway (IDE, Ollama, Telegram)')
|
|
125
|
+
.action(() => {
|
|
126
|
+
console.log('\x1b[36m🤖 Đang kiểm tra hệ sinh thái Agentic Gateway...\x1b[0m');
|
|
127
|
+
if (!fs.existsSync(TARGET_AGENT_DIR)) {
|
|
128
|
+
console.log('\x1b[31m❌ Chưa cấy ghép .agent.\x1b[0m');
|
|
129
|
+
return;
|
|
130
|
+
}
|
|
131
|
+
const envPath = path.join(process.cwd(), '.env');
|
|
132
|
+
let targetPort = null;
|
|
133
|
+
if (fs.existsSync(envPath)) {
|
|
134
|
+
const match = fs.readFileSync(envPath, 'utf-8').match(/IDE_PORT=(\d+)/);
|
|
135
|
+
if (match) targetPort = parseInt(match[1]);
|
|
136
|
+
}
|
|
137
|
+
|
|
138
|
+
if (targetPort) {
|
|
139
|
+
try {
|
|
140
|
+
execSync(`curl -s --max-time 2 http://127.0.0.1:${targetPort}/json/version`, { stdio: 'ignore' });
|
|
141
|
+
console.log(`\x1b[32m✅ IDE CDP: Cổng riêng của dự án (${targetPort}) đang Online!\x1b[0m`);
|
|
142
|
+
} catch (e) {
|
|
143
|
+
console.log(`\x1b[31m❌ IDE CDP: Cổng dự án (${targetPort}) Offline. Hãy chạy IDE với port này.\x1b[0m`);
|
|
144
|
+
}
|
|
145
|
+
} else {
|
|
146
|
+
console.log(`\x1b[33m⚠️ IDE CDP: Không tìm thấy IDE_PORT trong .env. Khuyên dùng "ag-kit init" để cấp port.\x1b[0m`);
|
|
147
|
+
}
|
|
148
|
+
|
|
149
|
+
try {
|
|
150
|
+
execSync('ollama --version', { stdio: 'ignore' });
|
|
151
|
+
console.log('\x1b[32m✅ Ollama: Đã cài đặt\x1b[0m');
|
|
152
|
+
try {
|
|
153
|
+
execSync('curl -s --max-time 2 http://127.0.0.1:11434/api/tags', { stdio: 'ignore' });
|
|
154
|
+
console.log('\x1b[32m✅ Ollama Service: Online\x1b[0m');
|
|
155
|
+
} catch (e) {
|
|
156
|
+
console.log('\x1b[31m❌ Ollama Service: Offline\x1b[0m');
|
|
157
|
+
}
|
|
158
|
+
} catch(e) {
|
|
159
|
+
console.log('\x1b[33m⚠️ Ollama: Chưa cài đặt.\x1b[0m');
|
|
160
|
+
}
|
|
161
|
+
|
|
162
|
+
if (fs.existsSync(envPath) && fs.readFileSync(envPath, 'utf-8').includes('TELEGRAM_BOT_TOKEN=')) {
|
|
163
|
+
console.log('\x1b[32m✅ Telegram Token: Có trong .env\x1b[0m');
|
|
164
|
+
} else {
|
|
165
|
+
console.log('\x1b[33m⚠️ Telegram Token: Chưa cấu hình\x1b[0m');
|
|
166
|
+
}
|
|
167
|
+
});
|
|
168
|
+
|
|
123
169
|
program.command('status')
|
|
124
170
|
.description('Xem trạng thái cài đặt')
|
|
125
171
|
.action(() => {
|
|
@@ -166,6 +212,7 @@ async function runInteractiveMenu() {
|
|
|
166
212
|
const choices = hasAgent ? [
|
|
167
213
|
{ name: `🧠 Xây dựng / Cập nhật Bộ Não (build brain) - Thu thập Context`, value: 'brain' },
|
|
168
214
|
{ name: `🕸️ Khám phá Ký ức (memory) - Xem dữ liệu Vector`, value: 'memory' },
|
|
215
|
+
{ name: `🤖 Kiểm tra Agentic Gateway (gateway) - Test IDE/Bot`, value: 'gateway' },
|
|
169
216
|
{ name: `🔄 Nâng cấp Kiến thức (update) ${updateTag}`, value: 'update' },
|
|
170
217
|
{ name: '📊 Trạng thái (status) - Xem version & độ nhận thức', value: 'status' },
|
|
171
218
|
new inquirer.Separator(),
|
package/package.json
CHANGED
|
@@ -1,12 +1,37 @@
|
|
|
1
1
|
#!/bin/bash
|
|
2
|
-
#
|
|
3
|
-
# Golden Combo Edition (V3)
|
|
2
|
+
# start.sh - Hệ thống Quản trị Khởi động (Agentic Port Fusion)
|
|
4
3
|
|
|
5
4
|
# 1. Load config
|
|
6
5
|
if [ -f .env ]; then
|
|
7
6
|
source .env
|
|
7
|
+
else
|
|
8
|
+
echo "❌ Lỗi: Không tìm thấy file .env. Vui lòng tạo dựa trên .env.example"
|
|
9
|
+
exit 1
|
|
8
10
|
fi
|
|
9
11
|
|
|
10
|
-
|
|
11
|
-
|
|
12
|
+
PORT=${IDE_PORT:-9555}
|
|
13
|
+
|
|
14
|
+
echo "🔍 Đang kiểm tra IDE tại cổng $PORT..."
|
|
15
|
+
|
|
16
|
+
# 2. Logic Hợp thể & Mở mới linh hoạt
|
|
17
|
+
if nc -z 127.0.0.1 $PORT &>/dev/null; then
|
|
18
|
+
echo "✅ [HỢP THỂ]: Đã tìm thấy một IDE đang chạy riêng cho dự án ở cổng $PORT. Đang cắm ngầm Bot vào..."
|
|
19
|
+
else
|
|
20
|
+
echo "⚠️ [MỞ MỚI]: Không tìm thấy IDE ở cổng $PORT. Đang tự động phóng một IDE mới chuyên biệt cho dự án này..."
|
|
21
|
+
|
|
22
|
+
if command -v cursor &> /dev/null; then
|
|
23
|
+
cursor --remote-debugging-port=$PORT . &
|
|
24
|
+
elif command -v code &> /dev/null; then
|
|
25
|
+
code --remote-debugging-port=$PORT . &
|
|
26
|
+
else
|
|
27
|
+
echo "❌ Lỗi: Không tìm thấy lệnh 'cursor' hoặc 'code' trong cửa sổ lệnh."
|
|
28
|
+
echo "👉 Hãy tự mở IDE bằng tay cho thư mục này bằng lệnh: cursor --remote-debugging-port=$PORT ."
|
|
29
|
+
fi
|
|
30
|
+
|
|
31
|
+
echo "⏳ Đang đợi IDE kích hoạt cổng CDP..."
|
|
32
|
+
sleep 4
|
|
33
|
+
fi
|
|
34
|
+
|
|
35
|
+
# 3. Khởi động Giao diện & Agent (Receptionist)
|
|
36
|
+
echo "🚀 Đang đánh thức bộ não Agentic Gateway..."
|
|
12
37
|
bash .agent/scripts/receptionist_up.sh
|
package/template/start.sh
CHANGED
|
@@ -1,22 +1,37 @@
|
|
|
1
1
|
#!/bin/bash
|
|
2
|
-
# start.sh - Khởi động
|
|
2
|
+
# start.sh - Hệ thống Quản trị Khởi động (Agentic Port Fusion)
|
|
3
3
|
|
|
4
|
-
# 1.
|
|
5
|
-
if [
|
|
4
|
+
# 1. Load config
|
|
5
|
+
if [ -f .env ]; then
|
|
6
|
+
source .env
|
|
7
|
+
else
|
|
6
8
|
echo "❌ Lỗi: Không tìm thấy file .env. Vui lòng tạo dựa trên .env.example"
|
|
7
9
|
exit 1
|
|
8
10
|
fi
|
|
9
11
|
|
|
10
|
-
|
|
11
|
-
source .env
|
|
12
|
+
PORT=${IDE_PORT:-9555}
|
|
12
13
|
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
if
|
|
17
|
-
echo "
|
|
14
|
+
echo "🔍 Đang kiểm tra IDE tại cổng $PORT..."
|
|
15
|
+
|
|
16
|
+
# 2. Logic Hợp thể & Mở mới linh hoạt
|
|
17
|
+
if nc -z 127.0.0.1 $PORT &>/dev/null; then
|
|
18
|
+
echo "✅ [HỢP THỂ]: Đã tìm thấy một IDE đang chạy riêng cho dự án ở cổng $PORT. Đang cắm ngầm Bot vào..."
|
|
19
|
+
else
|
|
20
|
+
echo "⚠️ [MỞ MỚI]: Không tìm thấy IDE ở cổng $PORT. Đang tự động phóng một IDE mới chuyên biệt cho dự án này..."
|
|
21
|
+
|
|
22
|
+
if command -v cursor &> /dev/null; then
|
|
23
|
+
cursor --remote-debugging-port=$PORT . &
|
|
24
|
+
elif command -v code &> /dev/null; then
|
|
25
|
+
code --remote-debugging-port=$PORT . &
|
|
26
|
+
else
|
|
27
|
+
echo "❌ Lỗi: Không tìm thấy lệnh 'cursor' hoặc 'code' trong Terminal này."
|
|
28
|
+
echo "👉 Hãy tự mở IDE bằng tay cho thư mục này bằng lệnh: \cursor --remote-debugging-port=$PORT .\ "
|
|
29
|
+
fi
|
|
30
|
+
|
|
31
|
+
echo "⏳ Đang đợi IDE kích hoạt cổng CDP..."
|
|
32
|
+
sleep 4
|
|
18
33
|
fi
|
|
19
34
|
|
|
20
|
-
#
|
|
21
|
-
echo "🚀
|
|
35
|
+
# 3. Khởi động Giao diện & Agent (Receptionist)
|
|
36
|
+
echo "🚀 Đang đánh thức bộ não Agentic Gateway..."
|
|
22
37
|
bash .agent/scripts/receptionist_up.sh
|