gnosys 4.4.6 → 5.0.0
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 +12 -7
- package/dist/cli.js +140 -0
- package/dist/cli.js.map +1 -1
- package/dist/index.js +65 -0
- package/dist/index.js.map +1 -1
- package/dist/lib/attachments.d.ts +43 -0
- package/dist/lib/attachments.d.ts.map +1 -0
- package/dist/lib/attachments.js +154 -0
- package/dist/lib/attachments.js.map +1 -0
- package/dist/lib/audioExtract.d.ts +39 -0
- package/dist/lib/audioExtract.d.ts.map +1 -0
- package/dist/lib/audioExtract.js +220 -0
- package/dist/lib/audioExtract.js.map +1 -0
- package/dist/lib/chunkSplitter.d.ts +46 -0
- package/dist/lib/chunkSplitter.d.ts.map +1 -0
- package/dist/lib/chunkSplitter.js +233 -0
- package/dist/lib/chunkSplitter.js.map +1 -0
- package/dist/lib/config.d.ts +70 -1
- package/dist/lib/config.d.ts.map +1 -1
- package/dist/lib/config.js +62 -6
- package/dist/lib/config.js.map +1 -1
- package/dist/lib/db.d.ts +7 -1
- package/dist/lib/db.d.ts.map +1 -1
- package/dist/lib/db.js +31 -4
- package/dist/lib/db.js.map +1 -1
- package/dist/lib/dbWrite.d.ts.map +1 -1
- package/dist/lib/dbWrite.js +11 -0
- package/dist/lib/dbWrite.js.map +1 -1
- package/dist/lib/docxExtract.d.ts +27 -0
- package/dist/lib/docxExtract.d.ts.map +1 -0
- package/dist/lib/docxExtract.js +80 -0
- package/dist/lib/docxExtract.js.map +1 -0
- package/dist/lib/fileDetect.d.ts +20 -0
- package/dist/lib/fileDetect.d.ts.map +1 -0
- package/dist/lib/fileDetect.js +124 -0
- package/dist/lib/fileDetect.js.map +1 -0
- package/dist/lib/imageExtract.d.ts +26 -0
- package/dist/lib/imageExtract.d.ts.map +1 -0
- package/dist/lib/imageExtract.js +113 -0
- package/dist/lib/imageExtract.js.map +1 -0
- package/dist/lib/llm.d.ts +9 -0
- package/dist/lib/llm.d.ts.map +1 -1
- package/dist/lib/llm.js +102 -0
- package/dist/lib/llm.js.map +1 -1
- package/dist/lib/multimodalIngest.d.ts +68 -0
- package/dist/lib/multimodalIngest.d.ts.map +1 -0
- package/dist/lib/multimodalIngest.js +463 -0
- package/dist/lib/multimodalIngest.js.map +1 -0
- package/dist/lib/pdfExtract.d.ts +29 -0
- package/dist/lib/pdfExtract.d.ts.map +1 -0
- package/dist/lib/pdfExtract.js +163 -0
- package/dist/lib/pdfExtract.js.map +1 -0
- package/dist/lib/setup.d.ts +9 -0
- package/dist/lib/setup.d.ts.map +1 -1
- package/dist/lib/setup.js +241 -16
- package/dist/lib/setup.js.map +1 -1
- package/dist/lib/store.d.ts +3 -0
- package/dist/lib/store.d.ts.map +1 -1
- package/dist/lib/store.js.map +1 -1
- package/dist/lib/videoExtract.d.ts +30 -0
- package/dist/lib/videoExtract.d.ts.map +1 -0
- package/dist/lib/videoExtract.js +92 -0
- package/dist/lib/videoExtract.js.map +1 -0
- package/package.json +3 -1
package/dist/lib/store.d.ts
CHANGED
|
@@ -20,6 +20,9 @@ export interface MemoryFrontmatter {
|
|
|
20
20
|
superseded_by?: string | null;
|
|
21
21
|
reinforcement_count?: number;
|
|
22
22
|
last_reinforced?: string | null;
|
|
23
|
+
source_file?: string | null;
|
|
24
|
+
source_page?: string | null;
|
|
25
|
+
source_timerange?: string | null;
|
|
23
26
|
[key: string]: unknown;
|
|
24
27
|
}
|
|
25
28
|
export interface Memory {
|
package/dist/lib/store.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"store.d.ts","sourceRoot":"","sources":["../../src/lib/store.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAQH,MAAM,WAAW,iBAAiB;IAChC,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,GAAG,MAAM,EAAE,CAAC;IAC1C,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,OAAO,GAAG,IAAI,GAAG,UAAU,CAAC;IACpC,SAAS,EAAE,UAAU,GAAG,UAAU,GAAG,UAAU,GAAG,UAAU,CAAC;IAC7D,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,MAAM,EAAE,QAAQ,GAAG,UAAU,GAAG,YAAY,CAAC;IAC7C,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,eAAe,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"store.d.ts","sourceRoot":"","sources":["../../src/lib/store.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAQH,MAAM,WAAW,iBAAiB;IAChC,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,GAAG,MAAM,EAAE,CAAC;IAC1C,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,OAAO,GAAG,IAAI,GAAG,UAAU,CAAC;IACpC,SAAS,EAAE,UAAU,GAAG,UAAU,GAAG,UAAU,GAAG,UAAU,CAAC;IAC7D,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,MAAM,EAAE,QAAQ,GAAG,UAAU,GAAG,YAAY,CAAC;IAC7C,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,eAAe,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAEhC,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,gBAAgB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACjC,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB;AAED,MAAM,WAAW,MAAM;IACrB,WAAW,EAAE,iBAAiB,CAAC;IAC/B,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,MAAM,CAAC;CACtB;AAsBD,qBAAa,WAAW;IACtB,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,UAAU,CAAU;gBAEhB,SAAS,EAAE,MAAM;IAK7B,sEAAsE;IACtE,OAAO,CAAC,iBAAiB;IAQnB,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAkB3B;;OAEG;IACG,cAAc,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;IAkBzC;;OAEG;IACG,UAAU,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IAoB9D;;OAEG;IACG,WAAW,CACf,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,MAAM,EAChB,WAAW,EAAE,iBAAiB,EAC9B,OAAO,EAAE,MAAM,EACf,OAAO,CAAC,EAAE;QAAE,UAAU,CAAC,EAAE,OAAO,CAAA;KAAE,GACjC,OAAO,CAAC,MAAM,CAAC;IAsBlB;;OAEG;IACG,WAAW,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAIjD;;OAEG;IACG,YAAY,CAChB,YAAY,EAAE,MAAM,EACpB,OAAO,EAAE,OAAO,CAAC,iBAAiB,CAAC,EACnC,UAAU,CAAC,EAAE,MAAM,GAClB,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IA4BzB;;OAEG;IACG,aAAa,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;IAaxC;;OAEG;IACG,UAAU,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAenD;;OAEG;IACH,YAAY,IAAI,MAAM;IAItB;;;;OAIG;YACW,UAAU;CAsBzB"}
|
package/dist/lib/store.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"store.js","sourceRoot":"","sources":["../../src/lib/store.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,MAAM,aAAa,CAAC;AAC7B,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,MAAM,MAAM,aAAa,CAAC;AACjC,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAC5B,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;
|
|
1
|
+
{"version":3,"file":"store.js","sourceRoot":"","sources":["../../src/lib/store.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Gnosys Video Extraction — Extract audio from video files and transcribe.
|
|
3
|
+
*
|
|
4
|
+
* Requires ffmpeg to be installed on the system. Extracts audio to a temp WAV
|
|
5
|
+
* file, then delegates to audioExtract.ts for transcription.
|
|
6
|
+
*
|
|
7
|
+
* Part of v5.0 Phase 4: Multimodal Ingestion — Video support.
|
|
8
|
+
*/
|
|
9
|
+
import { type TranscriptSegment, type TranscriptionOptions } from "./audioExtract.js";
|
|
10
|
+
export interface VideoTranscriptResult {
|
|
11
|
+
segments: TranscriptSegment[];
|
|
12
|
+
fullText: string;
|
|
13
|
+
/** Total duration in seconds */
|
|
14
|
+
duration: number;
|
|
15
|
+
language?: string;
|
|
16
|
+
/** Temp audio file path (cleaned up after transcription) */
|
|
17
|
+
audioPath?: string;
|
|
18
|
+
}
|
|
19
|
+
/**
|
|
20
|
+
* Extract audio from a video file and transcribe it.
|
|
21
|
+
*
|
|
22
|
+
* Steps:
|
|
23
|
+
* 1. Check that ffmpeg is installed
|
|
24
|
+
* 2. Extract audio track to a temp WAV file
|
|
25
|
+
* 3. Transcribe the WAV file using audioExtract
|
|
26
|
+
* 4. Clean up the temp file
|
|
27
|
+
* 5. Return the transcript result
|
|
28
|
+
*/
|
|
29
|
+
export declare function transcribeVideo(filePath: string, options?: TranscriptionOptions): Promise<VideoTranscriptResult>;
|
|
30
|
+
//# sourceMappingURL=videoExtract.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"videoExtract.d.ts","sourceRoot":"","sources":["../../src/lib/videoExtract.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAMH,OAAO,EAEL,KAAK,iBAAiB,EAEtB,KAAK,oBAAoB,EAC1B,MAAM,mBAAmB,CAAC;AAI3B,MAAM,WAAW,qBAAqB;IACpC,QAAQ,EAAE,iBAAiB,EAAE,CAAC;IAC9B,QAAQ,EAAE,MAAM,CAAC;IACjB,gCAAgC;IAChC,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,4DAA4D;IAC5D,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AA8CD;;;;;;;;;GASG;AACH,wBAAsB,eAAe,CACnC,QAAQ,EAAE,MAAM,EAChB,OAAO,CAAC,EAAE,oBAAoB,GAC7B,OAAO,CAAC,qBAAqB,CAAC,CA8BhC"}
|
|
@@ -0,0 +1,92 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Gnosys Video Extraction — Extract audio from video files and transcribe.
|
|
3
|
+
*
|
|
4
|
+
* Requires ffmpeg to be installed on the system. Extracts audio to a temp WAV
|
|
5
|
+
* file, then delegates to audioExtract.ts for transcription.
|
|
6
|
+
*
|
|
7
|
+
* Part of v5.0 Phase 4: Multimodal Ingestion — Video support.
|
|
8
|
+
*/
|
|
9
|
+
import * as path from "path";
|
|
10
|
+
import * as os from "os";
|
|
11
|
+
import * as fs from "fs/promises";
|
|
12
|
+
import { execFileSync } from "child_process";
|
|
13
|
+
import { transcribeAudio, } from "./audioExtract.js";
|
|
14
|
+
// ─── Helpers ────────────────────────────────────────────────────────────
|
|
15
|
+
/**
|
|
16
|
+
* Check that ffmpeg is installed and accessible.
|
|
17
|
+
* Throws a clear error message if not found.
|
|
18
|
+
*/
|
|
19
|
+
function checkFfmpeg() {
|
|
20
|
+
try {
|
|
21
|
+
execFileSync("ffmpeg", ["-version"], { stdio: "ignore" });
|
|
22
|
+
}
|
|
23
|
+
catch {
|
|
24
|
+
throw new Error("Video transcription requires ffmpeg to be installed.\n" +
|
|
25
|
+
"Install it with:\n" +
|
|
26
|
+
" macOS: brew install ffmpeg\n" +
|
|
27
|
+
" Ubuntu: sudo apt install ffmpeg\n" +
|
|
28
|
+
" Windows: winget install FFmpeg");
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
/**
|
|
32
|
+
* Extract audio from a video file into a WAV file using ffmpeg.
|
|
33
|
+
*
|
|
34
|
+
* Uses PCM 16-bit, 16kHz mono — the format Whisper expects.
|
|
35
|
+
* Uses execFileSync (not execSync) to avoid shell injection since
|
|
36
|
+
* the file path comes from user input.
|
|
37
|
+
*/
|
|
38
|
+
function extractAudioTrack(videoPath, outputWav) {
|
|
39
|
+
execFileSync("ffmpeg", [
|
|
40
|
+
"-i", videoPath,
|
|
41
|
+
"-vn", // no video
|
|
42
|
+
"-acodec", "pcm_s16le", // PCM 16-bit little-endian
|
|
43
|
+
"-ar", "16000", // 16kHz sample rate
|
|
44
|
+
"-ac", "1", // mono
|
|
45
|
+
"-y", // overwrite output
|
|
46
|
+
outputWav,
|
|
47
|
+
], {
|
|
48
|
+
stdio: "ignore",
|
|
49
|
+
timeout: 300_000, // 5-minute timeout for large files
|
|
50
|
+
});
|
|
51
|
+
}
|
|
52
|
+
// ─── Public API ─────────────────────────────────────────────────────────
|
|
53
|
+
/**
|
|
54
|
+
* Extract audio from a video file and transcribe it.
|
|
55
|
+
*
|
|
56
|
+
* Steps:
|
|
57
|
+
* 1. Check that ffmpeg is installed
|
|
58
|
+
* 2. Extract audio track to a temp WAV file
|
|
59
|
+
* 3. Transcribe the WAV file using audioExtract
|
|
60
|
+
* 4. Clean up the temp file
|
|
61
|
+
* 5. Return the transcript result
|
|
62
|
+
*/
|
|
63
|
+
export async function transcribeVideo(filePath, options) {
|
|
64
|
+
// Step 1: Check for ffmpeg
|
|
65
|
+
checkFfmpeg();
|
|
66
|
+
// Step 2: Create a temp WAV file path
|
|
67
|
+
const tempWav = path.join(os.tmpdir(), `gnosys-audio-${Date.now()}.wav`);
|
|
68
|
+
try {
|
|
69
|
+
// Step 3: Extract audio from video
|
|
70
|
+
extractAudioTrack(filePath, tempWav);
|
|
71
|
+
// Step 4: Transcribe the extracted audio
|
|
72
|
+
const result = await transcribeAudio(tempWav, options);
|
|
73
|
+
// Step 5: Return the result
|
|
74
|
+
return {
|
|
75
|
+
segments: result.segments,
|
|
76
|
+
fullText: result.fullText,
|
|
77
|
+
duration: result.duration,
|
|
78
|
+
language: result.language,
|
|
79
|
+
};
|
|
80
|
+
}
|
|
81
|
+
finally {
|
|
82
|
+
// Step 6: Clean up temp file (always, even if transcription fails)
|
|
83
|
+
try {
|
|
84
|
+
await fs.unlink(tempWav);
|
|
85
|
+
}
|
|
86
|
+
catch {
|
|
87
|
+
// Ignore cleanup errors — the temp file may not exist if
|
|
88
|
+
// ffmpeg failed before creating it
|
|
89
|
+
}
|
|
90
|
+
}
|
|
91
|
+
}
|
|
92
|
+
//# sourceMappingURL=videoExtract.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"videoExtract.js","sourceRoot":"","sources":["../../src/lib/videoExtract.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,IAAI,MAAM,MAAM,CAAC;AAC7B,OAAO,KAAK,EAAE,MAAM,IAAI,CAAC;AACzB,OAAO,KAAK,EAAE,MAAM,aAAa,CAAC;AAClC,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAC7C,OAAO,EACL,eAAe,GAIhB,MAAM,mBAAmB,CAAC;AAc3B,2EAA2E;AAE3E;;;GAGG;AACH,SAAS,WAAW;IAClB,IAAI,CAAC;QACH,YAAY,CAAC,QAAQ,EAAE,CAAC,UAAU,CAAC,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,CAAC;IAC5D,CAAC;IAAC,MAAM,CAAC;QACP,MAAM,IAAI,KAAK,CACb,wDAAwD;YACtD,oBAAoB;YACpB,kCAAkC;YAClC,sCAAsC;YACtC,kCAAkC,CACrC,CAAC;IACJ,CAAC;AACH,CAAC;AAED;;;;;;GAMG;AACH,SAAS,iBAAiB,CAAC,SAAiB,EAAE,SAAiB;IAC7D,YAAY,CAAC,QAAQ,EAAE;QACrB,IAAI,EAAE,SAAS;QACf,KAAK,EAAmB,WAAW;QACnC,SAAS,EAAE,WAAW,EAAE,2BAA2B;QACnD,KAAK,EAAE,OAAO,EAAU,oBAAoB;QAC5C,KAAK,EAAE,GAAG,EAAc,OAAO;QAC/B,IAAI,EAAoB,mBAAmB;QAC3C,SAAS;KACV,EAAE;QACD,KAAK,EAAE,QAAQ;QACf,OAAO,EAAE,OAAO,EAAE,mCAAmC;KACtD,CAAC,CAAC;AACL,CAAC;AAED,2EAA2E;AAE3E;;;;;;;;;GASG;AACH,MAAM,CAAC,KAAK,UAAU,eAAe,CACnC,QAAgB,EAChB,OAA8B;IAE9B,2BAA2B;IAC3B,WAAW,EAAE,CAAC;IAEd,sCAAsC;IACtC,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,MAAM,EAAE,EAAE,gBAAgB,IAAI,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;IAEzE,IAAI,CAAC;QACH,mCAAmC;QACnC,iBAAiB,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;QAErC,yCAAyC;QACzC,MAAM,MAAM,GAAqB,MAAM,eAAe,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QAEzE,4BAA4B;QAC5B,OAAO;YACL,QAAQ,EAAE,MAAM,CAAC,QAAQ;YACzB,QAAQ,EAAE,MAAM,CAAC,QAAQ;YACzB,QAAQ,EAAE,MAAM,CAAC,QAAQ;YACzB,QAAQ,EAAE,MAAM,CAAC,QAAQ;SAC1B,CAAC;IACJ,CAAC;YAAS,CAAC;QACT,mEAAmE;QACnE,IAAI,CAAC;YACH,MAAM,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QAC3B,CAAC;QAAC,MAAM,CAAC;YACP,yDAAyD;YACzD,mCAAmC;QACrC,CAAC;IACH,CAAC;AACH,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "gnosys",
|
|
3
|
-
"version": "
|
|
3
|
+
"version": "5.0.0",
|
|
4
4
|
"description": "Gnosys — Persistent Memory for AI Agents. Sandbox-first runtime, central SQLite brain, federated search, Dream Mode, Web Knowledge Base, Obsidian export.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "dist/index.js",
|
|
@@ -37,6 +37,8 @@
|
|
|
37
37
|
"dotenv": "^17.3.1",
|
|
38
38
|
"glob": "^13.0.6",
|
|
39
39
|
"gray-matter": "^4.0.3",
|
|
40
|
+
"mammoth": "^1.12.0",
|
|
41
|
+
"pdf-parse": "^2.4.5",
|
|
40
42
|
"turndown": "^7.2.2",
|
|
41
43
|
"zod": "^4.3.6"
|
|
42
44
|
},
|