@askexenow/exe-os 0.8.92 → 0.8.94
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/dist/bin/backfill-conversations.js +9 -2
- package/dist/bin/backfill-responses.js +9 -2
- package/dist/bin/backfill-vectors.js +9 -2
- package/dist/bin/cli.js +22 -4
- package/dist/bin/exe-assign.js +9 -2
- package/dist/bin/exe-boot.js +9 -2
- package/dist/bin/exe-gateway.js +9 -2
- package/dist/bin/exe-link.js +9 -2
- package/dist/bin/exe-rename.js +9 -2
- package/dist/bin/exe-search.js +9 -2
- package/dist/bin/exe-session-cleanup.js +9 -2
- package/dist/bin/git-sweep.js +9 -2
- package/dist/bin/scan-tasks.js +9 -2
- package/dist/bin/setup.js +22 -4
- package/dist/gateway/index.js +9 -2
- package/dist/hooks/commit-complete.js +9 -2
- package/dist/hooks/error-recall.js +9 -2
- package/dist/hooks/ingest-worker.js +9 -2
- package/dist/hooks/instructions-loaded.js +9 -2
- package/dist/hooks/notification.js +9 -2
- package/dist/hooks/post-compact.js +9 -2
- package/dist/hooks/pre-compact.js +9 -2
- package/dist/hooks/pre-tool-use.js +9 -2
- package/dist/hooks/prompt-ingest-worker.js +9 -2
- package/dist/hooks/prompt-submit.js +9 -2
- package/dist/hooks/response-ingest-worker.js +9 -2
- package/dist/hooks/session-end.js +9 -2
- package/dist/hooks/session-start.js +9 -2
- package/dist/hooks/stop.js +9 -2
- package/dist/hooks/subagent-stop.js +9 -2
- package/dist/hooks/summary-worker.js +9 -2
- package/dist/index.js +9 -2
- package/dist/lib/cloud-sync.js +9 -2
- package/dist/lib/database.js +9 -2
- package/dist/lib/db-daemon-client.js +9 -2
- package/dist/lib/device-registry.js +9 -2
- package/dist/lib/embedder.js +9 -2
- package/dist/lib/exe-daemon-client.js +9 -2
- package/dist/lib/exe-daemon.js +9 -2
- package/dist/lib/hybrid-search.js +9 -2
- package/dist/mcp/server.js +9 -2
- package/dist/runtime/index.js +9 -2
- package/dist/tui/App.js +9 -2
- package/package.json +1 -1
|
@@ -1755,9 +1755,16 @@ function findPackageRoot() {
|
|
|
1755
1755
|
function spawnDaemon() {
|
|
1756
1756
|
const freeGB = os4.freemem() / (1024 * 1024 * 1024);
|
|
1757
1757
|
const totalGB = os4.totalmem() / (1024 * 1024 * 1024);
|
|
1758
|
-
if (
|
|
1758
|
+
if (totalGB <= 8) {
|
|
1759
1759
|
process.stderr.write(
|
|
1760
|
-
`[exed-client] SKIP:
|
|
1760
|
+
`[exed-client] SKIP: ${totalGB.toFixed(0)}GB system \u2014 embedding daemon disabled. Using keyword search only. Minimum 16GB recommended for vector search.
|
|
1761
|
+
`
|
|
1762
|
+
);
|
|
1763
|
+
return;
|
|
1764
|
+
}
|
|
1765
|
+
if (totalGB <= 16 && freeGB < 4) {
|
|
1766
|
+
process.stderr.write(
|
|
1767
|
+
`[exed-client] SKIP: low memory (${freeGB.toFixed(1)}GB free / ${totalGB.toFixed(0)}GB total). Embedding daemon not started \u2014 using keyword search only.
|
|
1761
1768
|
`
|
|
1762
1769
|
);
|
|
1763
1770
|
return;
|
|
@@ -1755,9 +1755,16 @@ function findPackageRoot() {
|
|
|
1755
1755
|
function spawnDaemon() {
|
|
1756
1756
|
const freeGB = os4.freemem() / (1024 * 1024 * 1024);
|
|
1757
1757
|
const totalGB = os4.totalmem() / (1024 * 1024 * 1024);
|
|
1758
|
-
if (
|
|
1758
|
+
if (totalGB <= 8) {
|
|
1759
1759
|
process.stderr.write(
|
|
1760
|
-
`[exed-client] SKIP:
|
|
1760
|
+
`[exed-client] SKIP: ${totalGB.toFixed(0)}GB system \u2014 embedding daemon disabled. Using keyword search only. Minimum 16GB recommended for vector search.
|
|
1761
|
+
`
|
|
1762
|
+
);
|
|
1763
|
+
return;
|
|
1764
|
+
}
|
|
1765
|
+
if (totalGB <= 16 && freeGB < 4) {
|
|
1766
|
+
process.stderr.write(
|
|
1767
|
+
`[exed-client] SKIP: low memory (${freeGB.toFixed(1)}GB free / ${totalGB.toFixed(0)}GB total). Embedding daemon not started \u2014 using keyword search only.
|
|
1761
1768
|
`
|
|
1762
1769
|
);
|
|
1763
1770
|
return;
|
|
@@ -1757,9 +1757,16 @@ function findPackageRoot() {
|
|
|
1757
1757
|
function spawnDaemon() {
|
|
1758
1758
|
const freeGB = os4.freemem() / (1024 * 1024 * 1024);
|
|
1759
1759
|
const totalGB = os4.totalmem() / (1024 * 1024 * 1024);
|
|
1760
|
-
if (
|
|
1760
|
+
if (totalGB <= 8) {
|
|
1761
1761
|
process.stderr.write(
|
|
1762
|
-
`[exed-client] SKIP:
|
|
1762
|
+
`[exed-client] SKIP: ${totalGB.toFixed(0)}GB system \u2014 embedding daemon disabled. Using keyword search only. Minimum 16GB recommended for vector search.
|
|
1763
|
+
`
|
|
1764
|
+
);
|
|
1765
|
+
return;
|
|
1766
|
+
}
|
|
1767
|
+
if (totalGB <= 16 && freeGB < 4) {
|
|
1768
|
+
process.stderr.write(
|
|
1769
|
+
`[exed-client] SKIP: low memory (${freeGB.toFixed(1)}GB free / ${totalGB.toFixed(0)}GB total). Embedding daemon not started \u2014 using keyword search only.
|
|
1763
1770
|
`
|
|
1764
1771
|
);
|
|
1765
1772
|
return;
|
package/dist/bin/cli.js
CHANGED
|
@@ -1455,9 +1455,16 @@ function findPackageRoot() {
|
|
|
1455
1455
|
function spawnDaemon() {
|
|
1456
1456
|
const freeGB = os6.freemem() / (1024 * 1024 * 1024);
|
|
1457
1457
|
const totalGB = os6.totalmem() / (1024 * 1024 * 1024);
|
|
1458
|
-
if (
|
|
1458
|
+
if (totalGB <= 8) {
|
|
1459
1459
|
process.stderr.write(
|
|
1460
|
-
`[exed-client] SKIP:
|
|
1460
|
+
`[exed-client] SKIP: ${totalGB.toFixed(0)}GB system \u2014 embedding daemon disabled. Using keyword search only. Minimum 16GB recommended for vector search.
|
|
1461
|
+
`
|
|
1462
|
+
);
|
|
1463
|
+
return;
|
|
1464
|
+
}
|
|
1465
|
+
if (totalGB <= 16 && freeGB < 4) {
|
|
1466
|
+
process.stderr.write(
|
|
1467
|
+
`[exed-client] SKIP: low memory (${freeGB.toFixed(1)}GB free / ${totalGB.toFixed(0)}GB total). Embedding daemon not started \u2014 using keyword search only.
|
|
1461
1468
|
`
|
|
1462
1469
|
);
|
|
1463
1470
|
return;
|
|
@@ -12412,10 +12419,11 @@ async function validateModel(log) {
|
|
|
12412
12419
|
}
|
|
12413
12420
|
async function runSetupWizard(opts = {}) {
|
|
12414
12421
|
const {
|
|
12415
|
-
skipModel = false,
|
|
12422
|
+
skipModel: skipModelOpt = false,
|
|
12416
12423
|
skipModelValidation = false,
|
|
12417
12424
|
log = (msg) => process.stderr.write(msg + "\n")
|
|
12418
12425
|
} = opts;
|
|
12426
|
+
let skipModel = skipModelOpt;
|
|
12419
12427
|
const rl = opts.createReadline ? opts.createReadline() : createInterface3({ input: process.stdin, output: process.stderr });
|
|
12420
12428
|
try {
|
|
12421
12429
|
log("");
|
|
@@ -12592,9 +12600,16 @@ async function runSetupWizard(opts = {}) {
|
|
|
12592
12600
|
}
|
|
12593
12601
|
log("");
|
|
12594
12602
|
if (!state.completedSteps.includes(3)) {
|
|
12603
|
+
const totalGB = getTotalMemoryGB();
|
|
12604
|
+
if (totalGB <= 8) {
|
|
12605
|
+
log(`System: ${totalGB.toFixed(0)}GB RAM detected`);
|
|
12606
|
+
log("Skipping embedding model download (keyword search mode).");
|
|
12607
|
+
log("Vector search requires 16GB+ RAM. Your search uses keyword matching,");
|
|
12608
|
+
log("which works great for most use cases.");
|
|
12609
|
+
skipModel = true;
|
|
12610
|
+
}
|
|
12595
12611
|
if (!skipModel) {
|
|
12596
12612
|
const freeGB = getAvailableMemoryGB();
|
|
12597
|
-
const totalGB = getTotalMemoryGB();
|
|
12598
12613
|
if (freeGB < 2) {
|
|
12599
12614
|
log(`\u26A0 Low memory detected: ${freeGB.toFixed(1)}GB free of ${totalGB.toFixed(0)}GB total`);
|
|
12600
12615
|
log(" Close other applications (browser, Slack, etc.) before continuing.");
|
|
@@ -12953,6 +12968,9 @@ async function runSetupWizard(opts = {}) {
|
|
|
12953
12968
|
log("Encryption: SQLCipher (local) + AES-256-GCM (sync)");
|
|
12954
12969
|
if (!skipModel) {
|
|
12955
12970
|
log("Model: " + LOCAL_FILENAME);
|
|
12971
|
+
log("Search: hybrid (vector + keyword)");
|
|
12972
|
+
} else if (getTotalMemoryGB() <= 8) {
|
|
12973
|
+
log("Search: keyword only (8GB RAM \u2014 vector search requires 16GB+)");
|
|
12956
12974
|
}
|
|
12957
12975
|
if (createdEmployees.length > 0) {
|
|
12958
12976
|
log("Team: " + createdEmployees.map((e) => `${e.name} (${e.role})`).join(", "));
|
package/dist/bin/exe-assign.js
CHANGED
|
@@ -311,9 +311,16 @@ function findPackageRoot() {
|
|
|
311
311
|
function spawnDaemon() {
|
|
312
312
|
const freeGB = os3.freemem() / (1024 * 1024 * 1024);
|
|
313
313
|
const totalGB = os3.totalmem() / (1024 * 1024 * 1024);
|
|
314
|
-
if (
|
|
314
|
+
if (totalGB <= 8) {
|
|
315
315
|
process.stderr.write(
|
|
316
|
-
`[exed-client] SKIP:
|
|
316
|
+
`[exed-client] SKIP: ${totalGB.toFixed(0)}GB system \u2014 embedding daemon disabled. Using keyword search only. Minimum 16GB recommended for vector search.
|
|
317
|
+
`
|
|
318
|
+
);
|
|
319
|
+
return;
|
|
320
|
+
}
|
|
321
|
+
if (totalGB <= 16 && freeGB < 4) {
|
|
322
|
+
process.stderr.write(
|
|
323
|
+
`[exed-client] SKIP: low memory (${freeGB.toFixed(1)}GB free / ${totalGB.toFixed(0)}GB total). Embedding daemon not started \u2014 using keyword search only.
|
|
317
324
|
`
|
|
318
325
|
);
|
|
319
326
|
return;
|
package/dist/bin/exe-boot.js
CHANGED
|
@@ -495,9 +495,16 @@ function findPackageRoot() {
|
|
|
495
495
|
function spawnDaemon() {
|
|
496
496
|
const freeGB = os3.freemem() / (1024 * 1024 * 1024);
|
|
497
497
|
const totalGB = os3.totalmem() / (1024 * 1024 * 1024);
|
|
498
|
-
if (
|
|
498
|
+
if (totalGB <= 8) {
|
|
499
499
|
process.stderr.write(
|
|
500
|
-
`[exed-client] SKIP:
|
|
500
|
+
`[exed-client] SKIP: ${totalGB.toFixed(0)}GB system \u2014 embedding daemon disabled. Using keyword search only. Minimum 16GB recommended for vector search.
|
|
501
|
+
`
|
|
502
|
+
);
|
|
503
|
+
return;
|
|
504
|
+
}
|
|
505
|
+
if (totalGB <= 16 && freeGB < 4) {
|
|
506
|
+
process.stderr.write(
|
|
507
|
+
`[exed-client] SKIP: low memory (${freeGB.toFixed(1)}GB free / ${totalGB.toFixed(0)}GB total). Embedding daemon not started \u2014 using keyword search only.
|
|
501
508
|
`
|
|
502
509
|
);
|
|
503
510
|
return;
|
package/dist/bin/exe-gateway.js
CHANGED
|
@@ -1901,9 +1901,16 @@ function findPackageRoot() {
|
|
|
1901
1901
|
function spawnDaemon() {
|
|
1902
1902
|
const freeGB = os3.freemem() / (1024 * 1024 * 1024);
|
|
1903
1903
|
const totalGB = os3.totalmem() / (1024 * 1024 * 1024);
|
|
1904
|
-
if (
|
|
1904
|
+
if (totalGB <= 8) {
|
|
1905
1905
|
process.stderr.write(
|
|
1906
|
-
`[exed-client] SKIP:
|
|
1906
|
+
`[exed-client] SKIP: ${totalGB.toFixed(0)}GB system \u2014 embedding daemon disabled. Using keyword search only. Minimum 16GB recommended for vector search.
|
|
1907
|
+
`
|
|
1908
|
+
);
|
|
1909
|
+
return;
|
|
1910
|
+
}
|
|
1911
|
+
if (totalGB <= 16 && freeGB < 4) {
|
|
1912
|
+
process.stderr.write(
|
|
1913
|
+
`[exed-client] SKIP: low memory (${freeGB.toFixed(1)}GB free / ${totalGB.toFixed(0)}GB total). Embedding daemon not started \u2014 using keyword search only.
|
|
1907
1914
|
`
|
|
1908
1915
|
);
|
|
1909
1916
|
return;
|
package/dist/bin/exe-link.js
CHANGED
|
@@ -646,9 +646,16 @@ function findPackageRoot() {
|
|
|
646
646
|
function spawnDaemon() {
|
|
647
647
|
const freeGB = os4.freemem() / (1024 * 1024 * 1024);
|
|
648
648
|
const totalGB = os4.totalmem() / (1024 * 1024 * 1024);
|
|
649
|
-
if (
|
|
649
|
+
if (totalGB <= 8) {
|
|
650
650
|
process.stderr.write(
|
|
651
|
-
`[exed-client] SKIP:
|
|
651
|
+
`[exed-client] SKIP: ${totalGB.toFixed(0)}GB system \u2014 embedding daemon disabled. Using keyword search only. Minimum 16GB recommended for vector search.
|
|
652
|
+
`
|
|
653
|
+
);
|
|
654
|
+
return;
|
|
655
|
+
}
|
|
656
|
+
if (totalGB <= 16 && freeGB < 4) {
|
|
657
|
+
process.stderr.write(
|
|
658
|
+
`[exed-client] SKIP: low memory (${freeGB.toFixed(1)}GB free / ${totalGB.toFixed(0)}GB total). Embedding daemon not started \u2014 using keyword search only.
|
|
652
659
|
`
|
|
653
660
|
);
|
|
654
661
|
return;
|
package/dist/bin/exe-rename.js
CHANGED
|
@@ -330,9 +330,16 @@ function findPackageRoot() {
|
|
|
330
330
|
function spawnDaemon() {
|
|
331
331
|
const freeGB = os3.freemem() / (1024 * 1024 * 1024);
|
|
332
332
|
const totalGB = os3.totalmem() / (1024 * 1024 * 1024);
|
|
333
|
-
if (
|
|
333
|
+
if (totalGB <= 8) {
|
|
334
334
|
process.stderr.write(
|
|
335
|
-
`[exed-client] SKIP:
|
|
335
|
+
`[exed-client] SKIP: ${totalGB.toFixed(0)}GB system \u2014 embedding daemon disabled. Using keyword search only. Minimum 16GB recommended for vector search.
|
|
336
|
+
`
|
|
337
|
+
);
|
|
338
|
+
return;
|
|
339
|
+
}
|
|
340
|
+
if (totalGB <= 16 && freeGB < 4) {
|
|
341
|
+
process.stderr.write(
|
|
342
|
+
`[exed-client] SKIP: low memory (${freeGB.toFixed(1)}GB free / ${totalGB.toFixed(0)}GB total). Embedding daemon not started \u2014 using keyword search only.
|
|
336
343
|
`
|
|
337
344
|
);
|
|
338
345
|
return;
|
package/dist/bin/exe-search.js
CHANGED
|
@@ -2727,9 +2727,16 @@ function findPackageRoot() {
|
|
|
2727
2727
|
function spawnDaemon() {
|
|
2728
2728
|
const freeGB = os4.freemem() / (1024 * 1024 * 1024);
|
|
2729
2729
|
const totalGB = os4.totalmem() / (1024 * 1024 * 1024);
|
|
2730
|
-
if (
|
|
2730
|
+
if (totalGB <= 8) {
|
|
2731
2731
|
process.stderr.write(
|
|
2732
|
-
`[exed-client] SKIP:
|
|
2732
|
+
`[exed-client] SKIP: ${totalGB.toFixed(0)}GB system \u2014 embedding daemon disabled. Using keyword search only. Minimum 16GB recommended for vector search.
|
|
2733
|
+
`
|
|
2734
|
+
);
|
|
2735
|
+
return;
|
|
2736
|
+
}
|
|
2737
|
+
if (totalGB <= 16 && freeGB < 4) {
|
|
2738
|
+
process.stderr.write(
|
|
2739
|
+
`[exed-client] SKIP: low memory (${freeGB.toFixed(1)}GB free / ${totalGB.toFixed(0)}GB total). Embedding daemon not started \u2014 using keyword search only.
|
|
2733
2740
|
`
|
|
2734
2741
|
);
|
|
2735
2742
|
return;
|
|
@@ -454,9 +454,16 @@ function findPackageRoot() {
|
|
|
454
454
|
function spawnDaemon() {
|
|
455
455
|
const freeGB = os3.freemem() / (1024 * 1024 * 1024);
|
|
456
456
|
const totalGB = os3.totalmem() / (1024 * 1024 * 1024);
|
|
457
|
-
if (
|
|
457
|
+
if (totalGB <= 8) {
|
|
458
458
|
process.stderr.write(
|
|
459
|
-
`[exed-client] SKIP:
|
|
459
|
+
`[exed-client] SKIP: ${totalGB.toFixed(0)}GB system \u2014 embedding daemon disabled. Using keyword search only. Minimum 16GB recommended for vector search.
|
|
460
|
+
`
|
|
461
|
+
);
|
|
462
|
+
return;
|
|
463
|
+
}
|
|
464
|
+
if (totalGB <= 16 && freeGB < 4) {
|
|
465
|
+
process.stderr.write(
|
|
466
|
+
`[exed-client] SKIP: low memory (${freeGB.toFixed(1)}GB free / ${totalGB.toFixed(0)}GB total). Embedding daemon not started \u2014 using keyword search only.
|
|
460
467
|
`
|
|
461
468
|
);
|
|
462
469
|
return;
|
package/dist/bin/git-sweep.js
CHANGED
|
@@ -726,9 +726,16 @@ function findPackageRoot() {
|
|
|
726
726
|
function spawnDaemon() {
|
|
727
727
|
const freeGB = os5.freemem() / (1024 * 1024 * 1024);
|
|
728
728
|
const totalGB = os5.totalmem() / (1024 * 1024 * 1024);
|
|
729
|
-
if (
|
|
729
|
+
if (totalGB <= 8) {
|
|
730
730
|
process.stderr.write(
|
|
731
|
-
`[exed-client] SKIP:
|
|
731
|
+
`[exed-client] SKIP: ${totalGB.toFixed(0)}GB system \u2014 embedding daemon disabled. Using keyword search only. Minimum 16GB recommended for vector search.
|
|
732
|
+
`
|
|
733
|
+
);
|
|
734
|
+
return;
|
|
735
|
+
}
|
|
736
|
+
if (totalGB <= 16 && freeGB < 4) {
|
|
737
|
+
process.stderr.write(
|
|
738
|
+
`[exed-client] SKIP: low memory (${freeGB.toFixed(1)}GB free / ${totalGB.toFixed(0)}GB total). Embedding daemon not started \u2014 using keyword search only.
|
|
732
739
|
`
|
|
733
740
|
);
|
|
734
741
|
return;
|
package/dist/bin/scan-tasks.js
CHANGED
|
@@ -726,9 +726,16 @@ function findPackageRoot() {
|
|
|
726
726
|
function spawnDaemon() {
|
|
727
727
|
const freeGB = os5.freemem() / (1024 * 1024 * 1024);
|
|
728
728
|
const totalGB = os5.totalmem() / (1024 * 1024 * 1024);
|
|
729
|
-
if (
|
|
729
|
+
if (totalGB <= 8) {
|
|
730
730
|
process.stderr.write(
|
|
731
|
-
`[exed-client] SKIP:
|
|
731
|
+
`[exed-client] SKIP: ${totalGB.toFixed(0)}GB system \u2014 embedding daemon disabled. Using keyword search only. Minimum 16GB recommended for vector search.
|
|
732
|
+
`
|
|
733
|
+
);
|
|
734
|
+
return;
|
|
735
|
+
}
|
|
736
|
+
if (totalGB <= 16 && freeGB < 4) {
|
|
737
|
+
process.stderr.write(
|
|
738
|
+
`[exed-client] SKIP: low memory (${freeGB.toFixed(1)}GB free / ${totalGB.toFixed(0)}GB total). Embedding daemon not started \u2014 using keyword search only.
|
|
732
739
|
`
|
|
733
740
|
);
|
|
734
741
|
return;
|
package/dist/bin/setup.js
CHANGED
|
@@ -455,9 +455,16 @@ function findPackageRoot() {
|
|
|
455
455
|
function spawnDaemon() {
|
|
456
456
|
const freeGB = os3.freemem() / (1024 * 1024 * 1024);
|
|
457
457
|
const totalGB = os3.totalmem() / (1024 * 1024 * 1024);
|
|
458
|
-
if (
|
|
458
|
+
if (totalGB <= 8) {
|
|
459
459
|
process.stderr.write(
|
|
460
|
-
`[exed-client] SKIP:
|
|
460
|
+
`[exed-client] SKIP: ${totalGB.toFixed(0)}GB system \u2014 embedding daemon disabled. Using keyword search only. Minimum 16GB recommended for vector search.
|
|
461
|
+
`
|
|
462
|
+
);
|
|
463
|
+
return;
|
|
464
|
+
}
|
|
465
|
+
if (totalGB <= 16 && freeGB < 4) {
|
|
466
|
+
process.stderr.write(
|
|
467
|
+
`[exed-client] SKIP: low memory (${freeGB.toFixed(1)}GB free / ${totalGB.toFixed(0)}GB total). Embedding daemon not started \u2014 using keyword search only.
|
|
461
468
|
`
|
|
462
469
|
);
|
|
463
470
|
return;
|
|
@@ -5802,10 +5809,11 @@ async function validateModel(log) {
|
|
|
5802
5809
|
}
|
|
5803
5810
|
async function runSetupWizard(opts = {}) {
|
|
5804
5811
|
const {
|
|
5805
|
-
skipModel:
|
|
5812
|
+
skipModel: skipModelOpt = false,
|
|
5806
5813
|
skipModelValidation = false,
|
|
5807
5814
|
log = (msg) => process.stderr.write(msg + "\n")
|
|
5808
5815
|
} = opts;
|
|
5816
|
+
let skipModel2 = skipModelOpt;
|
|
5809
5817
|
const rl = opts.createReadline ? opts.createReadline() : createInterface({ input: process.stdin, output: process.stderr });
|
|
5810
5818
|
try {
|
|
5811
5819
|
log("");
|
|
@@ -5982,9 +5990,16 @@ async function runSetupWizard(opts = {}) {
|
|
|
5982
5990
|
}
|
|
5983
5991
|
log("");
|
|
5984
5992
|
if (!state.completedSteps.includes(3)) {
|
|
5993
|
+
const totalGB = getTotalMemoryGB();
|
|
5994
|
+
if (totalGB <= 8) {
|
|
5995
|
+
log(`System: ${totalGB.toFixed(0)}GB RAM detected`);
|
|
5996
|
+
log("Skipping embedding model download (keyword search mode).");
|
|
5997
|
+
log("Vector search requires 16GB+ RAM. Your search uses keyword matching,");
|
|
5998
|
+
log("which works great for most use cases.");
|
|
5999
|
+
skipModel2 = true;
|
|
6000
|
+
}
|
|
5985
6001
|
if (!skipModel2) {
|
|
5986
6002
|
const freeGB = getAvailableMemoryGB();
|
|
5987
|
-
const totalGB = getTotalMemoryGB();
|
|
5988
6003
|
if (freeGB < 2) {
|
|
5989
6004
|
log(`\u26A0 Low memory detected: ${freeGB.toFixed(1)}GB free of ${totalGB.toFixed(0)}GB total`);
|
|
5990
6005
|
log(" Close other applications (browser, Slack, etc.) before continuing.");
|
|
@@ -6343,6 +6358,9 @@ async function runSetupWizard(opts = {}) {
|
|
|
6343
6358
|
log("Encryption: SQLCipher (local) + AES-256-GCM (sync)");
|
|
6344
6359
|
if (!skipModel2) {
|
|
6345
6360
|
log("Model: " + LOCAL_FILENAME);
|
|
6361
|
+
log("Search: hybrid (vector + keyword)");
|
|
6362
|
+
} else if (getTotalMemoryGB() <= 8) {
|
|
6363
|
+
log("Search: keyword only (8GB RAM \u2014 vector search requires 16GB+)");
|
|
6346
6364
|
}
|
|
6347
6365
|
if (createdEmployees.length > 0) {
|
|
6348
6366
|
log("Team: " + createdEmployees.map((e) => `${e.name} (${e.role})`).join(", "));
|
package/dist/gateway/index.js
CHANGED
|
@@ -1894,9 +1894,16 @@ function findPackageRoot() {
|
|
|
1894
1894
|
function spawnDaemon() {
|
|
1895
1895
|
const freeGB = os3.freemem() / (1024 * 1024 * 1024);
|
|
1896
1896
|
const totalGB = os3.totalmem() / (1024 * 1024 * 1024);
|
|
1897
|
-
if (
|
|
1897
|
+
if (totalGB <= 8) {
|
|
1898
1898
|
process.stderr.write(
|
|
1899
|
-
`[exed-client] SKIP:
|
|
1899
|
+
`[exed-client] SKIP: ${totalGB.toFixed(0)}GB system \u2014 embedding daemon disabled. Using keyword search only. Minimum 16GB recommended for vector search.
|
|
1900
|
+
`
|
|
1901
|
+
);
|
|
1902
|
+
return;
|
|
1903
|
+
}
|
|
1904
|
+
if (totalGB <= 16 && freeGB < 4) {
|
|
1905
|
+
process.stderr.write(
|
|
1906
|
+
`[exed-client] SKIP: low memory (${freeGB.toFixed(1)}GB free / ${totalGB.toFixed(0)}GB total). Embedding daemon not started \u2014 using keyword search only.
|
|
1900
1907
|
`
|
|
1901
1908
|
);
|
|
1902
1909
|
return;
|
|
@@ -725,9 +725,16 @@ function findPackageRoot() {
|
|
|
725
725
|
function spawnDaemon() {
|
|
726
726
|
const freeGB = os5.freemem() / (1024 * 1024 * 1024);
|
|
727
727
|
const totalGB = os5.totalmem() / (1024 * 1024 * 1024);
|
|
728
|
-
if (
|
|
728
|
+
if (totalGB <= 8) {
|
|
729
729
|
process.stderr.write(
|
|
730
|
-
`[exed-client] SKIP:
|
|
730
|
+
`[exed-client] SKIP: ${totalGB.toFixed(0)}GB system \u2014 embedding daemon disabled. Using keyword search only. Minimum 16GB recommended for vector search.
|
|
731
|
+
`
|
|
732
|
+
);
|
|
733
|
+
return;
|
|
734
|
+
}
|
|
735
|
+
if (totalGB <= 16 && freeGB < 4) {
|
|
736
|
+
process.stderr.write(
|
|
737
|
+
`[exed-client] SKIP: low memory (${freeGB.toFixed(1)}GB free / ${totalGB.toFixed(0)}GB total). Embedding daemon not started \u2014 using keyword search only.
|
|
731
738
|
`
|
|
732
739
|
);
|
|
733
740
|
return;
|
|
@@ -2729,9 +2729,16 @@ function findPackageRoot() {
|
|
|
2729
2729
|
function spawnDaemon() {
|
|
2730
2730
|
const freeGB = os4.freemem() / (1024 * 1024 * 1024);
|
|
2731
2731
|
const totalGB = os4.totalmem() / (1024 * 1024 * 1024);
|
|
2732
|
-
if (
|
|
2732
|
+
if (totalGB <= 8) {
|
|
2733
2733
|
process.stderr.write(
|
|
2734
|
-
`[exed-client] SKIP:
|
|
2734
|
+
`[exed-client] SKIP: ${totalGB.toFixed(0)}GB system \u2014 embedding daemon disabled. Using keyword search only. Minimum 16GB recommended for vector search.
|
|
2735
|
+
`
|
|
2736
|
+
);
|
|
2737
|
+
return;
|
|
2738
|
+
}
|
|
2739
|
+
if (totalGB <= 16 && freeGB < 4) {
|
|
2740
|
+
process.stderr.write(
|
|
2741
|
+
`[exed-client] SKIP: low memory (${freeGB.toFixed(1)}GB free / ${totalGB.toFixed(0)}GB total). Embedding daemon not started \u2014 using keyword search only.
|
|
2735
2742
|
`
|
|
2736
2743
|
);
|
|
2737
2744
|
return;
|
|
@@ -526,9 +526,16 @@ function findPackageRoot() {
|
|
|
526
526
|
function spawnDaemon() {
|
|
527
527
|
const freeGB = os3.freemem() / (1024 * 1024 * 1024);
|
|
528
528
|
const totalGB = os3.totalmem() / (1024 * 1024 * 1024);
|
|
529
|
-
if (
|
|
529
|
+
if (totalGB <= 8) {
|
|
530
530
|
process.stderr.write(
|
|
531
|
-
`[exed-client] SKIP:
|
|
531
|
+
`[exed-client] SKIP: ${totalGB.toFixed(0)}GB system \u2014 embedding daemon disabled. Using keyword search only. Minimum 16GB recommended for vector search.
|
|
532
|
+
`
|
|
533
|
+
);
|
|
534
|
+
return;
|
|
535
|
+
}
|
|
536
|
+
if (totalGB <= 16 && freeGB < 4) {
|
|
537
|
+
process.stderr.write(
|
|
538
|
+
`[exed-client] SKIP: low memory (${freeGB.toFixed(1)}GB free / ${totalGB.toFixed(0)}GB total). Embedding daemon not started \u2014 using keyword search only.
|
|
532
539
|
`
|
|
533
540
|
);
|
|
534
541
|
return;
|
|
@@ -354,9 +354,16 @@ function findPackageRoot() {
|
|
|
354
354
|
function spawnDaemon() {
|
|
355
355
|
const freeGB = os3.freemem() / (1024 * 1024 * 1024);
|
|
356
356
|
const totalGB = os3.totalmem() / (1024 * 1024 * 1024);
|
|
357
|
-
if (
|
|
357
|
+
if (totalGB <= 8) {
|
|
358
358
|
process.stderr.write(
|
|
359
|
-
`[exed-client] SKIP:
|
|
359
|
+
`[exed-client] SKIP: ${totalGB.toFixed(0)}GB system \u2014 embedding daemon disabled. Using keyword search only. Minimum 16GB recommended for vector search.
|
|
360
|
+
`
|
|
361
|
+
);
|
|
362
|
+
return;
|
|
363
|
+
}
|
|
364
|
+
if (totalGB <= 16 && freeGB < 4) {
|
|
365
|
+
process.stderr.write(
|
|
366
|
+
`[exed-client] SKIP: low memory (${freeGB.toFixed(1)}GB free / ${totalGB.toFixed(0)}GB total). Embedding daemon not started \u2014 using keyword search only.
|
|
360
367
|
`
|
|
361
368
|
);
|
|
362
369
|
return;
|
|
@@ -363,9 +363,16 @@ function findPackageRoot() {
|
|
|
363
363
|
function spawnDaemon() {
|
|
364
364
|
const freeGB = os3.freemem() / (1024 * 1024 * 1024);
|
|
365
365
|
const totalGB = os3.totalmem() / (1024 * 1024 * 1024);
|
|
366
|
-
if (
|
|
366
|
+
if (totalGB <= 8) {
|
|
367
367
|
process.stderr.write(
|
|
368
|
-
`[exed-client] SKIP:
|
|
368
|
+
`[exed-client] SKIP: ${totalGB.toFixed(0)}GB system \u2014 embedding daemon disabled. Using keyword search only. Minimum 16GB recommended for vector search.
|
|
369
|
+
`
|
|
370
|
+
);
|
|
371
|
+
return;
|
|
372
|
+
}
|
|
373
|
+
if (totalGB <= 16 && freeGB < 4) {
|
|
374
|
+
process.stderr.write(
|
|
375
|
+
`[exed-client] SKIP: low memory (${freeGB.toFixed(1)}GB free / ${totalGB.toFixed(0)}GB total). Embedding daemon not started \u2014 using keyword search only.
|
|
369
376
|
`
|
|
370
377
|
);
|
|
371
378
|
return;
|
|
@@ -597,9 +597,16 @@ function findPackageRoot() {
|
|
|
597
597
|
function spawnDaemon() {
|
|
598
598
|
const freeGB = os5.freemem() / (1024 * 1024 * 1024);
|
|
599
599
|
const totalGB = os5.totalmem() / (1024 * 1024 * 1024);
|
|
600
|
-
if (
|
|
600
|
+
if (totalGB <= 8) {
|
|
601
601
|
process.stderr.write(
|
|
602
|
-
`[exed-client] SKIP:
|
|
602
|
+
`[exed-client] SKIP: ${totalGB.toFixed(0)}GB system \u2014 embedding daemon disabled. Using keyword search only. Minimum 16GB recommended for vector search.
|
|
603
|
+
`
|
|
604
|
+
);
|
|
605
|
+
return;
|
|
606
|
+
}
|
|
607
|
+
if (totalGB <= 16 && freeGB < 4) {
|
|
608
|
+
process.stderr.write(
|
|
609
|
+
`[exed-client] SKIP: low memory (${freeGB.toFixed(1)}GB free / ${totalGB.toFixed(0)}GB total). Embedding daemon not started \u2014 using keyword search only.
|
|
603
610
|
`
|
|
604
611
|
);
|
|
605
612
|
return;
|
|
@@ -725,9 +725,16 @@ function findPackageRoot() {
|
|
|
725
725
|
function spawnDaemon() {
|
|
726
726
|
const freeGB = os5.freemem() / (1024 * 1024 * 1024);
|
|
727
727
|
const totalGB = os5.totalmem() / (1024 * 1024 * 1024);
|
|
728
|
-
if (
|
|
728
|
+
if (totalGB <= 8) {
|
|
729
729
|
process.stderr.write(
|
|
730
|
-
`[exed-client] SKIP:
|
|
730
|
+
`[exed-client] SKIP: ${totalGB.toFixed(0)}GB system \u2014 embedding daemon disabled. Using keyword search only. Minimum 16GB recommended for vector search.
|
|
731
|
+
`
|
|
732
|
+
);
|
|
733
|
+
return;
|
|
734
|
+
}
|
|
735
|
+
if (totalGB <= 16 && freeGB < 4) {
|
|
736
|
+
process.stderr.write(
|
|
737
|
+
`[exed-client] SKIP: low memory (${freeGB.toFixed(1)}GB free / ${totalGB.toFixed(0)}GB total). Embedding daemon not started \u2014 using keyword search only.
|
|
731
738
|
`
|
|
732
739
|
);
|
|
733
740
|
return;
|
|
@@ -764,9 +764,16 @@ function findPackageRoot() {
|
|
|
764
764
|
function spawnDaemon() {
|
|
765
765
|
const freeGB = os5.freemem() / (1024 * 1024 * 1024);
|
|
766
766
|
const totalGB = os5.totalmem() / (1024 * 1024 * 1024);
|
|
767
|
-
if (
|
|
767
|
+
if (totalGB <= 8) {
|
|
768
768
|
process.stderr.write(
|
|
769
|
-
`[exed-client] SKIP:
|
|
769
|
+
`[exed-client] SKIP: ${totalGB.toFixed(0)}GB system \u2014 embedding daemon disabled. Using keyword search only. Minimum 16GB recommended for vector search.
|
|
770
|
+
`
|
|
771
|
+
);
|
|
772
|
+
return;
|
|
773
|
+
}
|
|
774
|
+
if (totalGB <= 16 && freeGB < 4) {
|
|
775
|
+
process.stderr.write(
|
|
776
|
+
`[exed-client] SKIP: low memory (${freeGB.toFixed(1)}GB free / ${totalGB.toFixed(0)}GB total). Embedding daemon not started \u2014 using keyword search only.
|
|
770
777
|
`
|
|
771
778
|
);
|
|
772
779
|
return;
|
|
@@ -1825,9 +1825,16 @@ function findPackageRoot() {
|
|
|
1825
1825
|
function spawnDaemon() {
|
|
1826
1826
|
const freeGB = os4.freemem() / (1024 * 1024 * 1024);
|
|
1827
1827
|
const totalGB = os4.totalmem() / (1024 * 1024 * 1024);
|
|
1828
|
-
if (
|
|
1828
|
+
if (totalGB <= 8) {
|
|
1829
1829
|
process.stderr.write(
|
|
1830
|
-
`[exed-client] SKIP:
|
|
1830
|
+
`[exed-client] SKIP: ${totalGB.toFixed(0)}GB system \u2014 embedding daemon disabled. Using keyword search only. Minimum 16GB recommended for vector search.
|
|
1831
|
+
`
|
|
1832
|
+
);
|
|
1833
|
+
return;
|
|
1834
|
+
}
|
|
1835
|
+
if (totalGB <= 16 && freeGB < 4) {
|
|
1836
|
+
process.stderr.write(
|
|
1837
|
+
`[exed-client] SKIP: low memory (${freeGB.toFixed(1)}GB free / ${totalGB.toFixed(0)}GB total). Embedding daemon not started \u2014 using keyword search only.
|
|
1831
1838
|
`
|
|
1832
1839
|
);
|
|
1833
1840
|
return;
|
|
@@ -2764,9 +2764,16 @@ function findPackageRoot() {
|
|
|
2764
2764
|
function spawnDaemon() {
|
|
2765
2765
|
const freeGB = os4.freemem() / (1024 * 1024 * 1024);
|
|
2766
2766
|
const totalGB = os4.totalmem() / (1024 * 1024 * 1024);
|
|
2767
|
-
if (
|
|
2767
|
+
if (totalGB <= 8) {
|
|
2768
2768
|
process.stderr.write(
|
|
2769
|
-
`[exed-client] SKIP:
|
|
2769
|
+
`[exed-client] SKIP: ${totalGB.toFixed(0)}GB system \u2014 embedding daemon disabled. Using keyword search only. Minimum 16GB recommended for vector search.
|
|
2770
|
+
`
|
|
2771
|
+
);
|
|
2772
|
+
return;
|
|
2773
|
+
}
|
|
2774
|
+
if (totalGB <= 16 && freeGB < 4) {
|
|
2775
|
+
process.stderr.write(
|
|
2776
|
+
`[exed-client] SKIP: low memory (${freeGB.toFixed(1)}GB free / ${totalGB.toFixed(0)}GB total). Embedding daemon not started \u2014 using keyword search only.
|
|
2770
2777
|
`
|
|
2771
2778
|
);
|
|
2772
2779
|
return;
|
|
@@ -1836,9 +1836,16 @@ function findPackageRoot() {
|
|
|
1836
1836
|
function spawnDaemon() {
|
|
1837
1837
|
const freeGB = os4.freemem() / (1024 * 1024 * 1024);
|
|
1838
1838
|
const totalGB = os4.totalmem() / (1024 * 1024 * 1024);
|
|
1839
|
-
if (
|
|
1839
|
+
if (totalGB <= 8) {
|
|
1840
1840
|
process.stderr.write(
|
|
1841
|
-
`[exed-client] SKIP:
|
|
1841
|
+
`[exed-client] SKIP: ${totalGB.toFixed(0)}GB system \u2014 embedding daemon disabled. Using keyword search only. Minimum 16GB recommended for vector search.
|
|
1842
|
+
`
|
|
1843
|
+
);
|
|
1844
|
+
return;
|
|
1845
|
+
}
|
|
1846
|
+
if (totalGB <= 16 && freeGB < 4) {
|
|
1847
|
+
process.stderr.write(
|
|
1848
|
+
`[exed-client] SKIP: low memory (${freeGB.toFixed(1)}GB free / ${totalGB.toFixed(0)}GB total). Embedding daemon not started \u2014 using keyword search only.
|
|
1842
1849
|
`
|
|
1843
1850
|
);
|
|
1844
1851
|
return;
|
|
@@ -728,9 +728,16 @@ function findPackageRoot() {
|
|
|
728
728
|
function spawnDaemon() {
|
|
729
729
|
const freeGB = os5.freemem() / (1024 * 1024 * 1024);
|
|
730
730
|
const totalGB = os5.totalmem() / (1024 * 1024 * 1024);
|
|
731
|
-
if (
|
|
731
|
+
if (totalGB <= 8) {
|
|
732
732
|
process.stderr.write(
|
|
733
|
-
`[exed-client] SKIP:
|
|
733
|
+
`[exed-client] SKIP: ${totalGB.toFixed(0)}GB system \u2014 embedding daemon disabled. Using keyword search only. Minimum 16GB recommended for vector search.
|
|
734
|
+
`
|
|
735
|
+
);
|
|
736
|
+
return;
|
|
737
|
+
}
|
|
738
|
+
if (totalGB <= 16 && freeGB < 4) {
|
|
739
|
+
process.stderr.write(
|
|
740
|
+
`[exed-client] SKIP: low memory (${freeGB.toFixed(1)}GB free / ${totalGB.toFixed(0)}GB total). Embedding daemon not started \u2014 using keyword search only.
|
|
734
741
|
`
|
|
735
742
|
);
|
|
736
743
|
return;
|
|
@@ -2747,9 +2747,16 @@ function findPackageRoot() {
|
|
|
2747
2747
|
function spawnDaemon() {
|
|
2748
2748
|
const freeGB = os4.freemem() / (1024 * 1024 * 1024);
|
|
2749
2749
|
const totalGB = os4.totalmem() / (1024 * 1024 * 1024);
|
|
2750
|
-
if (
|
|
2750
|
+
if (totalGB <= 8) {
|
|
2751
2751
|
process.stderr.write(
|
|
2752
|
-
`[exed-client] SKIP:
|
|
2752
|
+
`[exed-client] SKIP: ${totalGB.toFixed(0)}GB system \u2014 embedding daemon disabled. Using keyword search only. Minimum 16GB recommended for vector search.
|
|
2753
|
+
`
|
|
2754
|
+
);
|
|
2755
|
+
return;
|
|
2756
|
+
}
|
|
2757
|
+
if (totalGB <= 16 && freeGB < 4) {
|
|
2758
|
+
process.stderr.write(
|
|
2759
|
+
`[exed-client] SKIP: low memory (${freeGB.toFixed(1)}GB free / ${totalGB.toFixed(0)}GB total). Embedding daemon not started \u2014 using keyword search only.
|
|
2753
2760
|
`
|
|
2754
2761
|
);
|
|
2755
2762
|
return;
|
package/dist/hooks/stop.js
CHANGED
|
@@ -623,9 +623,16 @@ function findPackageRoot() {
|
|
|
623
623
|
function spawnDaemon() {
|
|
624
624
|
const freeGB = os5.freemem() / (1024 * 1024 * 1024);
|
|
625
625
|
const totalGB = os5.totalmem() / (1024 * 1024 * 1024);
|
|
626
|
-
if (
|
|
626
|
+
if (totalGB <= 8) {
|
|
627
627
|
process.stderr.write(
|
|
628
|
-
`[exed-client] SKIP:
|
|
628
|
+
`[exed-client] SKIP: ${totalGB.toFixed(0)}GB system \u2014 embedding daemon disabled. Using keyword search only. Minimum 16GB recommended for vector search.
|
|
629
|
+
`
|
|
630
|
+
);
|
|
631
|
+
return;
|
|
632
|
+
}
|
|
633
|
+
if (totalGB <= 16 && freeGB < 4) {
|
|
634
|
+
process.stderr.write(
|
|
635
|
+
`[exed-client] SKIP: low memory (${freeGB.toFixed(1)}GB free / ${totalGB.toFixed(0)}GB total). Embedding daemon not started \u2014 using keyword search only.
|
|
629
636
|
`
|
|
630
637
|
);
|
|
631
638
|
return;
|
|
@@ -604,9 +604,16 @@ function findPackageRoot() {
|
|
|
604
604
|
function spawnDaemon() {
|
|
605
605
|
const freeGB = os5.freemem() / (1024 * 1024 * 1024);
|
|
606
606
|
const totalGB = os5.totalmem() / (1024 * 1024 * 1024);
|
|
607
|
-
if (
|
|
607
|
+
if (totalGB <= 8) {
|
|
608
608
|
process.stderr.write(
|
|
609
|
-
`[exed-client] SKIP:
|
|
609
|
+
`[exed-client] SKIP: ${totalGB.toFixed(0)}GB system \u2014 embedding daemon disabled. Using keyword search only. Minimum 16GB recommended for vector search.
|
|
610
|
+
`
|
|
611
|
+
);
|
|
612
|
+
return;
|
|
613
|
+
}
|
|
614
|
+
if (totalGB <= 16 && freeGB < 4) {
|
|
615
|
+
process.stderr.write(
|
|
616
|
+
`[exed-client] SKIP: low memory (${freeGB.toFixed(1)}GB free / ${totalGB.toFixed(0)}GB total). Embedding daemon not started \u2014 using keyword search only.
|
|
610
617
|
`
|
|
611
618
|
);
|
|
612
619
|
return;
|
|
@@ -496,9 +496,16 @@ function findPackageRoot() {
|
|
|
496
496
|
function spawnDaemon() {
|
|
497
497
|
const freeGB = os3.freemem() / (1024 * 1024 * 1024);
|
|
498
498
|
const totalGB = os3.totalmem() / (1024 * 1024 * 1024);
|
|
499
|
-
if (
|
|
499
|
+
if (totalGB <= 8) {
|
|
500
500
|
process.stderr.write(
|
|
501
|
-
`[exed-client] SKIP:
|
|
501
|
+
`[exed-client] SKIP: ${totalGB.toFixed(0)}GB system \u2014 embedding daemon disabled. Using keyword search only. Minimum 16GB recommended for vector search.
|
|
502
|
+
`
|
|
503
|
+
);
|
|
504
|
+
return;
|
|
505
|
+
}
|
|
506
|
+
if (totalGB <= 16 && freeGB < 4) {
|
|
507
|
+
process.stderr.write(
|
|
508
|
+
`[exed-client] SKIP: low memory (${freeGB.toFixed(1)}GB free / ${totalGB.toFixed(0)}GB total). Embedding daemon not started \u2014 using keyword search only.
|
|
502
509
|
`
|
|
503
510
|
);
|
|
504
511
|
return;
|
package/dist/index.js
CHANGED
|
@@ -980,9 +980,16 @@ function findPackageRoot() {
|
|
|
980
980
|
function spawnDaemon() {
|
|
981
981
|
const freeGB = os6.freemem() / (1024 * 1024 * 1024);
|
|
982
982
|
const totalGB = os6.totalmem() / (1024 * 1024 * 1024);
|
|
983
|
-
if (
|
|
983
|
+
if (totalGB <= 8) {
|
|
984
984
|
process.stderr.write(
|
|
985
|
-
`[exed-client] SKIP:
|
|
985
|
+
`[exed-client] SKIP: ${totalGB.toFixed(0)}GB system \u2014 embedding daemon disabled. Using keyword search only. Minimum 16GB recommended for vector search.
|
|
986
|
+
`
|
|
987
|
+
);
|
|
988
|
+
return;
|
|
989
|
+
}
|
|
990
|
+
if (totalGB <= 16 && freeGB < 4) {
|
|
991
|
+
process.stderr.write(
|
|
992
|
+
`[exed-client] SKIP: low memory (${freeGB.toFixed(1)}GB free / ${totalGB.toFixed(0)}GB total). Embedding daemon not started \u2014 using keyword search only.
|
|
986
993
|
`
|
|
987
994
|
);
|
|
988
995
|
return;
|
package/dist/lib/cloud-sync.js
CHANGED
|
@@ -314,9 +314,16 @@ function findPackageRoot() {
|
|
|
314
314
|
function spawnDaemon() {
|
|
315
315
|
const freeGB = os3.freemem() / (1024 * 1024 * 1024);
|
|
316
316
|
const totalGB = os3.totalmem() / (1024 * 1024 * 1024);
|
|
317
|
-
if (
|
|
317
|
+
if (totalGB <= 8) {
|
|
318
318
|
process.stderr.write(
|
|
319
|
-
`[exed-client] SKIP:
|
|
319
|
+
`[exed-client] SKIP: ${totalGB.toFixed(0)}GB system \u2014 embedding daemon disabled. Using keyword search only. Minimum 16GB recommended for vector search.
|
|
320
|
+
`
|
|
321
|
+
);
|
|
322
|
+
return;
|
|
323
|
+
}
|
|
324
|
+
if (totalGB <= 16 && freeGB < 4) {
|
|
325
|
+
process.stderr.write(
|
|
326
|
+
`[exed-client] SKIP: low memory (${freeGB.toFixed(1)}GB free / ${totalGB.toFixed(0)}GB total). Embedding daemon not started \u2014 using keyword search only.
|
|
320
327
|
`
|
|
321
328
|
);
|
|
322
329
|
return;
|
package/dist/lib/database.js
CHANGED
|
@@ -167,9 +167,16 @@ function findPackageRoot() {
|
|
|
167
167
|
function spawnDaemon() {
|
|
168
168
|
const freeGB = os3.freemem() / (1024 * 1024 * 1024);
|
|
169
169
|
const totalGB = os3.totalmem() / (1024 * 1024 * 1024);
|
|
170
|
-
if (
|
|
170
|
+
if (totalGB <= 8) {
|
|
171
171
|
process.stderr.write(
|
|
172
|
-
`[exed-client] SKIP:
|
|
172
|
+
`[exed-client] SKIP: ${totalGB.toFixed(0)}GB system \u2014 embedding daemon disabled. Using keyword search only. Minimum 16GB recommended for vector search.
|
|
173
|
+
`
|
|
174
|
+
);
|
|
175
|
+
return;
|
|
176
|
+
}
|
|
177
|
+
if (totalGB <= 16 && freeGB < 4) {
|
|
178
|
+
process.stderr.write(
|
|
179
|
+
`[exed-client] SKIP: low memory (${freeGB.toFixed(1)}GB free / ${totalGB.toFixed(0)}GB total). Embedding daemon not started \u2014 using keyword search only.
|
|
173
180
|
`
|
|
174
181
|
);
|
|
175
182
|
return;
|
|
@@ -164,9 +164,16 @@ function findPackageRoot() {
|
|
|
164
164
|
function spawnDaemon() {
|
|
165
165
|
const freeGB = os2.freemem() / (1024 * 1024 * 1024);
|
|
166
166
|
const totalGB = os2.totalmem() / (1024 * 1024 * 1024);
|
|
167
|
-
if (
|
|
167
|
+
if (totalGB <= 8) {
|
|
168
168
|
process.stderr.write(
|
|
169
|
-
`[exed-client] SKIP:
|
|
169
|
+
`[exed-client] SKIP: ${totalGB.toFixed(0)}GB system \u2014 embedding daemon disabled. Using keyword search only. Minimum 16GB recommended for vector search.
|
|
170
|
+
`
|
|
171
|
+
);
|
|
172
|
+
return;
|
|
173
|
+
}
|
|
174
|
+
if (totalGB <= 16 && freeGB < 4) {
|
|
175
|
+
process.stderr.write(
|
|
176
|
+
`[exed-client] SKIP: low memory (${freeGB.toFixed(1)}GB free / ${totalGB.toFixed(0)}GB total). Embedding daemon not started \u2014 using keyword search only.
|
|
170
177
|
`
|
|
171
178
|
);
|
|
172
179
|
return;
|
|
@@ -259,9 +259,16 @@ function findPackageRoot() {
|
|
|
259
259
|
function spawnDaemon() {
|
|
260
260
|
const freeGB = os3.freemem() / (1024 * 1024 * 1024);
|
|
261
261
|
const totalGB = os3.totalmem() / (1024 * 1024 * 1024);
|
|
262
|
-
if (
|
|
262
|
+
if (totalGB <= 8) {
|
|
263
263
|
process.stderr.write(
|
|
264
|
-
`[exed-client] SKIP:
|
|
264
|
+
`[exed-client] SKIP: ${totalGB.toFixed(0)}GB system \u2014 embedding daemon disabled. Using keyword search only. Minimum 16GB recommended for vector search.
|
|
265
|
+
`
|
|
266
|
+
);
|
|
267
|
+
return;
|
|
268
|
+
}
|
|
269
|
+
if (totalGB <= 16 && freeGB < 4) {
|
|
270
|
+
process.stderr.write(
|
|
271
|
+
`[exed-client] SKIP: low memory (${freeGB.toFixed(1)}GB free / ${totalGB.toFixed(0)}GB total). Embedding daemon not started \u2014 using keyword search only.
|
|
265
272
|
`
|
|
266
273
|
);
|
|
267
274
|
return;
|
package/dist/lib/embedder.js
CHANGED
|
@@ -333,9 +333,16 @@ function findPackageRoot() {
|
|
|
333
333
|
function spawnDaemon() {
|
|
334
334
|
const freeGB = os2.freemem() / (1024 * 1024 * 1024);
|
|
335
335
|
const totalGB = os2.totalmem() / (1024 * 1024 * 1024);
|
|
336
|
-
if (
|
|
336
|
+
if (totalGB <= 8) {
|
|
337
337
|
process.stderr.write(
|
|
338
|
-
`[exed-client] SKIP:
|
|
338
|
+
`[exed-client] SKIP: ${totalGB.toFixed(0)}GB system \u2014 embedding daemon disabled. Using keyword search only. Minimum 16GB recommended for vector search.
|
|
339
|
+
`
|
|
340
|
+
);
|
|
341
|
+
return;
|
|
342
|
+
}
|
|
343
|
+
if (totalGB <= 16 && freeGB < 4) {
|
|
344
|
+
process.stderr.write(
|
|
345
|
+
`[exed-client] SKIP: low memory (${freeGB.toFixed(1)}GB free / ${totalGB.toFixed(0)}GB total). Embedding daemon not started \u2014 using keyword search only.
|
|
339
346
|
`
|
|
340
347
|
);
|
|
341
348
|
return;
|
|
@@ -166,9 +166,16 @@ function findPackageRoot() {
|
|
|
166
166
|
function spawnDaemon() {
|
|
167
167
|
const freeGB = os2.freemem() / (1024 * 1024 * 1024);
|
|
168
168
|
const totalGB = os2.totalmem() / (1024 * 1024 * 1024);
|
|
169
|
-
if (
|
|
169
|
+
if (totalGB <= 8) {
|
|
170
170
|
process.stderr.write(
|
|
171
|
-
`[exed-client] SKIP:
|
|
171
|
+
`[exed-client] SKIP: ${totalGB.toFixed(0)}GB system \u2014 embedding daemon disabled. Using keyword search only. Minimum 16GB recommended for vector search.
|
|
172
|
+
`
|
|
173
|
+
);
|
|
174
|
+
return;
|
|
175
|
+
}
|
|
176
|
+
if (totalGB <= 16 && freeGB < 4) {
|
|
177
|
+
process.stderr.write(
|
|
178
|
+
`[exed-client] SKIP: low memory (${freeGB.toFixed(1)}GB free / ${totalGB.toFixed(0)}GB total). Embedding daemon not started \u2014 using keyword search only.
|
|
172
179
|
`
|
|
173
180
|
);
|
|
174
181
|
return;
|
package/dist/lib/exe-daemon.js
CHANGED
|
@@ -1141,9 +1141,16 @@ function findPackageRoot() {
|
|
|
1141
1141
|
function spawnDaemon() {
|
|
1142
1142
|
const freeGB = os5.freemem() / (1024 * 1024 * 1024);
|
|
1143
1143
|
const totalGB = os5.totalmem() / (1024 * 1024 * 1024);
|
|
1144
|
-
if (
|
|
1144
|
+
if (totalGB <= 8) {
|
|
1145
1145
|
process.stderr.write(
|
|
1146
|
-
`[exed-client] SKIP:
|
|
1146
|
+
`[exed-client] SKIP: ${totalGB.toFixed(0)}GB system \u2014 embedding daemon disabled. Using keyword search only. Minimum 16GB recommended for vector search.
|
|
1147
|
+
`
|
|
1148
|
+
);
|
|
1149
|
+
return;
|
|
1150
|
+
}
|
|
1151
|
+
if (totalGB <= 16 && freeGB < 4) {
|
|
1152
|
+
process.stderr.write(
|
|
1153
|
+
`[exed-client] SKIP: low memory (${freeGB.toFixed(1)}GB free / ${totalGB.toFixed(0)}GB total). Embedding daemon not started \u2014 using keyword search only.
|
|
1147
1154
|
`
|
|
1148
1155
|
);
|
|
1149
1156
|
return;
|
|
@@ -2726,9 +2726,16 @@ function findPackageRoot() {
|
|
|
2726
2726
|
function spawnDaemon() {
|
|
2727
2727
|
const freeGB = os4.freemem() / (1024 * 1024 * 1024);
|
|
2728
2728
|
const totalGB = os4.totalmem() / (1024 * 1024 * 1024);
|
|
2729
|
-
if (
|
|
2729
|
+
if (totalGB <= 8) {
|
|
2730
2730
|
process.stderr.write(
|
|
2731
|
-
`[exed-client] SKIP:
|
|
2731
|
+
`[exed-client] SKIP: ${totalGB.toFixed(0)}GB system \u2014 embedding daemon disabled. Using keyword search only. Minimum 16GB recommended for vector search.
|
|
2732
|
+
`
|
|
2733
|
+
);
|
|
2734
|
+
return;
|
|
2735
|
+
}
|
|
2736
|
+
if (totalGB <= 16 && freeGB < 4) {
|
|
2737
|
+
process.stderr.write(
|
|
2738
|
+
`[exed-client] SKIP: low memory (${freeGB.toFixed(1)}GB free / ${totalGB.toFixed(0)}GB total). Embedding daemon not started \u2014 using keyword search only.
|
|
2732
2739
|
`
|
|
2733
2740
|
);
|
|
2734
2741
|
return;
|
package/dist/mcp/server.js
CHANGED
|
@@ -352,9 +352,16 @@ function findPackageRoot() {
|
|
|
352
352
|
function spawnDaemon() {
|
|
353
353
|
const freeGB = os2.freemem() / (1024 * 1024 * 1024);
|
|
354
354
|
const totalGB = os2.totalmem() / (1024 * 1024 * 1024);
|
|
355
|
-
if (
|
|
355
|
+
if (totalGB <= 8) {
|
|
356
356
|
process.stderr.write(
|
|
357
|
-
`[exed-client] SKIP:
|
|
357
|
+
`[exed-client] SKIP: ${totalGB.toFixed(0)}GB system \u2014 embedding daemon disabled. Using keyword search only. Minimum 16GB recommended for vector search.
|
|
358
|
+
`
|
|
359
|
+
);
|
|
360
|
+
return;
|
|
361
|
+
}
|
|
362
|
+
if (totalGB <= 16 && freeGB < 4) {
|
|
363
|
+
process.stderr.write(
|
|
364
|
+
`[exed-client] SKIP: low memory (${freeGB.toFixed(1)}GB free / ${totalGB.toFixed(0)}GB total). Embedding daemon not started \u2014 using keyword search only.
|
|
358
365
|
`
|
|
359
366
|
);
|
|
360
367
|
return;
|
package/dist/runtime/index.js
CHANGED
|
@@ -767,9 +767,16 @@ function findPackageRoot() {
|
|
|
767
767
|
function spawnDaemon() {
|
|
768
768
|
const freeGB = os6.freemem() / (1024 * 1024 * 1024);
|
|
769
769
|
const totalGB = os6.totalmem() / (1024 * 1024 * 1024);
|
|
770
|
-
if (
|
|
770
|
+
if (totalGB <= 8) {
|
|
771
771
|
process.stderr.write(
|
|
772
|
-
`[exed-client] SKIP:
|
|
772
|
+
`[exed-client] SKIP: ${totalGB.toFixed(0)}GB system \u2014 embedding daemon disabled. Using keyword search only. Minimum 16GB recommended for vector search.
|
|
773
|
+
`
|
|
774
|
+
);
|
|
775
|
+
return;
|
|
776
|
+
}
|
|
777
|
+
if (totalGB <= 16 && freeGB < 4) {
|
|
778
|
+
process.stderr.write(
|
|
779
|
+
`[exed-client] SKIP: low memory (${freeGB.toFixed(1)}GB free / ${totalGB.toFixed(0)}GB total). Embedding daemon not started \u2014 using keyword search only.
|
|
773
780
|
`
|
|
774
781
|
);
|
|
775
782
|
return;
|
package/dist/tui/App.js
CHANGED
|
@@ -992,9 +992,16 @@ function findPackageRoot() {
|
|
|
992
992
|
function spawnDaemon() {
|
|
993
993
|
const freeGB = os5.freemem() / (1024 * 1024 * 1024);
|
|
994
994
|
const totalGB = os5.totalmem() / (1024 * 1024 * 1024);
|
|
995
|
-
if (
|
|
995
|
+
if (totalGB <= 8) {
|
|
996
996
|
process.stderr.write(
|
|
997
|
-
`[exed-client] SKIP:
|
|
997
|
+
`[exed-client] SKIP: ${totalGB.toFixed(0)}GB system \u2014 embedding daemon disabled. Using keyword search only. Minimum 16GB recommended for vector search.
|
|
998
|
+
`
|
|
999
|
+
);
|
|
1000
|
+
return;
|
|
1001
|
+
}
|
|
1002
|
+
if (totalGB <= 16 && freeGB < 4) {
|
|
1003
|
+
process.stderr.write(
|
|
1004
|
+
`[exed-client] SKIP: low memory (${freeGB.toFixed(1)}GB free / ${totalGB.toFixed(0)}GB total). Embedding daemon not started \u2014 using keyword search only.
|
|
998
1005
|
`
|
|
999
1006
|
);
|
|
1000
1007
|
return;
|
package/package.json
CHANGED