codebaxing 0.2.5 → 0.2.8

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
@@ -11,13 +11,10 @@ MCP server for **semantic code search**. Index your codebase and search using na
11
11
 
12
12
  - [The Idea](#the-idea)
13
13
  - [Quick Start](#quick-start)
14
- - [Usage](#usage)
15
- - [Via AI Agents (MCP)](#via-ai-agents-mcp)
16
- - [Via CLI (Terminal)](#via-cli-terminal)
17
14
  - [Installation](#installation)
18
- - [How It Works](#how-it-works)
15
+ - [Usage](#usage)
19
16
  - [Configuration](#configuration)
20
- - [Supported Languages](#supported-languages)
17
+ - [How It Works](#how-it-works)
21
18
 
22
19
  ## The Idea
23
20
 
@@ -37,46 +34,103 @@ Finds: login(), validateCredentials(), checkPassword(), authMiddleware()
37
34
 
38
35
  ## Quick Start
39
36
 
40
- ### 1. Install to your AI editor
37
+ ### For AI Editors (Claude Desktop, Cursor, Windsurf)
41
38
 
42
39
  ```bash
40
+ # One command install
43
41
  npx codebaxing install # Claude Desktop
44
42
  npx codebaxing install --cursor # Cursor
45
43
  npx codebaxing install --windsurf # Windsurf
46
44
  npx codebaxing install --all # All editors
47
45
  ```
48
46
 
49
- ### 2. Restart your editor
47
+ Restart your editor, then ask: *"Index my project at /path/to/myproject"*
48
+
49
+ ### For CLI Usage
50
+
51
+ ```bash
52
+ # 1. Start ChromaDB (required for CLI)
53
+ docker run -d -p 8000:8000 --name chromadb chromadb/chroma
54
+
55
+ # 2. Set environment variable
56
+ export CHROMADB_URL=http://localhost:8000
57
+
58
+ # 3. Index and search
59
+ npx codebaxing index /path/to/project
60
+ npx codebaxing search "authentication logic"
61
+ ```
50
62
 
51
- ### 3. Start using
63
+ ## Installation
52
64
 
53
- In Claude Desktop (or Cursor, Windsurf...):
65
+ ### Step 1: Install to AI Editor
54
66
 
67
+ ```bash
68
+ npx codebaxing install # Claude Desktop (default)
69
+ npx codebaxing install --cursor # Cursor
70
+ npx codebaxing install --windsurf # Windsurf (Codeium)
71
+ npx codebaxing install --zed # Zed
72
+ npx codebaxing install --all # All supported editors
55
73
  ```
56
- You: Index my project at /path/to/myproject
57
- Claude: [calls index tool]
58
74
 
59
- You: Find the authentication logic
60
- Claude: [calls search tool, returns relevant code]
75
+ ### Step 2: (Optional) Setup ChromaDB for Persistent Storage
76
+
77
+ By default, the index is stored in memory and lost when the editor restarts.
78
+
79
+ For persistent storage, run ChromaDB:
80
+
81
+ ```bash
82
+ # Start ChromaDB with Docker
83
+ docker run -d -p 8000:8000 --name chromadb chromadb/chroma
84
+
85
+ # Verify it's running
86
+ curl http://localhost:8000/api/v1/heartbeat
87
+ # Should return: {"nanosecond heartbeat":...}
88
+ ```
89
+
90
+ Then update your editor config to include the environment variable:
91
+
92
+ **Claude Desktop** (`~/Library/Application Support/Claude/claude_desktop_config.json`):
93
+
94
+ ```json
95
+ {
96
+ "mcpServers": {
97
+ "codebaxing": {
98
+ "command": "npx",
99
+ "args": ["-y", "codebaxing"],
100
+ "env": {
101
+ "CHROMADB_URL": "http://localhost:8000"
102
+ }
103
+ }
104
+ }
105
+ }
106
+ ```
107
+
108
+ ### Step 3: Restart Your Editor
109
+
110
+ The Codebaxing tools are now available!
111
+
112
+ ### Uninstall
113
+
114
+ ```bash
115
+ npx codebaxing uninstall # Claude Desktop
116
+ npx codebaxing uninstall --all # All editors
61
117
  ```
62
118
 
63
119
  ## Usage
64
120
 
65
- ### Via AI Agents (MCP)
121
+ ### Via AI Agents (Claude Desktop, Cursor, etc.)
66
122
 
67
- After installing to your AI editor, you interact through natural conversation:
123
+ After installing, interact through natural conversation:
68
124
 
69
- #### Step 1: Index your codebase (Required first)
125
+ #### 1. Index your codebase (Required first)
70
126
 
71
127
  ```
72
128
  You: Index the codebase at /Users/me/projects/myapp
73
129
  ```
74
130
 
75
- Claude will call `index(path="/Users/me/projects/myapp")` and show progress.
76
-
77
131
  > **Note:** First run downloads the embedding model (~90MB), takes 1-2 minutes.
78
132
 
79
- #### Step 2: Search for code
133
+ #### 2. Search for code
80
134
 
81
135
  ```
82
136
  You: Find code that handles user authentication
@@ -84,7 +138,7 @@ You: Where is the database connection logic?
84
138
  You: Show me error handling patterns
85
139
  ```
86
140
 
87
- #### Step 3: Use memory (optional)
141
+ #### 3. Use memory (optional)
88
142
 
89
143
  ```
90
144
  You: Remember that we're using PostgreSQL with Prisma ORM
@@ -106,69 +160,36 @@ You: What decisions have we made about the database?
106
160
 
107
161
  ### Via CLI (Terminal)
108
162
 
109
- You can use Codebaxing directly from terminal without AI agents:
163
+ CLI commands **require ChromaDB** running. See [Setup ChromaDB](#step-2-optional-setup-chromadb-for-persistent-storage).
110
164
 
111
- #### Step 1: Index your codebase (Required first)
165
+ #### Prerequisites
112
166
 
113
167
  ```bash
114
- npx codebaxing index /path/to/project
115
- ```
168
+ # Start ChromaDB
169
+ docker run -d -p 8000:8000 --name chromadb chromadb/chroma
116
170
 
117
- Output:
118
- ```
119
- 🔧 Codebaxing - Index Codebase
120
-
121
- 📁 Path: /path/to/project
122
-
123
- ================================================================================
124
- INDEXING CODEBASE
125
- ================================================================================
126
- Found 47 files
127
- Parsed 645 symbols from 47 files
128
- Generating embeddings for 645 chunks...
129
- Model loaded: Xenova/all-MiniLM-L6-v2 (384 dims, CPU)
130
-
131
- ================================================================================
132
- INDEXING COMPLETE
133
- ================================================================================
134
- Files parsed: 47
135
- Symbols extracted: 645
136
- Chunks created: 645
137
- Time elapsed: 21.9s
171
+ # Set environment variable (add to your ~/.bashrc or ~/.zshrc)
172
+ export CHROMADB_URL=http://localhost:8000
138
173
  ```
139
174
 
140
- #### Step 2: Search for code
175
+ #### Commands
141
176
 
142
177
  ```bash
178
+ # Index a codebase
179
+ npx codebaxing index /path/to/project
180
+
181
+ # Search for code
143
182
  npx codebaxing search "authentication middleware"
144
183
  npx codebaxing search "database connection" --path ./src --limit 10
145
- ```
146
-
147
- Output:
148
- ```
149
- 🔧 Codebaxing - Search
150
-
151
- 📁 Path: /path/to/project
152
- 🔍 Query: "authentication middleware"
153
- 📊 Limit: 5
154
-
155
- ────────────────────────────────────────────────────────────
156
- Results:
157
-
158
- 1. src/middleware/auth.ts:15 - authMiddleware()
159
- 2. src/services/auth.ts:42 - validateToken()
160
- 3. src/routes/login.ts:8 - loginHandler()
161
184
 
162
- ────────────────────────────────────────────────────────────
163
- ```
164
-
165
- #### Step 3: Check statistics
166
-
167
- ```bash
185
+ # Show index statistics
168
186
  npx codebaxing stats /path/to/project
187
+
188
+ # Show help
189
+ npx codebaxing --help
169
190
  ```
170
191
 
171
- #### CLI Commands Reference
192
+ #### CLI Reference
172
193
 
173
194
  | Command | Description |
174
195
  |---------|-------------|
@@ -177,31 +198,40 @@ npx codebaxing stats /path/to/project
177
198
  | `npx codebaxing index <path>` | Index a codebase |
178
199
  | `npx codebaxing search <query> [options]` | Search indexed codebase |
179
200
  | `npx codebaxing stats [path]` | Show index statistics |
180
- | `npx codebaxing --help` | Show help |
181
201
 
182
202
  **Search options:**
183
203
  - `--path, -p <path>` - Codebase path (default: current directory)
184
204
  - `--limit, -n <number>` - Number of results (default: 5)
185
205
 
186
- ## Installation
206
+ ## Configuration
207
+
208
+ ### Environment Variables
187
209
 
188
- ### Option 1: Quick Install (Recommended)
210
+ | Variable | Description | Default |
211
+ |----------|-------------|---------|
212
+ | `CHROMADB_URL` | ChromaDB server URL | (in-memory) |
213
+ | `CODEBAXING_DEVICE` | Compute device: `cpu`, `webgpu`, `cuda`, `auto` | `cpu` |
214
+ | `CODEBAXING_MAX_FILE_SIZE` | Max file size to index (MB) | `1` |
215
+
216
+ ### GPU Acceleration
189
217
 
190
218
  ```bash
191
- npx codebaxing install # Claude Desktop (default)
192
- npx codebaxing install --cursor # Cursor
193
- npx codebaxing install --windsurf # Windsurf (Codeium)
194
- npx codebaxing install --zed # Zed
195
- npx codebaxing install --all # All supported editors
219
+ export CODEBAXING_DEVICE=webgpu # macOS (Metal)
220
+ export CODEBAXING_DEVICE=cuda # Linux/Windows (NVIDIA)
221
+ export CODEBAXING_DEVICE=auto # Auto-detect
196
222
  ```
197
223
 
198
- Then restart your editor.
224
+ **Note:** macOS does not support CUDA. Use `webgpu` for GPU acceleration on Mac.
225
+
226
+ ### Manual Editor Configuration
199
227
 
200
- ### Option 2: Manual Configuration
228
+ If you prefer to configure manually instead of using `npx codebaxing install`:
201
229
 
202
- #### Claude Desktop
230
+ <details>
231
+ <summary>Claude Desktop</summary>
203
232
 
204
- Add to `~/Library/Application Support/Claude/claude_desktop_config.json` (macOS) or `%APPDATA%\Claude\claude_desktop_config.json` (Windows):
233
+ `~/Library/Application Support/Claude/claude_desktop_config.json` (macOS)
234
+ `%APPDATA%\Claude\claude_desktop_config.json` (Windows)
205
235
 
206
236
  ```json
207
237
  {
@@ -213,10 +243,12 @@ Add to `~/Library/Application Support/Claude/claude_desktop_config.json` (macOS)
213
243
  }
214
244
  }
215
245
  ```
246
+ </details>
216
247
 
217
- #### Cursor
248
+ <details>
249
+ <summary>Cursor</summary>
218
250
 
219
- Add to `~/.cursor/mcp.json`:
251
+ `~/.cursor/mcp.json`
220
252
 
221
253
  ```json
222
254
  {
@@ -228,10 +260,12 @@ Add to `~/.cursor/mcp.json`:
228
260
  }
229
261
  }
230
262
  ```
263
+ </details>
231
264
 
232
- #### Windsurf
265
+ <details>
266
+ <summary>Windsurf</summary>
233
267
 
234
- Add to `~/.codeium/windsurf/mcp_config.json`:
268
+ `~/.codeium/windsurf/mcp_config.json`
235
269
 
236
270
  ```json
237
271
  {
@@ -243,10 +277,12 @@ Add to `~/.codeium/windsurf/mcp_config.json`:
243
277
  }
244
278
  }
245
279
  ```
280
+ </details>
246
281
 
247
- #### Zed
282
+ <details>
283
+ <summary>Zed</summary>
248
284
 
249
- Add to `~/.config/zed/settings.json`:
285
+ `~/.config/zed/settings.json`
250
286
 
251
287
  ```json
252
288
  {
@@ -260,10 +296,12 @@ Add to `~/.config/zed/settings.json`:
260
296
  }
261
297
  }
262
298
  ```
299
+ </details>
263
300
 
264
- #### VS Code + Continue
301
+ <details>
302
+ <summary>VS Code + Continue</summary>
265
303
 
266
- Add to `~/.continue/config.json`:
304
+ `~/.continue/config.json`
267
305
 
268
306
  ```json
269
307
  {
@@ -280,13 +318,7 @@ Add to `~/.continue/config.json`:
280
318
  }
281
319
  }
282
320
  ```
283
-
284
- ### Uninstall
285
-
286
- ```bash
287
- npx codebaxing uninstall # Claude Desktop
288
- npx codebaxing uninstall --all # All editors
289
- ```
321
+ </details>
290
322
 
291
323
  ## How It Works
292
324
 
@@ -313,24 +345,6 @@ npx codebaxing uninstall --all # All editors
313
345
  │ │ (vectors) │ │
314
346
  │ └──────────────┘ │
315
347
  └─────────────────────────────────────────────────────────────────┘
316
-
317
- ┌─────────────────────────────────────────────────────────────────┐
318
- │ SEARCH │
319
- ├─────────────────────────────────────────────────────────────────┤
320
- │ "find auth code" │
321
- │ │ │
322
- │ ▼ │
323
- │ ┌──────────────┐ ┌──────────────┐ │
324
- │ │ Embedding │────────▶│ ChromaDB │ │
325
- │ │ Model │ query │ Query │ │
326
- │ └──────────────┘ vector └──────────────┘ │
327
- │ │ │
328
- │ ▼ │
329
- │ Cosine Similarity │
330
- │ │ │
331
- │ ▼ │
332
- │ Top-k Results │
333
- └─────────────────────────────────────────────────────────────────┘
334
348
  ```
335
349
 
336
350
  ### Why Semantic Search Works
@@ -343,56 +357,6 @@ The embedding model understands that:
343
357
  | "database" | query, SQL, connection, ORM, repository |
344
358
  | "error handling" | try/catch, exception, throw, ErrorBoundary |
345
359
 
346
- ## Configuration
347
-
348
- ### Environment Variables
349
-
350
- | Variable | Description | Default |
351
- |----------|-------------|---------|
352
- | `CHROMADB_URL` | ChromaDB server URL for persistent storage | (in-memory) |
353
- | `CODEBAXING_DEVICE` | Compute device: `cpu`, `webgpu`, `cuda`, `auto` | `cpu` |
354
- | `CODEBAXING_MAX_FILE_SIZE` | Max file size to index (in MB) | `1` |
355
-
356
- ### Persistent Storage
357
-
358
- By default, the index is stored in memory and lost when the server restarts.
359
-
360
- For persistent storage:
361
-
362
- ```bash
363
- # Start ChromaDB
364
- docker run -d -p 8000:8000 chromadb/chroma
365
-
366
- # Set environment variable
367
- export CHROMADB_URL=http://localhost:8000
368
- ```
369
-
370
- Or in MCP config:
371
-
372
- ```json
373
- {
374
- "mcpServers": {
375
- "codebaxing": {
376
- "command": "npx",
377
- "args": ["-y", "codebaxing"],
378
- "env": {
379
- "CHROMADB_URL": "http://localhost:8000"
380
- }
381
- }
382
- }
383
- }
384
- ```
385
-
386
- ### GPU Acceleration
387
-
388
- ```bash
389
- export CODEBAXING_DEVICE=webgpu # macOS (Metal)
390
- export CODEBAXING_DEVICE=cuda # Linux/Windows (NVIDIA)
391
- export CODEBAXING_DEVICE=auto # Auto-detect
392
- ```
393
-
394
- **Note:** macOS does not support CUDA. Use `webgpu` for GPU acceleration on Mac.
395
-
396
360
  ## Supported Languages
397
361
 
398
362
  Python, JavaScript, TypeScript, C, C++, Bash, Go, Java, Kotlin, Rust, Ruby, C#, PHP, Scala, Swift, Lua, Dart, Elixir, Haskell, OCaml, Zig, Perl, CSS, HTML, Vue, JSON, YAML, TOML, Makefile
@@ -409,6 +373,7 @@ Python, JavaScript, TypeScript, C, C++, Bash, Go, Java, Kotlin, Rust, Ruby, C#,
409
373
  ## Requirements
410
374
 
411
375
  - Node.js >= 20.0.0
376
+ - Docker (for ChromaDB, optional but recommended)
412
377
  - ~500MB disk space for embedding model (downloaded on first run)
413
378
 
414
379
  ## Technical Details
package/README.vi.md CHANGED
@@ -11,13 +11,10 @@ MCP server cho **semantic code search**. Index codebase và tìm kiếm bằng n
11
11
 
12
12
  - [Ý tưởng](#ý-tưởng)
13
13
  - [Bắt đầu nhanh](#bắt-đầu-nhanh)
14
- - [Cách sử dụng](#cách-sử-dụng)
15
- - [Qua AI Agents (MCP)](#qua-ai-agents-mcp)
16
- - [Qua CLI (Terminal)](#qua-cli-terminal)
17
14
  - [Cài đặt](#cài-đặt)
18
- - [ chế hoạt động](#cơ-chế-hoạt-động)
15
+ - [Cách sử dụng](#cách-sử-dụng)
19
16
  - [Cấu hình](#cấu-hình)
20
- - [Ngôn ngữ hỗ trợ](#ngôn-ngữ-hỗ-trợ)
17
+ - [ chế hoạt động](#cơ-chế-hoạt-động)
21
18
 
22
19
  ## Ý tưởng
23
20
 
@@ -37,46 +34,103 @@ Tìm được: login(), validateCredentials(), checkPassword(), authMiddleware()
37
34
 
38
35
  ## Bắt đầu nhanh
39
36
 
40
- ### 1. Cài vào AI editor của bạn
37
+ ### Cho AI Editors (Claude Desktop, Cursor, Windsurf)
41
38
 
42
39
  ```bash
40
+ # Cài đặt một lệnh
43
41
  npx codebaxing install # Claude Desktop
44
42
  npx codebaxing install --cursor # Cursor
45
43
  npx codebaxing install --windsurf # Windsurf
46
44
  npx codebaxing install --all # Tất cả editors
47
45
  ```
48
46
 
49
- ### 2. Khởi động lại editor
47
+ Khởi động lại editor, sau đó hỏi: *"Index project của tôi tại /path/to/myproject"*
48
+
49
+ ### Cho CLI (Terminal)
50
+
51
+ ```bash
52
+ # 1. Khởi động ChromaDB (bắt buộc cho CLI)
53
+ docker run -d -p 8000:8000 --name chromadb chromadb/chroma
54
+
55
+ # 2. Set biến môi trường
56
+ export CHROMADB_URL=http://localhost:8000
57
+
58
+ # 3. Index và tìm kiếm
59
+ npx codebaxing index /path/to/project
60
+ npx codebaxing search "authentication logic"
61
+ ```
62
+
63
+ ## Cài đặt
64
+
65
+ ### Bước 1: Cài vào AI Editor
66
+
67
+ ```bash
68
+ npx codebaxing install # Claude Desktop (mặc định)
69
+ npx codebaxing install --cursor # Cursor
70
+ npx codebaxing install --windsurf # Windsurf (Codeium)
71
+ npx codebaxing install --zed # Zed
72
+ npx codebaxing install --all # Tất cả editors
73
+ ```
74
+
75
+ ### Bước 2: (Tùy chọn) Setup ChromaDB cho Lưu trữ Vĩnh viễn
76
+
77
+ Mặc định, index được lưu trong memory và mất khi editor khởi động lại.
78
+
79
+ Để lưu trữ vĩnh viễn, chạy ChromaDB:
80
+
81
+ ```bash
82
+ # Khởi động ChromaDB với Docker
83
+ docker run -d -p 8000:8000 --name chromadb chromadb/chroma
84
+
85
+ # Kiểm tra đang chạy
86
+ curl http://localhost:8000/api/v1/heartbeat
87
+ # Sẽ trả về: {"nanosecond heartbeat":...}
88
+ ```
50
89
 
51
- ### 3. Bắt đầu sử dụng
90
+ Sau đó cập nhật config editor để thêm biến môi trường:
52
91
 
53
- Trong Claude Desktop (hoặc Cursor, Windsurf...):
92
+ **Claude Desktop** (`~/Library/Application Support/Claude/claude_desktop_config.json`):
54
93
 
94
+ ```json
95
+ {
96
+ "mcpServers": {
97
+ "codebaxing": {
98
+ "command": "npx",
99
+ "args": ["-y", "codebaxing"],
100
+ "env": {
101
+ "CHROMADB_URL": "http://localhost:8000"
102
+ }
103
+ }
104
+ }
105
+ }
55
106
  ```
56
- Bạn: Index project của tôi tại /path/to/myproject
57
- Claude: [gọi index tool]
58
107
 
59
- Bạn: Tìm logic xác thực
60
- Claude: [gọi search tool, trả về code liên quan]
108
+ ### Bước 3: Khởi động lại Editor
109
+
110
+ Các tools Codebaxing đã sẵn sàng!
111
+
112
+ ### Gỡ cài đặt
113
+
114
+ ```bash
115
+ npx codebaxing uninstall # Claude Desktop
116
+ npx codebaxing uninstall --all # Tất cả editors
61
117
  ```
62
118
 
63
119
  ## Cách sử dụng
64
120
 
65
- ### Qua AI Agents (MCP)
121
+ ### Qua AI Agents (Claude Desktop, Cursor, v.v.)
66
122
 
67
- Sau khi cài vào AI editor, bạn tương tác qua hội thoại tự nhiên:
123
+ Sau khi cài đặt, tương tác qua hội thoại tự nhiên:
68
124
 
69
- #### Bước 1: Index codebase (Bắt buộc đầu tiên)
125
+ #### 1. Index codebase (Bắt buộc đầu tiên)
70
126
 
71
127
  ```
72
128
  Bạn: Index codebase tại /Users/me/projects/myapp
73
129
  ```
74
130
 
75
- Claude sẽ gọi `index(path="/Users/me/projects/myapp")` và hiển thị tiến trình.
76
-
77
131
  > **Lưu ý:** Lần đầu chạy sẽ download embedding model (~90MB), mất 1-2 phút.
78
132
 
79
- #### Bước 2: Tìm kiếm code
133
+ #### 2. Tìm kiếm code
80
134
 
81
135
  ```
82
136
  Bạn: Tìm code xử lý xác thực người dùng
@@ -84,7 +138,7 @@ Bạn: Logic kết nối database ở đâu?
84
138
  Bạn: Cho tôi xem patterns xử lý lỗi
85
139
  ```
86
140
 
87
- #### Bước 3: Sử dụng memory (tùy chọn)
141
+ #### 3. Sử dụng memory (tùy chọn)
88
142
 
89
143
  ```
90
144
  Bạn: Ghi nhớ rằng chúng ta dùng PostgreSQL với Prisma ORM
@@ -106,102 +160,78 @@ Bạn: Những quyết định nào đã được đưa ra về database?
106
160
 
107
161
  ### Qua CLI (Terminal)
108
162
 
109
- Bạn thể dùng Codebaxing trực tiếp từ terminal không cần AI agents:
163
+ Các lệnh CLI **yêu cầu ChromaDB** đang chạy. Xem [Setup ChromaDB](#bước-2-tùy-chọn-setup-chromadb-cho-lưu-trữ-vĩnh-viễn).
110
164
 
111
- #### Bước 1: Index codebase (Bắt buộc đầu tiên)
165
+ #### Yêu cầu
112
166
 
113
167
  ```bash
114
- npx codebaxing index /path/to/project
115
- ```
168
+ # Khởi động ChromaDB
169
+ docker run -d -p 8000:8000 --name chromadb chromadb/chroma
116
170
 
117
- Output:
118
- ```
119
- 🔧 Codebaxing - Index Codebase
120
-
121
- 📁 Path: /path/to/project
122
-
123
- ================================================================================
124
- INDEXING CODEBASE
125
- ================================================================================
126
- Found 47 files
127
- Parsed 645 symbols from 47 files
128
- Generating embeddings for 645 chunks...
129
- Model loaded: Xenova/all-MiniLM-L6-v2 (384 dims, CPU)
130
-
131
- ================================================================================
132
- INDEXING COMPLETE
133
- ================================================================================
134
- Files parsed: 47
135
- Symbols extracted: 645
136
- Chunks created: 645
137
- Time elapsed: 21.9s
171
+ # Set biến môi trường (thêm vào ~/.bashrc hoặc ~/.zshrc)
172
+ export CHROMADB_URL=http://localhost:8000
138
173
  ```
139
174
 
140
- #### Bước 2: Tìm kiếm code
175
+ #### Các lệnh
141
176
 
142
177
  ```bash
178
+ # Index codebase
179
+ npx codebaxing index /path/to/project
180
+
181
+ # Tìm kiếm code
143
182
  npx codebaxing search "authentication middleware"
144
183
  npx codebaxing search "database connection" --path ./src --limit 10
145
- ```
146
-
147
- Output:
148
- ```
149
- 🔧 Codebaxing - Search
150
-
151
- 📁 Path: /path/to/project
152
- 🔍 Query: "authentication middleware"
153
- 📊 Limit: 5
154
-
155
- ────────────────────────────────────────────────────────────
156
- Results:
157
-
158
- 1. src/middleware/auth.ts:15 - authMiddleware()
159
- 2. src/services/auth.ts:42 - validateToken()
160
- 3. src/routes/login.ts:8 - loginHandler()
161
184
 
162
- ────────────────────────────────────────────────────────────
163
- ```
164
-
165
- #### Bước 3: Xem thống kê
166
-
167
- ```bash
185
+ # Xem thống kê index
168
186
  npx codebaxing stats /path/to/project
187
+
188
+ # Xem help
189
+ npx codebaxing --help
169
190
  ```
170
191
 
171
- #### Bảng tham chiếu CLI Commands
192
+ #### Bảng tham chiếu CLI
172
193
 
173
- | Command | Mô tả |
174
- |---------|-------|
194
+ | Lệnh | Mô tả |
195
+ |------|-------|
175
196
  | `npx codebaxing install [--editor]` | Cài MCP server vào AI editor |
176
197
  | `npx codebaxing uninstall [--editor]` | Gỡ MCP server |
177
198
  | `npx codebaxing index <path>` | Index codebase |
178
199
  | `npx codebaxing search <query> [options]` | Tìm kiếm codebase đã index |
179
200
  | `npx codebaxing stats [path]` | Hiển thị thống kê index |
180
- | `npx codebaxing --help` | Hiển thị help |
181
201
 
182
202
  **Search options:**
183
203
  - `--path, -p <path>` - Đường dẫn codebase (mặc định: thư mục hiện tại)
184
204
  - `--limit, -n <number>` - Số kết quả (mặc định: 5)
185
205
 
186
- ## Cài đặt
206
+ ## Cấu hình
207
+
208
+ ### Biến môi trường
187
209
 
188
- ### Cách 1: Cài nhanh (Khuyến nghị)
210
+ | Biến | tả | Mặc định |
211
+ |------|-------|----------|
212
+ | `CHROMADB_URL` | URL ChromaDB server | (in-memory) |
213
+ | `CODEBAXING_DEVICE` | Thiết bị tính toán: `cpu`, `webgpu`, `cuda`, `auto` | `cpu` |
214
+ | `CODEBAXING_MAX_FILE_SIZE` | Kích thước file tối đa để index (MB) | `1` |
215
+
216
+ ### Tăng tốc GPU
189
217
 
190
218
  ```bash
191
- npx codebaxing install # Claude Desktop (mặc định)
192
- npx codebaxing install --cursor # Cursor
193
- npx codebaxing install --windsurf # Windsurf (Codeium)
194
- npx codebaxing install --zed # Zed
195
- npx codebaxing install --all # Tất cả editors
219
+ export CODEBAXING_DEVICE=webgpu # macOS (Metal)
220
+ export CODEBAXING_DEVICE=cuda # Linux/Windows (NVIDIA)
221
+ export CODEBAXING_DEVICE=auto # Tự động detect
196
222
  ```
197
223
 
198
- Sau đó restart editor.
224
+ **Lưu ý:** macOS không hỗ trợ CUDA. Dùng `webgpu` để tăng tốc trên Mac.
225
+
226
+ ### Cấu hình thủ công cho Editors
199
227
 
200
- ### Cách 2: Cấu hình thủ công
228
+ Nếu bạn muốn cấu hình thủ công thay vì dùng `npx codebaxing install`:
201
229
 
202
- #### Claude Desktop
230
+ <details>
231
+ <summary>Claude Desktop</summary>
203
232
 
204
- Thêm vào `~/Library/Application Support/Claude/claude_desktop_config.json` (macOS) hoặc `%APPDATA%\Claude\claude_desktop_config.json` (Windows):
233
+ `~/Library/Application Support/Claude/claude_desktop_config.json` (macOS)
234
+ `%APPDATA%\Claude\claude_desktop_config.json` (Windows)
205
235
 
206
236
  ```json
207
237
  {
@@ -213,10 +243,12 @@ Thêm vào `~/Library/Application Support/Claude/claude_desktop_config.json` (ma
213
243
  }
214
244
  }
215
245
  ```
246
+ </details>
216
247
 
217
- #### Cursor
248
+ <details>
249
+ <summary>Cursor</summary>
218
250
 
219
- Thêm vào `~/.cursor/mcp.json`:
251
+ `~/.cursor/mcp.json`
220
252
 
221
253
  ```json
222
254
  {
@@ -228,10 +260,12 @@ Thêm vào `~/.cursor/mcp.json`:
228
260
  }
229
261
  }
230
262
  ```
263
+ </details>
231
264
 
232
- #### Windsurf
265
+ <details>
266
+ <summary>Windsurf</summary>
233
267
 
234
- Thêm vào `~/.codeium/windsurf/mcp_config.json`:
268
+ `~/.codeium/windsurf/mcp_config.json`
235
269
 
236
270
  ```json
237
271
  {
@@ -243,10 +277,12 @@ Thêm vào `~/.codeium/windsurf/mcp_config.json`:
243
277
  }
244
278
  }
245
279
  ```
280
+ </details>
246
281
 
247
- #### Zed
282
+ <details>
283
+ <summary>Zed</summary>
248
284
 
249
- Thêm vào `~/.config/zed/settings.json`:
285
+ `~/.config/zed/settings.json`
250
286
 
251
287
  ```json
252
288
  {
@@ -260,10 +296,12 @@ Thêm vào `~/.config/zed/settings.json`:
260
296
  }
261
297
  }
262
298
  ```
299
+ </details>
263
300
 
264
- #### VS Code + Continue
301
+ <details>
302
+ <summary>VS Code + Continue</summary>
265
303
 
266
- Thêm vào `~/.continue/config.json`:
304
+ `~/.continue/config.json`
267
305
 
268
306
  ```json
269
307
  {
@@ -280,13 +318,7 @@ Thêm vào `~/.continue/config.json`:
280
318
  }
281
319
  }
282
320
  ```
283
-
284
- ### Gỡ cài đặt
285
-
286
- ```bash
287
- npx codebaxing uninstall # Claude Desktop
288
- npx codebaxing uninstall --all # Tất cả editors
289
- ```
321
+ </details>
290
322
 
291
323
  ## Cơ chế hoạt động
292
324
 
@@ -313,24 +345,6 @@ npx codebaxing uninstall --all # Tất cả editors
313
345
  │ │ (vectors) │ │
314
346
  │ └──────────────┘ │
315
347
  └─────────────────────────────────────────────────────────────────┘
316
-
317
- ┌─────────────────────────────────────────────────────────────────┐
318
- │ SEARCH │
319
- ├─────────────────────────────────────────────────────────────────┤
320
- │ "find auth code" │
321
- │ │ │
322
- │ ▼ │
323
- │ ┌──────────────┐ ┌──────────────┐ │
324
- │ │ Embedding │────────▶│ ChromaDB │ │
325
- │ │ Model │ query │ Query │ │
326
- │ └──────────────┘ vector └──────────────┘ │
327
- │ │ │
328
- │ ▼ │
329
- │ Cosine Similarity │
330
- │ │ │
331
- │ ▼ │
332
- │ Top-k Results │
333
- └─────────────────────────────────────────────────────────────────┘
334
348
  ```
335
349
 
336
350
  ### Tại sao Semantic Search hoạt động
@@ -343,56 +357,6 @@ Embedding model hiểu rằng:
343
357
  | "database" | query, SQL, connection, ORM, repository |
344
358
  | "error handling" | try/catch, exception, throw, ErrorBoundary |
345
359
 
346
- ## Cấu hình
347
-
348
- ### Biến môi trường
349
-
350
- | Biến | Mô tả | Mặc định |
351
- |------|-------|----------|
352
- | `CHROMADB_URL` | URL ChromaDB server để lưu trữ vĩnh viễn | (in-memory) |
353
- | `CODEBAXING_DEVICE` | Thiết bị tính toán: `cpu`, `webgpu`, `cuda`, `auto` | `cpu` |
354
- | `CODEBAXING_MAX_FILE_SIZE` | Kích thước file tối đa để index (MB) | `1` |
355
-
356
- ### Lưu trữ vĩnh viễn
357
-
358
- Mặc định, index được lưu trong memory và mất khi server restart.
359
-
360
- Để lưu trữ vĩnh viễn:
361
-
362
- ```bash
363
- # Khởi động ChromaDB
364
- docker run -d -p 8000:8000 chromadb/chroma
365
-
366
- # Set biến môi trường
367
- export CHROMADB_URL=http://localhost:8000
368
- ```
369
-
370
- Hoặc trong MCP config:
371
-
372
- ```json
373
- {
374
- "mcpServers": {
375
- "codebaxing": {
376
- "command": "npx",
377
- "args": ["-y", "codebaxing"],
378
- "env": {
379
- "CHROMADB_URL": "http://localhost:8000"
380
- }
381
- }
382
- }
383
- }
384
- ```
385
-
386
- ### Tăng tốc GPU
387
-
388
- ```bash
389
- export CODEBAXING_DEVICE=webgpu # macOS (Metal)
390
- export CODEBAXING_DEVICE=cuda # Linux/Windows (NVIDIA)
391
- export CODEBAXING_DEVICE=auto # Tự động detect
392
- ```
393
-
394
- **Lưu ý:** macOS không hỗ trợ CUDA. Dùng `webgpu` để tăng tốc trên Mac.
395
-
396
360
  ## Ngôn ngữ hỗ trợ
397
361
 
398
362
  Python, JavaScript, TypeScript, C, C++, Bash, Go, Java, Kotlin, Rust, Ruby, C#, PHP, Scala, Swift, Lua, Dart, Elixir, Haskell, OCaml, Zig, Perl, CSS, HTML, Vue, JSON, YAML, TOML, Makefile
@@ -409,6 +373,7 @@ Python, JavaScript, TypeScript, C, C++, Bash, Go, Java, Kotlin, Rust, Ruby, C#,
409
373
  ## Yêu cầu
410
374
 
411
375
  - Node.js >= 20.0.0
376
+ - Docker (cho ChromaDB, tùy chọn nhưng khuyến nghị)
412
377
  - ~500MB dung lượng đĩa cho embedding model (tải xuống lần chạy đầu tiên)
413
378
 
414
379
  ## Chi tiết kỹ thuật
@@ -132,22 +132,63 @@ async function runIndex(codebasePath) {
132
132
  }
133
133
  console.log('\n🔧 Codebaxing - Index Codebase\n');
134
134
  console.log(`📁 Path: ${absolutePath}\n`);
135
+ // Check ChromaDB connection first
136
+ await checkChromaDBConnection();
135
137
  // Dynamic import to avoid loading heavy dependencies upfront
136
138
  const { SourceRetriever } = await import('../indexing/source-retriever.js');
137
- const retriever = new SourceRetriever({
138
- codebasePath: absolutePath,
139
- embeddingModel: 'all-MiniLM-L6-v2',
140
- verbose: true,
141
- });
142
- await retriever.indexCodebase();
143
- const stats = retriever.getStats();
144
- console.log('\n📊 Index Statistics:');
145
- console.log(` Files: ${stats.totalFiles}`);
146
- console.log(` Symbols: ${stats.totalSymbols}`);
147
- console.log(` Chunks: ${stats.totalChunks}`);
148
- console.log(` Time: ${stats.indexingTime?.toFixed(1)}s\n`);
139
+ try {
140
+ const retriever = new SourceRetriever({
141
+ codebasePath: absolutePath,
142
+ embeddingModel: 'all-MiniLM-L6-v2',
143
+ verbose: true,
144
+ });
145
+ await retriever.indexCodebase();
146
+ const stats = retriever.getStats();
147
+ console.log('\n📊 Index Statistics:');
148
+ console.log(` Files: ${stats.totalFiles}`);
149
+ console.log(` Symbols: ${stats.totalSymbols}`);
150
+ console.log(` Chunks: ${stats.totalChunks}`);
151
+ console.log(` Time: ${stats.indexingTime?.toFixed(1)}s\n`);
152
+ }
153
+ catch (err) {
154
+ const message = err.message;
155
+ if (message.includes('chromadb') || message.includes('Failed to connect')) {
156
+ showChromaDBError();
157
+ }
158
+ throw err;
159
+ }
149
160
  }
150
161
  // ─── Search Command ──────────────────────────────────────────────────────────
162
+ function showChromaDBError() {
163
+ console.error('\n❌ ChromaDB connection failed!\n');
164
+ console.error('CLI commands require ChromaDB server running.\n');
165
+ console.error('Quick fix:\n');
166
+ console.error(' 1. Start ChromaDB:');
167
+ console.error(' docker run -d -p 8000:8000 chromadb/chroma\n');
168
+ console.error(' 2. Set environment variable:');
169
+ console.error(' export CHROMADB_URL=http://localhost:8000\n');
170
+ console.error(' 3. Run again\n');
171
+ process.exit(1);
172
+ }
173
+ async function checkChromaDBConnection() {
174
+ const chromaUrl = process.env.CHROMADB_URL || 'http://localhost:8000';
175
+ console.log(`🔗 Checking ChromaDB connection (${chromaUrl})...`);
176
+ try {
177
+ const controller = new AbortController();
178
+ const timeout = setTimeout(() => controller.abort(), 3000); // 3 second timeout
179
+ const response = await fetch(`${chromaUrl}/api/v1/heartbeat`, {
180
+ signal: controller.signal,
181
+ });
182
+ clearTimeout(timeout);
183
+ if (!response.ok) {
184
+ showChromaDBError();
185
+ }
186
+ console.log('✅ ChromaDB connected\n');
187
+ }
188
+ catch (err) {
189
+ showChromaDBError();
190
+ }
191
+ }
151
192
  async function runSearch(query, options) {
152
193
  const codebasePath = options.path || process.cwd();
153
194
  const absolutePath = path.resolve(codebasePath);
@@ -156,52 +197,74 @@ async function runSearch(query, options) {
156
197
  console.log(`📁 Path: ${absolutePath}`);
157
198
  console.log(`🔍 Query: "${query}"`);
158
199
  console.log(`📊 Limit: ${limit}\n`);
200
+ // Check ChromaDB connection first
201
+ await checkChromaDBConnection();
159
202
  const { SourceRetriever } = await import('../indexing/source-retriever.js');
160
- const retriever = new SourceRetriever({
161
- codebasePath: absolutePath,
162
- embeddingModel: 'all-MiniLM-L6-v2',
163
- verbose: false,
164
- });
165
- // Check if index exists, if not, index first
166
- const stats = retriever.getStats();
167
- if (stats.totalChunks === 0) {
168
- console.log('⚠️ No index found. Indexing first...\n');
169
- await retriever.indexCodebase();
170
- console.log('');
203
+ try {
204
+ const retriever = new SourceRetriever({
205
+ codebasePath: absolutePath,
206
+ embeddingModel: 'all-MiniLM-L6-v2',
207
+ verbose: false,
208
+ });
209
+ // Check if index exists, if not, index first
210
+ const stats = retriever.getStats();
211
+ if (stats.totalChunks === 0) {
212
+ console.log('⚠️ No index found. Indexing first...\n');
213
+ await retriever.indexCodebase();
214
+ console.log('');
215
+ }
216
+ const { sources } = await retriever.getSourcesForQuestion(query, { nResults: limit });
217
+ if (sources.length === 0) {
218
+ console.log('❌ No results found.\n');
219
+ return;
220
+ }
221
+ console.log('─'.repeat(60));
222
+ console.log('Results:\n');
223
+ sources.forEach((source, i) => {
224
+ console.log(`${i + 1}. ${source}`);
225
+ });
226
+ console.log('\n' + '─'.repeat(60) + '\n');
171
227
  }
172
- const { sources, documents } = await retriever.getSourcesForQuestion(query, { nResults: limit });
173
- if (sources.length === 0) {
174
- console.log(' No results found.\n');
175
- return;
228
+ catch (err) {
229
+ const message = err.message;
230
+ if (message.includes('chromadb') || message.includes('Failed to connect')) {
231
+ showChromaDBError();
232
+ }
233
+ throw err;
176
234
  }
177
- console.log('─'.repeat(60));
178
- console.log('Results:\n');
179
- sources.forEach((source, i) => {
180
- console.log(`${i + 1}. ${source}`);
181
- });
182
- console.log('\n' + '─'.repeat(60) + '\n');
183
235
  }
184
236
  // ─── Stats Command ───────────────────────────────────────────────────────────
185
237
  async function runStats(codebasePath) {
186
238
  const absolutePath = path.resolve(codebasePath || process.cwd());
187
239
  console.log('\n🔧 Codebaxing - Statistics\n');
188
240
  console.log(`📁 Path: ${absolutePath}\n`);
241
+ // Check ChromaDB connection first
242
+ await checkChromaDBConnection();
189
243
  const { SourceRetriever } = await import('../indexing/source-retriever.js');
190
- const retriever = new SourceRetriever({
191
- codebasePath: absolutePath,
192
- embeddingModel: 'all-MiniLM-L6-v2',
193
- verbose: false,
194
- });
195
- const stats = retriever.getStats();
196
- console.log('📊 Index Statistics:');
197
- console.log(` Files: ${stats.totalFiles}`);
198
- console.log(` Symbols: ${stats.totalSymbols}`);
199
- console.log(` Chunks: ${stats.totalChunks}`);
200
- console.log(` Parse Errors: ${stats.parseErrors}`);
201
- if (stats.indexingTime) {
202
- console.log(` Index Time: ${stats.indexingTime.toFixed(1)}s`);
244
+ try {
245
+ const retriever = new SourceRetriever({
246
+ codebasePath: absolutePath,
247
+ embeddingModel: 'all-MiniLM-L6-v2',
248
+ verbose: false,
249
+ });
250
+ const stats = retriever.getStats();
251
+ console.log('📊 Index Statistics:');
252
+ console.log(` Files: ${stats.totalFiles}`);
253
+ console.log(` Symbols: ${stats.totalSymbols}`);
254
+ console.log(` Chunks: ${stats.totalChunks}`);
255
+ console.log(` Parse Errors: ${stats.parseErrors}`);
256
+ if (stats.indexingTime) {
257
+ console.log(` Index Time: ${stats.indexingTime.toFixed(1)}s`);
258
+ }
259
+ console.log('');
260
+ }
261
+ catch (err) {
262
+ const message = err.message;
263
+ if (message.includes('chromadb') || message.includes('Failed to connect')) {
264
+ showChromaDBError();
265
+ }
266
+ throw err;
203
267
  }
204
- console.log('');
205
268
  }
206
269
  // ─── CLI ─────────────────────────────────────────────────────────────────────
207
270
  function printUsage() {
@@ -1 +1 @@
1
- {"version":3,"file":"installer.js","sourceRoot":"","sources":["../../src/cli/installer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"installer.js","sourceRoot":"","sources":["../../src/cli/installer.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"source-retriever.d.ts","sourceRoot":"","sources":["../../src/indexing/source-retriever.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAMH,OAAO,EAAE,gBAAgB,EAAE,MAAM,iCAAiC,CAAC;AAEnE,OAAO,EAAE,gBAAgB,EAAuB,MAAM,wBAAwB,CAAC;AAC/E,OAAO,EAAsB,KAAK,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAKlF,eAAO,MAAM,oBAAoB,UAAgC,CAAC;AA6BlE,MAAM,WAAW,oBAAoB;IACnC,UAAU,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IACzB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,wBAAgB,aAAa,CAC3B,YAAY,EAAE,MAAM,EACpB,mBAAmB,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,GAAG,oBAAoB,GACvD,MAAM,EAAE,CA+DV;AAID,MAAM,WAAW,SAAS;IACxB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAClC;AAID,qBAAa,eAAe;IAC1B,YAAY,EAAE,MAAM,CAAC;IACrB,cAAc,EAAE,MAAM,CAAC;IACvB,cAAc,EAAE,MAAM,CAAC;IACvB,OAAO,EAAE,OAAO,CAAC;IACjB,WAAW,EAAE,MAAM,GAAG,SAAS,CAAC;IAEhC,OAAO,CAAC,MAAM,CAAmB;IACjC,OAAO,CAAC,gBAAgB,CAAmB;IAC3C,OAAO,CAAC,YAAY,CAAe;IACnC,OAAO,CAAC,UAAU,CAA2B;IAE7C,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAM3B;IAEF,OAAO,CAAC,QAAQ,CAA+B;gBAEnC,OAAO,EAAE;QACnB,YAAY,EAAE,MAAM,CAAC;QACrB,cAAc,CAAC,EAAE,MAAM,CAAC;QACxB,cAAc,CAAC,EAAE,MAAM,CAAC;QACxB,OAAO,CAAC,EAAE,OAAO,CAAC;QAClB,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,MAAM,CAAC,EAAE,gBAAgB,CAAC;QAC1B,gBAAgB,CAAC,EAAE,gBAAgB,CAAC;KACrC;IA0BD,OAAO,CAAC,GAAG;IAIX,OAAO,CAAC,eAAe;IA4BvB,OAAO,CAAC,WAAW;IAuBb,aAAa,CAAC,OAAO,GAAE;QAC3B,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;QAC1B,gBAAgB,CAAC,EAAE,gBAAgB,CAAC;KAChC,GAAG,OAAO,CAAC,IAAI,CAAC;IAuGhB,qBAAqB,CACzB,QAAQ,EAAE,MAAM,EAChB,OAAO,GAAE;QACP,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,UAAU,CAAC,EAAE,MAAM,CAAC;KAChB,GACL,OAAO,CAAC;QAAE,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,CAAC;QAAC,OAAO,EAAE,MAAM,EAAE,CAAA;KAAE,CAAC;IA2CvE,QAAQ,IAAI,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC;IAI5B,iBAAiB,IAAI,OAAO,CAAC,OAAO,CAAC;IAoB3C,YAAY,CAAC,YAAY,EAAE,MAAM,GAAG,IAAI;IAaxC,YAAY,CAAC,YAAY,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS;IAWjE,kBAAkB,CAAC,OAAO,GAAE;QAChC,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;QAC1B,gBAAgB,CAAC,EAAE,gBAAgB,CAAC;KAChC,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAoH1C"}
1
+ {"version":3,"file":"source-retriever.d.ts","sourceRoot":"","sources":["../../src/indexing/source-retriever.ts"],"names":[],"mappings":"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"}
@@ -212,14 +212,26 @@ export class SourceRetriever {
212
212
  emit('files_found', { files: allFiles, codebasePath: this.codebasePath });
213
213
  if (!options.progressCallback)
214
214
  this.log(`Found ${allFiles.length} files`);
215
- // Step 2: Parse all files
215
+ // Step 2: Parse all files with progress
216
216
  emit('parsing_start', { total: allFiles.length });
217
+ // Create a progress callback for CLI if verbose
218
+ const parseProgressCallback = options.progressCallback ?? (this.verbose ? (eventType, data) => {
219
+ if (eventType === 'file_parsed') {
220
+ const index = data.index;
221
+ const total = data.total;
222
+ const filePath = data.path;
223
+ const relativePath = path.relative(this.codebasePath, filePath);
224
+ const pct = ((index / total) * 100).toFixed(1);
225
+ process.stdout.write(`\rParsing: ${index}/${total} (${pct}%) - ${relativePath.slice(0, 50).padEnd(50)}`);
226
+ }
227
+ } : undefined);
217
228
  const { symbols: allSymbols, errorCount } = parallelParseFiles(allFiles, {
218
- progressCallback: options.progressCallback,
229
+ progressCallback: parseProgressCallback,
219
230
  });
220
231
  this.stats.parseErrors = errorCount;
221
232
  this.stats.totalSymbols = allSymbols.length;
222
233
  if (!options.progressCallback) {
234
+ process.stdout.write('\r' + ' '.repeat(120) + '\r'); // Clear progress line
223
235
  this.log(`Parsed ${allSymbols.length.toLocaleString()} symbols from ${allFiles.length} files`);
224
236
  }
225
237
  // Step 3: Create chunks
@@ -241,12 +253,23 @@ export class SourceRetriever {
241
253
  this.log(`\nGenerating embeddings for ${chunks.length} chunks...`);
242
254
  }
243
255
  const batchSize = 100;
256
+ const embeddingStartTime = performance.now();
244
257
  for (let i = 0; i < chunks.length; i += batchSize) {
245
258
  const batch = chunks.slice(i, i + batchSize);
259
+ const currentProgress = Math.min(i + batchSize, chunks.length);
246
260
  emit('embedding_progress', {
247
- current: Math.min(i + batchSize, chunks.length),
261
+ current: currentProgress,
248
262
  total: chunks.length,
249
263
  });
264
+ // Show progress in CLI
265
+ if (!options.progressCallback && this.verbose) {
266
+ const pct = ((currentProgress / chunks.length) * 100).toFixed(1);
267
+ const elapsed = (performance.now() - embeddingStartTime) / 1000;
268
+ const rate = currentProgress / elapsed;
269
+ const remaining = (chunks.length - currentProgress) / rate;
270
+ const eta = remaining > 60 ? `${(remaining / 60).toFixed(1)}m` : `${remaining.toFixed(0)}s`;
271
+ process.stdout.write(`\rEmbedding: ${currentProgress}/${chunks.length} (${pct}%) - ETA: ${eta} `);
272
+ }
250
273
  try {
251
274
  const texts = batch.map(c => c.text);
252
275
  const embeddings = await this.embeddingService.embedBatch(texts);
@@ -263,6 +286,9 @@ export class SourceRetriever {
263
286
  }
264
287
  }
265
288
  }
289
+ if (!options.progressCallback && this.verbose) {
290
+ process.stdout.write('\r' + ' '.repeat(80) + '\r'); // Clear progress line
291
+ }
266
292
  this.stats.indexingTime = (performance.now() - startTime) / 1000;
267
293
  emit('complete', { stats: { ...this.stats } });
268
294
  if (!options.progressCallback) {
@@ -1 +1 @@
1
- {"version":3,"file":"source-retriever.js","sourceRoot":"","sources":["../../src/indexing/source-retriever.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"source-retriever.js","sourceRoot":"","sources":["../../src/indexing/source-retriever.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "codebaxing",
3
- "version": "0.2.5",
3
+ "version": "0.2.8",
4
4
  "description": "MCP server for semantic code search. Index your codebase and search using natural language.",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",