codemerge-cli 1.3.2 → 1.3.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 +33 -149
- package/dist/core/httpServer.d.ts.map +1 -1
- package/dist/core/httpServer.js +11 -1
- package/dist/core/httpServer.js.map +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -27,7 +27,7 @@ CodeMerge is a CLI tool that:
|
|
|
27
27
|
- **Serves** content via HTTP API for dynamic access
|
|
28
28
|
- **Provides** project structure visualization in JSON
|
|
29
29
|
- **Enables** selective file merging via API
|
|
30
|
-
- **Executes** system commands upon file updates (Upsert hooks)
|
|
30
|
+
- **Executes** system commands upon file updates (Upsert hooks) and initialization
|
|
31
31
|
- **Manages** file deletions and local git commits via API
|
|
32
32
|
|
|
33
33
|
Perfect for:
|
|
@@ -56,22 +56,19 @@ npm install --save-dev codemerge-cli
|
|
|
56
56
|
|
|
57
57
|
### Requirements
|
|
58
58
|
|
|
59
|
-
- Node.js
|
|
59
|
+
- Node.js >= 16.0.0
|
|
60
60
|
|
|
61
61
|
-----
|
|
62
62
|
|
|
63
63
|
## 🚀 Quick Start
|
|
64
64
|
|
|
65
|
-
### 1
|
|
65
|
+
### 1. Initialize Project
|
|
66
66
|
|
|
67
67
|
```bash
|
|
68
|
-
# Initialize in current directory
|
|
69
68
|
codemerge init
|
|
70
69
|
|
|
71
|
-
# Initialize in specific directory
|
|
72
70
|
codemerge init ./my-project
|
|
73
71
|
|
|
74
|
-
# Force overwrite existing config
|
|
75
72
|
codemerge init --force
|
|
76
73
|
```
|
|
77
74
|
|
|
@@ -80,32 +77,25 @@ This creates:
|
|
|
80
77
|
- `codemerge.json` - Configuration file
|
|
81
78
|
- Updates `.gitignore` - Adds output file
|
|
82
79
|
|
|
83
|
-
### 2
|
|
80
|
+
### 2. Merge Files
|
|
84
81
|
|
|
85
82
|
```bash
|
|
86
|
-
# Merge current directory
|
|
87
83
|
codemerge use
|
|
88
84
|
|
|
89
|
-
# Merge specific directory
|
|
90
85
|
codemerge use ./src
|
|
91
86
|
|
|
92
|
-
# Custom output file
|
|
93
87
|
codemerge use --output my-code.txt
|
|
94
88
|
|
|
95
|
-
# Watch for changes
|
|
96
89
|
codemerge use --watch
|
|
97
90
|
```
|
|
98
91
|
|
|
99
|
-
### 3
|
|
92
|
+
### 3. Start HTTP Server
|
|
100
93
|
|
|
101
94
|
```bash
|
|
102
|
-
# Start server on default port (9876)
|
|
103
95
|
codemerge watch
|
|
104
96
|
|
|
105
|
-
# Custom port
|
|
106
97
|
codemerge watch --port 3000
|
|
107
98
|
|
|
108
|
-
# Custom output and filters
|
|
109
99
|
codemerge watch --output api-code.txt --ignore "*.test.ts"
|
|
110
100
|
```
|
|
111
101
|
|
|
@@ -136,12 +126,6 @@ codemerge init [path] [options]
|
|
|
136
126
|
- Adds output file to `.gitignore`
|
|
137
127
|
- Sets up recommended ignore patterns
|
|
138
128
|
|
|
139
|
-
**Example:**
|
|
140
|
-
|
|
141
|
-
```bash
|
|
142
|
-
codemerge init ./backend --force
|
|
143
|
-
```
|
|
144
|
-
|
|
145
129
|
-----
|
|
146
130
|
|
|
147
131
|
### `codemerge use`
|
|
@@ -163,28 +147,6 @@ codemerge use [path] [options]
|
|
|
163
147
|
- `--ignore <patterns>` - Additional ignore patterns (comma-separated)
|
|
164
148
|
- `--include <patterns>` - Include patterns (comma-separated)
|
|
165
149
|
|
|
166
|
-
**Examples:**
|
|
167
|
-
|
|
168
|
-
```bash
|
|
169
|
-
# Basic merge
|
|
170
|
-
codemerge use
|
|
171
|
-
|
|
172
|
-
# Merge src folder only
|
|
173
|
-
codemerge use ./src
|
|
174
|
-
|
|
175
|
-
# Custom output
|
|
176
|
-
codemerge use --output ai-context.txt
|
|
177
|
-
|
|
178
|
-
# Watch mode
|
|
179
|
-
codemerge use --watch
|
|
180
|
-
|
|
181
|
-
# Custom filters
|
|
182
|
-
codemerge use --ignore "*.test.ts,*.spec.js" --include "***.js"
|
|
183
|
-
|
|
184
|
-
# Combine options
|
|
185
|
-
codemerge use ./src --output src-merged.txt --watch
|
|
186
|
-
```
|
|
187
|
-
|
|
188
150
|
-----
|
|
189
151
|
|
|
190
152
|
### `codemerge watch`
|
|
@@ -206,22 +168,6 @@ codemerge watch [path] [options]
|
|
|
206
168
|
- `--ignore <patterns>` - Additional ignore patterns
|
|
207
169
|
- `--include <patterns>` - Include patterns
|
|
208
170
|
|
|
209
|
-
**Examples:**
|
|
210
|
-
|
|
211
|
-
```bash
|
|
212
|
-
# Start server on default port
|
|
213
|
-
codemerge watch
|
|
214
|
-
|
|
215
|
-
# Custom port
|
|
216
|
-
codemerge watch --port 8080
|
|
217
|
-
|
|
218
|
-
# Watch specific directory
|
|
219
|
-
codemerge watch ./src --port 3000
|
|
220
|
-
|
|
221
|
-
# With filters
|
|
222
|
-
codemerge watch --ignore "*.test.ts" --include "***.tsx"
|
|
223
|
-
```
|
|
224
|
-
|
|
225
171
|
**Server Endpoints:**
|
|
226
172
|
|
|
227
173
|
- `GET /health` - Server health status
|
|
@@ -265,6 +211,8 @@ codemerge version
|
|
|
265
211
|
"outputPath": "merged-output.txt",
|
|
266
212
|
"port": 9876,
|
|
267
213
|
"useGitignore": true,
|
|
214
|
+
"onStartCommand": "npm run dev",
|
|
215
|
+
"onStartCommandLogs": false,
|
|
268
216
|
"onUpsertCommand": "npm run build",
|
|
269
217
|
"ignorePatterns": [
|
|
270
218
|
"node_modules*.log",
|
|
@@ -280,7 +228,10 @@ codemerge version
|
|
|
280
228
|
}
|
|
281
229
|
```
|
|
282
230
|
|
|
283
|
-
**
|
|
231
|
+
**Lifecycle Commands:**
|
|
232
|
+
- `onStartCommand`: Command to run automatically when the codemerge server/watcher starts.
|
|
233
|
+
- `onStartCommandLogs`: Boolean flag to display the logs of the start command in the console.
|
|
234
|
+
- `onUpsertCommand`: Shell command to execute immediately after a successful POST to `/upsert`.
|
|
284
235
|
|
|
285
236
|
### Default Include Patterns
|
|
286
237
|
|
|
@@ -301,6 +252,7 @@ You can also configure in `package.json`:
|
|
|
301
252
|
"name": "my-project",
|
|
302
253
|
"codemergeConfig": {
|
|
303
254
|
"outputPath": "ai-digest.txt",
|
|
255
|
+
"onStartCommand": "npm start",
|
|
304
256
|
"onUpsertCommand": "echo 'Upsert complete'",
|
|
305
257
|
"ignorePatterns": ["***.ts"]
|
|
306
258
|
}
|
|
@@ -319,35 +271,15 @@ codemerge watch --port 9876
|
|
|
319
271
|
|
|
320
272
|
### API Endpoints
|
|
321
273
|
|
|
322
|
-
#### 1
|
|
274
|
+
#### 1. Health Check
|
|
323
275
|
|
|
324
276
|
**GET** `/health`
|
|
325
277
|
|
|
326
278
|
Check server status.
|
|
327
279
|
|
|
328
|
-
**Response:**
|
|
329
|
-
|
|
330
|
-
```json
|
|
331
|
-
{
|
|
332
|
-
"status": "ok",
|
|
333
|
-
"project": "my-project",
|
|
334
|
-
"endpoints": {
|
|
335
|
-
"merge": "/content",
|
|
336
|
-
"structure": "/structure",
|
|
337
|
-
"selectiveContent": "/selective-content",
|
|
338
|
-
"upsert": "/upsert",
|
|
339
|
-
"deleteFiles": "/delete-files",
|
|
340
|
-
"commit": "/commit",
|
|
341
|
-
"commandOutput": "/command-output",
|
|
342
|
-
"health": "/health"
|
|
343
|
-
},
|
|
344
|
-
"mergeReady": true
|
|
345
|
-
}
|
|
346
|
-
```
|
|
347
|
-
|
|
348
280
|
-----
|
|
349
281
|
|
|
350
|
-
#### 2
|
|
282
|
+
#### 2. Get Merged Content
|
|
351
283
|
|
|
352
284
|
**GET** `/content`
|
|
353
285
|
|
|
@@ -355,7 +287,7 @@ Get full merged content of all files.
|
|
|
355
287
|
|
|
356
288
|
-----
|
|
357
289
|
|
|
358
|
-
#### 3
|
|
290
|
+
#### 3. Get Project Structure
|
|
359
291
|
|
|
360
292
|
**GET** `/structure`
|
|
361
293
|
|
|
@@ -363,7 +295,7 @@ Get project structure as JSON tree.
|
|
|
363
295
|
|
|
364
296
|
-----
|
|
365
297
|
|
|
366
|
-
#### 4
|
|
298
|
+
#### 4. Get Selective Content
|
|
367
299
|
|
|
368
300
|
**POST** `/selective-content`
|
|
369
301
|
|
|
@@ -371,7 +303,7 @@ Merge only selected files/folders.
|
|
|
371
303
|
|
|
372
304
|
-----
|
|
373
305
|
|
|
374
|
-
#### 5
|
|
306
|
+
#### 5. Upsert Files
|
|
375
307
|
|
|
376
308
|
**POST** `/upsert`
|
|
377
309
|
|
|
@@ -379,7 +311,7 @@ Create or update files in the project. If `onUpsertCommand` is configured, it wi
|
|
|
379
311
|
|
|
380
312
|
-----
|
|
381
313
|
|
|
382
|
-
#### 6
|
|
314
|
+
#### 6. Delete Files
|
|
383
315
|
|
|
384
316
|
**POST** `/delete-files`
|
|
385
317
|
|
|
@@ -419,21 +351,25 @@ Delete specific files from the project.
|
|
|
419
351
|
|
|
420
352
|
-----
|
|
421
353
|
|
|
422
|
-
#### 7
|
|
354
|
+
#### 7. Local Git Commit
|
|
423
355
|
|
|
424
356
|
**POST** `/commit`
|
|
425
357
|
|
|
426
|
-
Execute a local git commit for all changes in the current directory (`git add .` followed by `git commit -m "
|
|
358
|
+
Execute a local git commit for all changes in the current directory (`git add .` followed by `git commit -m "type: message"`).
|
|
427
359
|
|
|
428
360
|
**Request Body:**
|
|
429
361
|
|
|
430
362
|
```json
|
|
431
363
|
{
|
|
432
364
|
"basePath": "./",
|
|
433
|
-
"
|
|
365
|
+
"type": "feat",
|
|
366
|
+
"message": "add new dynamic endpoints for server management",
|
|
367
|
+
"translate": false
|
|
434
368
|
}
|
|
435
369
|
```
|
|
436
370
|
|
|
371
|
+
*Note: The `type` and `message` properties are explicitly required. The `translate` boolean flag is optional.*
|
|
372
|
+
|
|
437
373
|
**Response:**
|
|
438
374
|
|
|
439
375
|
```json
|
|
@@ -446,7 +382,7 @@ Execute a local git commit for all changes in the current directory (`git add .`
|
|
|
446
382
|
|
|
447
383
|
-----
|
|
448
384
|
|
|
449
|
-
#### 8
|
|
385
|
+
#### 8. Get Command Output
|
|
450
386
|
|
|
451
387
|
**GET** `/command-output`
|
|
452
388
|
|
|
@@ -456,38 +392,34 @@ Retrieves the result (stdout/stderr) of the last executed command triggered by a
|
|
|
456
392
|
|
|
457
393
|
## 💡 Use Cases
|
|
458
394
|
|
|
459
|
-
### 1
|
|
395
|
+
### 1. AI Code Analysis
|
|
460
396
|
|
|
461
397
|
Prepare your entire codebase for AI analysis:
|
|
462
398
|
|
|
463
399
|
```bash
|
|
464
|
-
# Generate merged file
|
|
465
400
|
codemerge use --output for-ai.txt
|
|
466
401
|
|
|
467
|
-
# Copy content and paste into ChatGPT/Claude
|
|
468
402
|
cat for-ai.txt | pbcopy # macOS
|
|
469
403
|
cat for-ai.txt | xclip # Linux
|
|
470
404
|
```
|
|
471
405
|
|
|
472
|
-
### 2
|
|
406
|
+
### 2. Code Review Context
|
|
473
407
|
|
|
474
408
|
Generate context for code reviews:
|
|
475
409
|
|
|
476
410
|
```bash
|
|
477
|
-
# Merge only source files
|
|
478
411
|
codemerge use ./src --output review-context.txt --ignore "*.test.ts,*.spec.js"
|
|
479
412
|
```
|
|
480
413
|
|
|
481
|
-
### 3
|
|
414
|
+
### 3. Documentation Generation
|
|
482
415
|
|
|
483
416
|
Create documentation snapshots:
|
|
484
417
|
|
|
485
418
|
```bash
|
|
486
|
-
# Include docs and source
|
|
487
419
|
codemerge use --include "***.ts" --output docs-snapshot.txt
|
|
488
420
|
```
|
|
489
421
|
|
|
490
|
-
### 4
|
|
422
|
+
### 4. AI-Powered Developer Tools
|
|
491
423
|
|
|
492
424
|
Build tools that need dynamic project access:
|
|
493
425
|
|
|
@@ -502,67 +434,19 @@ const content = await fetch('http://localhost:9876/selective-content', {
|
|
|
502
434
|
await sendToAI(content);
|
|
503
435
|
```
|
|
504
436
|
|
|
505
|
-
### 5
|
|
437
|
+
### 5. Continuous Context Updates
|
|
506
438
|
|
|
507
439
|
Watch mode for real-time updates:
|
|
508
440
|
|
|
509
441
|
```bash
|
|
510
|
-
# Terminal 1: Watch and serve
|
|
511
442
|
codemerge watch --port 3000
|
|
512
443
|
|
|
513
|
-
# Terminal 2: Your app constantly fetches latest
|
|
514
444
|
while true; do
|
|
515
445
|
curl http://localhost:3000/content > latest.txt
|
|
516
446
|
sleep 5
|
|
517
447
|
done
|
|
518
448
|
```
|
|
519
449
|
|
|
520
|
-
### 6\. Multi-Project Monitoring
|
|
521
|
-
|
|
522
|
-
Monitor multiple projects:
|
|
523
|
-
|
|
524
|
-
```bash
|
|
525
|
-
# Project 1
|
|
526
|
-
cd ~/project1 && codemerge watch --port 9001
|
|
527
|
-
|
|
528
|
-
# Project 2
|
|
529
|
-
cd ~/project2 && codemerge watch --port 9002
|
|
530
|
-
|
|
531
|
-
# Project 3
|
|
532
|
-
cd ~/project3 && codemerge watch --port 9003
|
|
533
|
-
```
|
|
534
|
-
|
|
535
|
-
-----
|
|
536
|
-
|
|
537
|
-
## 🔧 Advanced Usage
|
|
538
|
-
|
|
539
|
-
### Custom Patterns
|
|
540
|
-
|
|
541
|
-
#### Include TypeScript Only
|
|
542
|
-
|
|
543
|
-
```bash
|
|
544
|
-
codemerge use --include "***.tsx"
|
|
545
|
-
```
|
|
546
|
-
|
|
547
|
-
#### Exclude Tests and Configs
|
|
548
|
-
|
|
549
|
-
```bash
|
|
550
|
-
codemerge use --ignore "***.spec.js,***.ts,lib*.ts"
|
|
551
|
-
```
|
|
552
|
-
|
|
553
|
-
### Combining Options
|
|
554
|
-
|
|
555
|
-
```bash
|
|
556
|
-
codemerge use \
|
|
557
|
-
./backend \
|
|
558
|
-
--output backend-code.txt \
|
|
559
|
-
--watch \
|
|
560
|
-
--ignore "**migrations*.ts,***.ts", "***.test.ts", "***.json,***.min.js"
|
|
561
|
-
|
|
562
|
-
# Include only specific types
|
|
563
|
-
codemerge use --include "***.png,***.pdf"
|
|
564
|
-
```
|
|
565
|
-
|
|
566
450
|
-----
|
|
567
451
|
|
|
568
452
|
## 📚 Additional Resources
|
|
@@ -575,13 +459,13 @@ codemerge use --include "***.png,***.pdf"
|
|
|
575
459
|
|
|
576
460
|
## 📝 License
|
|
577
461
|
|
|
578
|
-
MIT License - feel free to use in your projects
|
|
462
|
+
MIT License - feel free to use in your projects!
|
|
579
463
|
|
|
580
464
|
-----
|
|
581
465
|
|
|
582
466
|
## 🤝 Contributing
|
|
583
467
|
|
|
584
|
-
Contributions welcome
|
|
468
|
+
Contributions welcome! Please:
|
|
585
469
|
|
|
586
470
|
1. Fork the repository
|
|
587
471
|
2. Create a feature branch
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"httpServer.d.ts","sourceRoot":"","sources":["../../lib/core/httpServer.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"httpServer.d.ts","sourceRoot":"","sources":["../../lib/core/httpServer.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAG7C,OAAO,KAAK,EAAwD,YAAY,EAAuE,MAAM,mBAAmB,CAAC;AAIjL,qBAAa,UAAU;IACrB,OAAO,CAAC,aAAa,CAA8B;IACnD,OAAO,CAAC,YAAY,CAA6B;IACjD,OAAO,CAAC,MAAM,CAA2B;IACzC,OAAO,CAAC,MAAM,CAAuB;IACrC,OAAO,CAAC,WAAW,CAAS;IAC5B,OAAO,CAAC,KAAK,CAAa;IAC1B,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,IAAI,CAAS;gBAET,IAAI,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,KAAK,EAAE,UAAU,EAAE,QAAQ,GAAE,MAAsB;IAO3F,SAAS,GAAI,QAAQ,UAAU,EAAE,SAAS,YAAY,KAAG,IAAI,CAGlE;IAEK,KAAK,QAAa,OAAO,CAAC,IAAI,CAAC,CAapC;IAEK,IAAI,QAAO,IAAI,CAIpB;IAEF,OAAO,CAAC,aAAa,CAcnB;IAEF,OAAO,CAAC,uBAAuB,CAe7B;IAEF,OAAO,CAAC,8BAA8B,CAqCpC;IAEF,OAAO,CAAC,oBAAoB,CAuB1B;IAEF,OAAO,CAAC,yBAAyB,CAsB/B;IAEF,OAAO,CAAC,oBAAoB,CAwC1B;IAEF,OAAO,CAAC,aAAa,CAsBnB;IAEF,OAAO,CAAC,kBAAkB,CAsBxB;IAEF,OAAO,CAAC,wBAAwB,CAW9B;IAEF,OAAO,CAAC,2BAA2B,CAGjC;IAEF,OAAO,CAAC,mBAAmB,CASzB;IAEF,OAAO,CAAC,oBAAoB,CAiB1B;IAEF,OAAO,CAAC,cAAc,CAMpB;CACH"}
|
package/dist/core/httpServer.js
CHANGED
|
@@ -2,6 +2,7 @@ import { createServer } from 'http';
|
|
|
2
2
|
import { exec } from 'child_process';
|
|
3
3
|
import { promisify } from 'util';
|
|
4
4
|
import { resolve } from 'path';
|
|
5
|
+
import { translateText } from '../utils/translate.js';
|
|
5
6
|
import { FileUtils } from '../utils/fileUtils.js';
|
|
6
7
|
import { Logger } from '../utils/logger.js';
|
|
7
8
|
const execAsync = promisify(exec);
|
|
@@ -177,9 +178,18 @@ export class HttpServer {
|
|
|
177
178
|
res.end(JSON.stringify({ success: false, error: 'Commit type and message are required' }));
|
|
178
179
|
return;
|
|
179
180
|
}
|
|
181
|
+
let commitMessage = data.message;
|
|
182
|
+
if (data.translate) {
|
|
183
|
+
try {
|
|
184
|
+
commitMessage = await translateText(commitMessage, 'en');
|
|
185
|
+
}
|
|
186
|
+
catch {
|
|
187
|
+
Logger.warning('Translation failed, using original message');
|
|
188
|
+
}
|
|
189
|
+
}
|
|
180
190
|
const basePath = data.basePath ? resolve(data.basePath) : this.basePath;
|
|
181
191
|
const cleanType = data.type.replace(/"/g, '\\"');
|
|
182
|
-
const cleanMessage =
|
|
192
|
+
const cleanMessage = commitMessage.replace(/"/g, '\\"');
|
|
183
193
|
const fullMessage = `${cleanType}: ${cleanMessage}`;
|
|
184
194
|
await execAsync('git add .', { cwd: basePath });
|
|
185
195
|
const { stdout, stderr } = await execAsync(`git commit -m "${fullMessage}"`, { cwd: basePath });
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"httpServer.js","sourceRoot":"","sources":["../../lib/core/httpServer.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"httpServer.js","sourceRoot":"","sources":["../../lib/core/httpServer.ts"],"names":[],"mappings":"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"}
|