@robthepcguy/rag-vault 1.5.3 → 1.7.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 +86 -14
- package/dist/bin/install-skills.d.ts.map +1 -0
- package/dist/bin/install-skills.js +16 -17
- package/dist/bin/install-skills.js.map +1 -0
- package/dist/chunker/index.d.ts.map +1 -0
- package/dist/chunker/index.js +1 -5
- package/dist/chunker/index.js.map +1 -0
- package/dist/chunker/semantic-chunker.d.ts.map +1 -0
- package/dist/chunker/semantic-chunker.js +9 -13
- package/dist/chunker/semantic-chunker.js.map +1 -0
- package/dist/chunker/sentence-splitter.d.ts.map +1 -0
- package/dist/chunker/sentence-splitter.js +1 -4
- package/dist/chunker/sentence-splitter.js.map +1 -0
- package/dist/embedder/index.d.ts +10 -0
- package/dist/embedder/index.d.ts.map +1 -0
- package/dist/embedder/index.js +58 -32
- package/dist/embedder/index.js.map +1 -0
- package/dist/errors/index.d.ts.map +1 -0
- package/dist/errors/index.js +10 -17
- package/dist/errors/index.js.map +1 -0
- package/dist/explainability/index.d.ts.map +1 -0
- package/dist/explainability/index.js +1 -5
- package/dist/explainability/index.js.map +1 -0
- package/dist/explainability/keywords.d.ts.map +1 -0
- package/dist/explainability/keywords.js +1 -4
- package/dist/explainability/keywords.js.map +1 -0
- package/dist/flywheel/feedback.d.ts.map +1 -0
- package/dist/flywheel/feedback.js +15 -19
- package/dist/flywheel/feedback.js.map +1 -0
- package/dist/flywheel/index.d.ts.map +1 -0
- package/dist/flywheel/index.js +1 -5
- package/dist/flywheel/index.js.map +1 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +86 -64
- package/dist/index.js.map +1 -0
- package/dist/parser/html-parser.d.ts.map +1 -0
- package/dist/parser/html-parser.js +7 -13
- package/dist/parser/html-parser.js.map +1 -0
- package/dist/parser/index.d.ts.map +1 -0
- package/dist/parser/index.js +44 -52
- package/dist/parser/index.js.map +1 -0
- package/dist/parser/pdf-filter.d.ts.map +1 -0
- package/dist/parser/pdf-filter.js +10 -16
- package/dist/parser/pdf-filter.js.map +1 -0
- package/dist/query/index.d.ts.map +1 -0
- package/dist/query/index.js +1 -8
- package/dist/query/index.js.map +1 -0
- package/dist/query/parser.d.ts.map +1 -0
- package/dist/query/parser.js +5 -12
- package/dist/query/parser.js.map +1 -0
- package/dist/server/index.d.ts +6 -0
- package/dist/server/index.d.ts.map +1 -0
- package/dist/server/index.js +106 -95
- package/dist/server/index.js.map +1 -0
- package/dist/server/raw-data-utils.d.ts.map +1 -0
- package/dist/server/raw-data-utils.js +21 -33
- package/dist/server/raw-data-utils.js.map +1 -0
- package/dist/server/remote-transport.d.ts +31 -0
- package/dist/server/remote-transport.d.ts.map +1 -0
- package/dist/server/remote-transport.js +177 -0
- package/dist/server/remote-transport.js.map +1 -0
- package/dist/server/schemas.d.ts.map +1 -0
- package/dist/server/schemas.js +35 -38
- package/dist/server/schemas.js.map +1 -0
- package/dist/utils/config-parsers.d.ts.map +1 -0
- package/dist/utils/config-parsers.js +3 -8
- package/dist/utils/config-parsers.js.map +1 -0
- package/dist/utils/config.d.ts.map +1 -0
- package/dist/utils/config.js +12 -19
- package/dist/utils/config.js.map +1 -0
- package/dist/utils/embedding-device-cli.d.ts +12 -0
- package/dist/utils/embedding-device-cli.d.ts.map +1 -0
- package/dist/utils/embedding-device-cli.js +61 -0
- package/dist/utils/embedding-device-cli.js.map +1 -0
- package/dist/utils/file-utils.d.ts.map +1 -0
- package/dist/utils/file-utils.js +12 -18
- package/dist/utils/file-utils.js.map +1 -0
- package/dist/utils/math.d.ts.map +1 -0
- package/dist/utils/math.js +2 -6
- package/dist/utils/math.js.map +1 -0
- package/dist/utils/process-handlers.d.ts.map +1 -0
- package/dist/utils/process-handlers.js +5 -10
- package/dist/utils/process-handlers.js.map +1 -0
- package/dist/vectordb/index.d.ts.map +1 -0
- package/dist/vectordb/index.js +39 -45
- package/dist/vectordb/index.js.map +1 -0
- package/dist/web/api-routes.d.ts.map +1 -0
- package/dist/web/api-routes.js +41 -47
- package/dist/web/api-routes.js.map +1 -0
- package/dist/web/config-routes.d.ts.map +1 -0
- package/dist/web/config-routes.js +30 -33
- package/dist/web/config-routes.js.map +1 -0
- package/dist/web/database-manager.d.ts.map +1 -0
- package/dist/web/database-manager.js +67 -72
- package/dist/web/database-manager.js.map +1 -0
- package/dist/web/http-server.d.ts.map +1 -0
- package/dist/web/http-server.js +45 -86
- package/dist/web/http-server.js.map +1 -0
- package/dist/web/index.d.ts.map +1 -0
- package/dist/web/index.js +20 -58
- package/dist/web/index.js.map +1 -0
- package/dist/web/middleware/async-handler.d.ts.map +1 -0
- package/dist/web/middleware/async-handler.js +1 -4
- package/dist/web/middleware/async-handler.js.map +1 -0
- package/dist/web/middleware/auth.d.ts.map +1 -0
- package/dist/web/middleware/auth.js +3 -6
- package/dist/web/middleware/auth.js.map +1 -0
- package/dist/web/middleware/error-handler.d.ts.map +1 -0
- package/dist/web/middleware/error-handler.js +4 -8
- package/dist/web/middleware/error-handler.js.map +1 -0
- package/dist/web/middleware/index.d.ts.map +1 -0
- package/dist/web/middleware/index.js +5 -17
- package/dist/web/middleware/index.js.map +1 -0
- package/dist/web/middleware/rate-limit.d.ts.map +1 -0
- package/dist/web/middleware/rate-limit.js +3 -8
- package/dist/web/middleware/rate-limit.js.map +1 -0
- package/dist/web/middleware/request-logger.d.ts.map +1 -0
- package/dist/web/middleware/request-logger.js +2 -6
- package/dist/web/middleware/request-logger.js.map +1 -0
- package/dist/web/types.d.ts.map +1 -0
- package/dist/web/types.js +1 -2
- package/dist/web/types.js.map +1 -0
- package/package.json +31 -35
- package/web-ui/dist/assets/CollectionsPage-BDmEfv3V.js +1 -0
- package/web-ui/dist/assets/FilesPage-pG9HmpgQ.js +1 -0
- package/web-ui/dist/assets/ReaderPage-CwMN03NU.js +28 -0
- package/web-ui/dist/assets/ReaderSettingsContext-CkSjqsRh.js +1 -0
- package/web-ui/dist/assets/SearchPage-DAltjnLL.js +1 -0
- package/web-ui/dist/assets/SettingsPage-C6J5BITP.js +1 -0
- package/web-ui/dist/assets/StatusPage-powRGmW3.js +1 -0
- package/web-ui/dist/assets/UploadPage-eyfSjL4u.js +8 -0
- package/web-ui/dist/assets/format-DOJ3IkRX.js +1 -0
- package/web-ui/dist/assets/index-BpwaiuGL.css +1 -0
- package/web-ui/dist/assets/index-D068MV_o.js +6 -0
- package/web-ui/dist/assets/link-indexer.worker-DGXNsXmZ.js +1 -0
- package/web-ui/dist/assets/motion-CKwJwI3J.js +9 -0
- package/web-ui/dist/assets/query-DPt-uCb6.js +1 -0
- package/web-ui/dist/assets/vendor-C2QPsZ3S.js +10 -0
- package/web-ui/dist/index.html +7 -2
- package/web-ui/dist/assets/index-SBHxoAwi.js +0 -120
- package/web-ui/dist/assets/index-ej8i4PGl.css +0 -1
package/dist/errors/index.js
CHANGED
|
@@ -1,8 +1,4 @@
|
|
|
1
|
-
"use strict";
|
|
2
1
|
// Centralized error classes for RAG operations
|
|
3
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
-
exports.EmbeddingError = exports.ParserFileOperationError = exports.ParserValidationError = exports.DatabaseError = exports.ValidationError = exports.RAGError = void 0;
|
|
5
|
-
exports.getErrorMessage = getErrorMessage;
|
|
6
2
|
// ============================================
|
|
7
3
|
// Error Codes
|
|
8
4
|
// ============================================
|
|
@@ -34,7 +30,10 @@ const ErrorCodes = {
|
|
|
34
30
|
/**
|
|
35
31
|
* Base error class for RAG operations
|
|
36
32
|
*/
|
|
37
|
-
class RAGError extends Error {
|
|
33
|
+
export class RAGError extends Error {
|
|
34
|
+
code;
|
|
35
|
+
statusCode;
|
|
36
|
+
details;
|
|
38
37
|
constructor(message, options = {}) {
|
|
39
38
|
super(message, options.cause ? { cause: options.cause } : undefined);
|
|
40
39
|
this.name = 'RAGError';
|
|
@@ -52,14 +51,13 @@ class RAGError extends Error {
|
|
|
52
51
|
};
|
|
53
52
|
}
|
|
54
53
|
}
|
|
55
|
-
exports.RAGError = RAGError;
|
|
56
54
|
// ============================================
|
|
57
55
|
// Validation Errors
|
|
58
56
|
// ============================================
|
|
59
57
|
/**
|
|
60
58
|
* Validation error for invalid input
|
|
61
59
|
*/
|
|
62
|
-
class ValidationError extends RAGError {
|
|
60
|
+
export class ValidationError extends RAGError {
|
|
63
61
|
constructor(message, details, cause) {
|
|
64
62
|
const opts = {
|
|
65
63
|
code: ErrorCodes.VALIDATION_ERROR,
|
|
@@ -73,14 +71,13 @@ class ValidationError extends RAGError {
|
|
|
73
71
|
this.name = 'ValidationError';
|
|
74
72
|
}
|
|
75
73
|
}
|
|
76
|
-
exports.ValidationError = ValidationError;
|
|
77
74
|
// ============================================
|
|
78
75
|
// Database Errors
|
|
79
76
|
// ============================================
|
|
80
77
|
/**
|
|
81
78
|
* Database operation error
|
|
82
79
|
*/
|
|
83
|
-
class DatabaseError extends RAGError {
|
|
80
|
+
export class DatabaseError extends RAGError {
|
|
84
81
|
constructor(message, cause, code = ErrorCodes.DATABASE_ERROR) {
|
|
85
82
|
const opts = {
|
|
86
83
|
code,
|
|
@@ -92,14 +89,13 @@ class DatabaseError extends RAGError {
|
|
|
92
89
|
this.name = 'DatabaseError';
|
|
93
90
|
}
|
|
94
91
|
}
|
|
95
|
-
exports.DatabaseError = DatabaseError;
|
|
96
92
|
// ============================================
|
|
97
93
|
// Parser Errors
|
|
98
94
|
// ============================================
|
|
99
95
|
/**
|
|
100
96
|
* Parser validation error (equivalent to 400)
|
|
101
97
|
*/
|
|
102
|
-
class ParserValidationError extends RAGError {
|
|
98
|
+
export class ParserValidationError extends RAGError {
|
|
103
99
|
constructor(message, cause) {
|
|
104
100
|
const opts = {
|
|
105
101
|
code: ErrorCodes.PARSER_VALIDATION_ERROR,
|
|
@@ -111,11 +107,10 @@ class ParserValidationError extends RAGError {
|
|
|
111
107
|
this.name = 'ParserValidationError';
|
|
112
108
|
}
|
|
113
109
|
}
|
|
114
|
-
exports.ParserValidationError = ParserValidationError;
|
|
115
110
|
/**
|
|
116
111
|
* Parser file operation error (equivalent to 500)
|
|
117
112
|
*/
|
|
118
|
-
class ParserFileOperationError extends RAGError {
|
|
113
|
+
export class ParserFileOperationError extends RAGError {
|
|
119
114
|
constructor(message, cause) {
|
|
120
115
|
const opts = {
|
|
121
116
|
code: ErrorCodes.PARSER_FILE_OPERATION_ERROR,
|
|
@@ -127,14 +122,13 @@ class ParserFileOperationError extends RAGError {
|
|
|
127
122
|
this.name = 'ParserFileOperationError';
|
|
128
123
|
}
|
|
129
124
|
}
|
|
130
|
-
exports.ParserFileOperationError = ParserFileOperationError;
|
|
131
125
|
// ============================================
|
|
132
126
|
// Embedding Errors
|
|
133
127
|
// ============================================
|
|
134
128
|
/**
|
|
135
129
|
* Embedding generation error
|
|
136
130
|
*/
|
|
137
|
-
class EmbeddingError extends RAGError {
|
|
131
|
+
export class EmbeddingError extends RAGError {
|
|
138
132
|
constructor(message, cause) {
|
|
139
133
|
const opts = {
|
|
140
134
|
code: ErrorCodes.EMBEDDING_ERROR,
|
|
@@ -146,14 +140,13 @@ class EmbeddingError extends RAGError {
|
|
|
146
140
|
this.name = 'EmbeddingError';
|
|
147
141
|
}
|
|
148
142
|
}
|
|
149
|
-
exports.EmbeddingError = EmbeddingError;
|
|
150
143
|
// ============================================
|
|
151
144
|
// Utilities
|
|
152
145
|
// ============================================
|
|
153
146
|
/**
|
|
154
147
|
* Get error message with optional stack trace (based on environment)
|
|
155
148
|
*/
|
|
156
|
-
function getErrorMessage(error) {
|
|
149
|
+
export function getErrorMessage(error) {
|
|
157
150
|
if (process.env['NODE_ENV'] === 'production') {
|
|
158
151
|
return error.message;
|
|
159
152
|
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/errors/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/explainability/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,sBAAsB,EAAE,MAAM,eAAe,CAAA"}
|
|
@@ -1,8 +1,4 @@
|
|
|
1
|
-
"use strict";
|
|
2
1
|
// Explainability module for chunk similarity
|
|
3
2
|
// Provides keyword/phrase extraction and relationship reasoning
|
|
4
|
-
|
|
5
|
-
exports.explainChunkSimilarity = void 0;
|
|
6
|
-
var keywords_js_1 = require("./keywords.js");
|
|
7
|
-
Object.defineProperty(exports, "explainChunkSimilarity", { enumerable: true, get: function () { return keywords_js_1.explainChunkSimilarity; } });
|
|
3
|
+
export { explainChunkSimilarity } from './keywords.js';
|
|
8
4
|
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/explainability/index.ts"],"names":[],"mappings":"AAAA,6CAA6C;AAC7C,gEAAgE;AAEhE,OAAO,EAAE,sBAAsB,EAAE,MAAM,eAAe,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"keywords.d.ts","sourceRoot":"","sources":["../../src/explainability/keywords.ts"],"names":[],"mappings":"AAqNA;;GAEG;AACH,KAAK,WAAW,GAAG,UAAU,GAAG,cAAc,GAAG,eAAe,GAAG,iBAAiB,CAAA;AAsCpF;;GAEG;AACH,UAAU,gBAAgB;IACxB,cAAc,EAAE,MAAM,EAAE,CAAA;IACxB,aAAa,EAAE,MAAM,EAAE,CAAA;IACvB,WAAW,EAAE,WAAW,CAAA;CACzB;AAED;;GAEG;AACH,wBAAgB,sBAAsB,CACpC,UAAU,EAAE,MAAM,EAClB,UAAU,EAAE,MAAM,EAClB,cAAc,EAAE,OAAO,EACvB,eAAe,EAAE,MAAM,GACtB,gBAAgB,CAMlB"}
|
|
@@ -1,8 +1,5 @@
|
|
|
1
|
-
"use strict";
|
|
2
1
|
// Explainability utilities for chunk similarity
|
|
3
2
|
// Provides keyword/phrase extraction without LLM dependencies
|
|
4
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
5
|
-
exports.explainChunkSimilarity = explainChunkSimilarity;
|
|
6
3
|
// Common English stopwords to filter out
|
|
7
4
|
const STOPWORDS = new Set([
|
|
8
5
|
'a',
|
|
@@ -227,7 +224,7 @@ function determineReasonLabel(text1, text2, isSameDocument, similarityScore) {
|
|
|
227
224
|
/**
|
|
228
225
|
* Generate explanation for chunk relationship
|
|
229
226
|
*/
|
|
230
|
-
function explainChunkSimilarity(sourceText, targetText, isSameDocument, similarityScore) {
|
|
227
|
+
export function explainChunkSimilarity(sourceText, targetText, isSameDocument, similarityScore) {
|
|
231
228
|
return {
|
|
232
229
|
sharedKeywords: findSharedKeywords(sourceText, targetText),
|
|
233
230
|
sharedPhrases: findSharedPhrases(sourceText, targetText),
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"keywords.js","sourceRoot":"","sources":["../../src/explainability/keywords.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"feedback.d.ts","sourceRoot":"","sources":["../../src/flywheel/feedback.ts"],"names":[],"mappings":"AAOA;;GAEG;AACH,MAAM,MAAM,iBAAiB,GAAG,KAAK,GAAG,OAAO,GAAG,kBAAkB,GAAG,eAAe,CAAA;AAEtF;;GAEG;AACH,MAAM,WAAW,QAAQ;IACvB,QAAQ,EAAE,MAAM,CAAA;IAChB,UAAU,EAAE,MAAM,CAAA;IAClB,WAAW,CAAC,EAAE,MAAM,CAAA;CACrB;AAED;;GAEG;AACH,UAAU,aAAa;IACrB,IAAI,EAAE,iBAAiB,CAAA;IACvB,MAAM,EAAE,QAAQ,CAAA;IAChB,MAAM,EAAE,QAAQ,CAAA;IAChB,SAAS,EAAE,IAAI,CAAA;CAChB;AAED;;GAEG;AACH,UAAU,YAAY;IACpB,QAAQ,EAAE,MAAM,CAAA;IAChB,UAAU,EAAE,MAAM,CAAA;IAClB,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,KAAK,EAAE,MAAM,CAAA;CACd;AAED;;GAEG;AACH,UAAU,cAAc;IACtB,yDAAyD;IACzD,QAAQ,EAAE,MAAM,CAAA;IAChB,8DAA8D;IAC9D,UAAU,EAAE,MAAM,CAAA;IAClB,kEAAkE;IAClE,cAAc,EAAE,MAAM,CAAA;IACtB,+DAA+D;IAC/D,WAAW,EAAE,MAAM,CAAA;CACpB;AAoBD;;;GAGG;AACH,qBAAa,aAAa;IACxB,OAAO,CAAC,MAAM,CAAsB;IACpC,OAAO,CAAC,MAAM,CAAgB;IAG9B,OAAO,CAAC,WAAW,CAAsC;IACzD,OAAO,CAAC,cAAc,CAAsC;IAC5D,OAAO,CAAC,YAAY,CAA8C;gBAEtD,MAAM,GAAE,OAAO,CAAC,cAAc,CAAM;IAIhD;;OAEG;IACH,WAAW,CAAC,KAAK,EAAE,aAAa,GAAG,IAAI;IAKvC;;OAEG;IACH,OAAO,CAAC,aAAa;IAiDrB;;OAEG;IACH,QAAQ,CAAC,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,GAAG,OAAO;IAMrD;;OAEG;IACH,YAAY,CAAC,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,GAAG,OAAO;IAMzD;;OAEG;IACH,sBAAsB,CAAC,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,GAAG,OAAO;IAiBnE;;OAEG;IACH,aAAa,CAAC,CAAC,SAAS,YAAY,EAAE,OAAO,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,QAAQ,GAAG,CAAC,EAAE;IAsC1E;;OAEG;IACH,cAAc,IAAI,MAAM;IAOxB;;OAEG;IACH,YAAY,IAAI,aAAa,EAAE;IAI/B;;;OAGG;IACH,YAAY,CAAC,MAAM,EAAE,aAAa,EAAE,GAAG,IAAI;IAkB3C;;OAEG;IACH,QAAQ,IAAI;QAAE,UAAU,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAC;QAAC,cAAc,EAAE,MAAM,CAAA;KAAE;IAgB/E;;;OAGG;IACG,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAa/C;;;OAGG;IACG,YAAY,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;CAgClD;AAOD;;GAEG;AACH,wBAAgB,gBAAgB,IAAI,aAAa,CAEhD"}
|
|
@@ -1,12 +1,8 @@
|
|
|
1
|
-
"use strict";
|
|
2
1
|
// Curatorial Flywheel v1: Feedback-based Re-ranking
|
|
3
2
|
// Tracks user actions (pins, dismissals) to improve retrieval quality
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
const promises_1 = require("node:fs/promises");
|
|
8
|
-
const node_path_1 = require("node:path");
|
|
9
|
-
const file_utils_js_1 = require("../utils/file-utils.js");
|
|
3
|
+
import { readFile } from 'node:fs/promises';
|
|
4
|
+
import { join } from 'node:path';
|
|
5
|
+
import { atomicWriteFile } from '../utils/file-utils.js';
|
|
10
6
|
const DEFAULT_CONFIG = {
|
|
11
7
|
pinBoost: 1.3,
|
|
12
8
|
coPinBoost: 1.15,
|
|
@@ -27,13 +23,14 @@ function chunkKey(ref) {
|
|
|
27
23
|
* FeedbackStore: In-memory store for feedback events
|
|
28
24
|
* Can be persisted to disk for long-term learning
|
|
29
25
|
*/
|
|
30
|
-
class FeedbackStore {
|
|
26
|
+
export class FeedbackStore {
|
|
27
|
+
events = [];
|
|
28
|
+
config;
|
|
29
|
+
// Index structures for fast lookup
|
|
30
|
+
pinnedPairs = new Map(); // source -> targets
|
|
31
|
+
dismissedPairs = new Map(); // source -> targets
|
|
32
|
+
coPinnedWith = new Map(); // target -> co-targets -> count
|
|
31
33
|
constructor(config = {}) {
|
|
32
|
-
this.events = [];
|
|
33
|
-
// Index structures for fast lookup
|
|
34
|
-
this.pinnedPairs = new Map(); // source -> targets
|
|
35
|
-
this.dismissedPairs = new Map(); // source -> targets
|
|
36
|
-
this.coPinnedWith = new Map(); // target -> co-targets -> count
|
|
37
34
|
this.config = { ...DEFAULT_CONFIG, ...config };
|
|
38
35
|
}
|
|
39
36
|
/**
|
|
@@ -217,7 +214,7 @@ class FeedbackStore {
|
|
|
217
214
|
* @param dbPath - Path to the database directory
|
|
218
215
|
*/
|
|
219
216
|
async saveToDisk(dbPath) {
|
|
220
|
-
const filePath =
|
|
217
|
+
const filePath = join(dbPath, 'feedback.json');
|
|
221
218
|
const data = {
|
|
222
219
|
version: 1,
|
|
223
220
|
events: this.events.map((e) => ({
|
|
@@ -225,7 +222,7 @@ class FeedbackStore {
|
|
|
225
222
|
timestamp: e.timestamp.toISOString(),
|
|
226
223
|
})),
|
|
227
224
|
};
|
|
228
|
-
await
|
|
225
|
+
await atomicWriteFile(filePath, JSON.stringify(data, null, 2));
|
|
229
226
|
console.error(`FeedbackStore: Saved ${this.events.length} events to ${filePath}`);
|
|
230
227
|
}
|
|
231
228
|
/**
|
|
@@ -233,9 +230,9 @@ class FeedbackStore {
|
|
|
233
230
|
* @param dbPath - Path to the database directory
|
|
234
231
|
*/
|
|
235
232
|
async loadFromDisk(dbPath) {
|
|
236
|
-
const filePath =
|
|
233
|
+
const filePath = join(dbPath, 'feedback.json');
|
|
237
234
|
try {
|
|
238
|
-
const content = await
|
|
235
|
+
const content = await readFile(filePath, 'utf-8');
|
|
239
236
|
const data = JSON.parse(content);
|
|
240
237
|
// Validate JSON structure before importing
|
|
241
238
|
if (data.version !== 1) {
|
|
@@ -260,7 +257,6 @@ class FeedbackStore {
|
|
|
260
257
|
}
|
|
261
258
|
}
|
|
262
259
|
}
|
|
263
|
-
exports.FeedbackStore = FeedbackStore;
|
|
264
260
|
// Global feedback store instance (eager initialization to prevent race conditions)
|
|
265
261
|
// Using eager init instead of lazy init avoids the check-then-act race where
|
|
266
262
|
// concurrent requests could create separate instances and lose feedback events.
|
|
@@ -268,7 +264,7 @@ const globalFeedbackStore = new FeedbackStore();
|
|
|
268
264
|
/**
|
|
269
265
|
* Get the global feedback store
|
|
270
266
|
*/
|
|
271
|
-
function getFeedbackStore() {
|
|
267
|
+
export function getFeedbackStore() {
|
|
272
268
|
return globalFeedbackStore;
|
|
273
269
|
}
|
|
274
270
|
//# sourceMappingURL=feedback.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"feedback.js","sourceRoot":"","sources":["../../src/flywheel/feedback.ts"],"names":[],"mappings":"AAAA,oDAAoD;AACpD,sEAAsE;AAEtE,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAA;AAC3C,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAChC,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAA;AAkDxD,MAAM,cAAc,GAAmB;IACrC,QAAQ,EAAE,GAAG;IACb,UAAU,EAAE,IAAI;IAChB,cAAc,EAAE,GAAG;IACnB,WAAW,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,EAAE,UAAU;CAClD,CAAA;AAED;;GAEG;AACH,SAAS,QAAQ,CAAC,GAAa;IAC7B,4CAA4C;IAC5C,IAAI,GAAG,CAAC,WAAW,EAAE,CAAC;QACpB,OAAO,MAAM,GAAG,CAAC,WAAW,EAAE,CAAA;IAChC,CAAC;IACD,OAAO,GAAG,GAAG,CAAC,QAAQ,IAAI,GAAG,CAAC,UAAU,EAAE,CAAA;AAC5C,CAAC;AAED;;;GAGG;AACH,MAAM,OAAO,aAAa;IAChB,MAAM,GAAoB,EAAE,CAAA;IAC5B,MAAM,CAAgB;IAE9B,mCAAmC;IAC3B,WAAW,GAA6B,IAAI,GAAG,EAAE,CAAA,CAAC,oBAAoB;IACtE,cAAc,GAA6B,IAAI,GAAG,EAAE,CAAA,CAAC,oBAAoB;IACzE,YAAY,GAAqC,IAAI,GAAG,EAAE,CAAA,CAAC,gCAAgC;IAEnG,YAAY,SAAkC,EAAE;QAC9C,IAAI,CAAC,MAAM,GAAG,EAAE,GAAG,cAAc,EAAE,GAAG,MAAM,EAAE,CAAA;IAChD,CAAC;IAED;;OAEG;IACH,WAAW,CAAC,KAAoB;QAC9B,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;QACvB,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,CAAA;IAC3B,CAAC;IAED;;OAEG;IACK,aAAa,CAAC,KAAoB;QACxC,MAAM,SAAS,GAAG,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC,CAAA;QACxC,MAAM,SAAS,GAAG,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC,CAAA;QAExC,QAAQ,KAAK,CAAC,IAAI,EAAE,CAAC;YACnB,KAAK,KAAK,CAAC,CAAC,CAAC;gBACX,qBAAqB;gBACrB,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC;oBACrC,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,SAAS,EAAE,IAAI,GAAG,EAAE,CAAC,CAAA;gBAC5C,CAAC;gBACD,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,SAAS,CAAE,CAAC,GAAG,CAAC,SAAS,CAAC,CAAA;gBAE/C,4BAA4B;gBAC5B,MAAM,YAAY,GAAG,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,SAAS,CAAE,CAAA;gBACrD,KAAK,MAAM,cAAc,IAAI,YAAY,EAAE,CAAC;oBAC1C,IAAI,cAAc,KAAK,SAAS,EAAE,CAAC;wBACjC,yBAAyB;wBACzB,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,cAAc,CAAC,EAAE,CAAC;4BAC3C,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,cAAc,EAAE,IAAI,GAAG,EAAE,CAAC,CAAA;wBAClD,CAAC;wBACD,MAAM,KAAK,GAAG,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,cAAc,CAAE,CAAA;wBACpD,KAAK,CAAC,GAAG,CAAC,SAAS,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAA;wBAErD,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC;4BACtC,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,SAAS,EAAE,IAAI,GAAG,EAAE,CAAC,CAAA;wBAC7C,CAAC;wBACD,MAAM,YAAY,GAAG,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,SAAS,CAAE,CAAA;wBACtD,YAAY,CAAC,GAAG,CAAC,cAAc,EAAE,CAAC,YAAY,CAAC,GAAG,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAA;oBAC/E,CAAC;gBACH,CAAC;gBACD,MAAK;YACP,CAAC;YACD,KAAK,OAAO,CAAC,CAAC,CAAC;gBACb,2BAA2B;gBAC3B,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC,SAAS,CAAC,CAAA;gBAClD,MAAK;YACP,CAAC;YACD,KAAK,kBAAkB,CAAC,CAAC,CAAC;gBACxB,wBAAwB;gBACxB,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC;oBACxC,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,SAAS,EAAE,IAAI,GAAG,EAAE,CAAC,CAAA;gBAC/C,CAAC;gBACD,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,SAAS,CAAE,CAAC,GAAG,CAAC,SAAS,CAAC,CAAA;gBAClD,MAAK;YACP,CAAC;YACD,0DAA0D;QAC5D,CAAC;IACH,CAAC;IAED;;OAEG;IACH,QAAQ,CAAC,MAAgB,EAAE,MAAgB;QACzC,MAAM,SAAS,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAA;QAClC,MAAM,SAAS,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAA;QAClC,OAAO,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,GAAG,CAAC,SAAS,CAAC,IAAI,KAAK,CAAA;IACjE,CAAC;IAED;;OAEG;IACH,YAAY,CAAC,MAAgB,EAAE,MAAgB;QAC7C,MAAM,SAAS,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAA;QAClC,MAAM,SAAS,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAA;QAClC,OAAO,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,GAAG,CAAC,SAAS,CAAC,IAAI,KAAK,CAAA;IACpE,CAAC;IAED;;OAEG;IACH,sBAAsB,CAAC,MAAgB,EAAE,MAAgB;QACvD,qCAAqC;QACrC,MAAM,SAAS,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAA;QAClC,MAAM,UAAU,GAAG,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,SAAS,CAAC,CAAA;QAClD,IAAI,CAAC,UAAU,IAAI,UAAU,CAAC,IAAI,KAAK,CAAC;YAAE,OAAO,KAAK,CAAA;QAEtD,oEAAoE;QACpE,MAAM,SAAS,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAA;QAClC,KAAK,MAAM,YAAY,IAAI,UAAU,EAAE,CAAC;YACtC,MAAM,MAAM,GAAG,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,YAAY,CAAC,CAAA;YAClD,IAAI,MAAM,EAAE,GAAG,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC;gBAChE,OAAO,IAAI,CAAA;YACb,CAAC;QACH,CAAC;QACD,OAAO,KAAK,CAAA;IACd,CAAC;IAED;;OAEG;IACH,aAAa,CAAyB,OAAY,EAAE,MAAgB;QAClE,MAAM,SAAS,GAAa,MAAM,CAAA;QAElC,MAAM,cAAc,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE;YAC5C,MAAM,SAAS,GAAa;gBAC1B,QAAQ,EAAE,MAAM,CAAC,QAAQ;gBACzB,UAAU,EAAE,MAAM,CAAC,UAAU;gBAC7B,GAAG,CAAC,MAAM,CAAC,WAAW,IAAI,EAAE,WAAW,EAAE,MAAM,CAAC,WAAW,EAAE,CAAC;aAC/D,CAAA;YAED,IAAI,KAAK,GAAG,GAAG,CAAA;YAEf,uBAAuB;YACvB,IAAI,IAAI,CAAC,QAAQ,CAAC,SAAS,EAAE,SAAS,CAAC,EAAE,CAAC;gBACxC,KAAK,IAAI,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAA;YAC/B,CAAC;YAED,2BAA2B;YAC3B,IAAI,IAAI,CAAC,sBAAsB,CAAC,SAAS,EAAE,SAAS,CAAC,EAAE,CAAC;gBACtD,KAAK,IAAI,IAAI,CAAC,MAAM,CAAC,UAAU,CAAA;YACjC,CAAC;YAED,iCAAiC;YACjC,IAAI,IAAI,CAAC,YAAY,CAAC,SAAS,EAAE,SAAS,CAAC,EAAE,CAAC;gBAC5C,KAAK,IAAI,IAAI,CAAC,MAAM,CAAC,cAAc,CAAA;YACrC,CAAC;YAED,iDAAiD;YACjD,OAAO;gBACL,GAAG,MAAM;gBACT,KAAK,EAAE,MAAM,CAAC,KAAK,GAAG,KAAK;aAC5B,CAAA;QACH,CAAC,CAAC,CAAA;QAEF,6CAA6C;QAC7C,OAAO,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC,CAAA;IACzD,CAAC;IAED;;OAEG;IACH,cAAc;QACZ,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,MAAM,CAAC,WAAW,CAAA;QACnD,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAA;QACjC,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,OAAO,EAAE,GAAG,MAAM,CAAC,CAAA;QACvE,OAAO,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAA;IACpC,CAAC;IAED;;OAEG;IACH,YAAY;QACV,OAAO,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,CAAA;IACzB,CAAC;IAED;;;OAGG;IACH,YAAY,CAAC,MAAuB;QAClC,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;YAC3B,0CAA0C;YAC1C,MAAM,SAAS,GAAG,IAAI,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAA;YAC3C,IAAI,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC,OAAO,EAAE,CAAC,EAAE,CAAC;gBACtC,OAAO,CAAC,IAAI,CAAC,uDAAuD,EAAE,KAAK,CAAC,CAAA;gBAC5E,SAAQ;YACV,CAAC;YAED,MAAM,CAAC,GAAG;gBACR,GAAG,KAAK;gBACR,SAAS;aACV,CAAA;YACD,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;YACnB,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,CAAA;QACvB,CAAC;IACH,CAAC;IAED;;OAEG;IACH,QAAQ;QACN,IAAI,WAAW,GAAG,CAAC,CAAA;QACnB,KAAK,MAAM,OAAO,IAAI,IAAI,CAAC,WAAW,CAAC,MAAM,EAAE,EAAE,CAAC;YAChD,WAAW,IAAI,OAAO,CAAC,IAAI,CAAA;QAC7B,CAAC;QACD,IAAI,cAAc,GAAG,CAAC,CAAA;QACtB,KAAK,MAAM,OAAO,IAAI,IAAI,CAAC,cAAc,CAAC,MAAM,EAAE,EAAE,CAAC;YACnD,cAAc,IAAI,OAAO,CAAC,IAAI,CAAA;QAChC,CAAC;QACD,OAAO;YACL,UAAU,EAAE,IAAI,CAAC,MAAM,CAAC,MAAM;YAC9B,WAAW,EAAE,WAAW;YACxB,cAAc,EAAE,cAAc;SAC/B,CAAA;IACH,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,UAAU,CAAC,MAAc;QAC7B,MAAM,QAAQ,GAAG,IAAI,CAAC,MAAM,EAAE,eAAe,CAAC,CAAA;QAC9C,MAAM,IAAI,GAAG;YACX,OAAO,EAAE,CAAC;YACV,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;gBAC9B,GAAG,CAAC;gBACJ,SAAS,EAAE,CAAC,CAAC,SAAS,CAAC,WAAW,EAAE;aACrC,CAAC,CAAC;SACJ,CAAA;QACD,MAAM,eAAe,CAAC,QAAQ,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAA;QAC9D,OAAO,CAAC,KAAK,CAAC,wBAAwB,IAAI,CAAC,MAAM,CAAC,MAAM,cAAc,QAAQ,EAAE,CAAC,CAAA;IACnF,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,YAAY,CAAC,MAAc;QAC/B,MAAM,QAAQ,GAAG,IAAI,CAAC,MAAM,EAAE,eAAe,CAAC,CAAA;QAC9C,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,MAAM,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAA;YACjD,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;YAEhC,2CAA2C;YAC3C,IAAI,IAAI,CAAC,OAAO,KAAK,CAAC,EAAE,CAAC;gBACvB,OAAO,CAAC,IAAI,CACV,sCAAsC,IAAI,CAAC,OAAO,OAAO,QAAQ,kBAAkB,CACpF,CAAA;gBACD,OAAM;YACR,CAAC;YACD,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;gBAChC,OAAO,CAAC,IAAI,CACV,0DAA0D,QAAQ,kBAAkB,CACrF,CAAA;gBACD,OAAM;YACR,CAAC;YAED,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;YAC9B,OAAO,CAAC,KAAK,CAAC,yBAAyB,IAAI,CAAC,MAAM,CAAC,MAAM,gBAAgB,QAAQ,EAAE,CAAC,CAAA;QACtF,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,SAAS,GAAG,KAA8B,CAAA;YAChD,wDAAwD;YACxD,IAAI,SAAS,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;gBAChC,OAAM;YACR,CAAC;YACD,iEAAiE;YACjE,OAAO,CAAC,IAAI,CAAC,sCAAsC,QAAQ,GAAG,EAAE,KAAK,CAAC,CAAA;QACxE,CAAC;IACH,CAAC;CACF;AAED,mFAAmF;AACnF,6EAA6E;AAC7E,gFAAgF;AAChF,MAAM,mBAAmB,GAAG,IAAI,aAAa,EAAE,CAAA;AAE/C;;GAEG;AACH,MAAM,UAAU,gBAAgB;IAC9B,OAAO,mBAAmB,CAAA;AAC5B,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/flywheel/index.ts"],"names":[],"mappings":"AAGA,OAAO,EACL,gBAAgB,EAChB,KAAK,iBAAiB,EACtB,KAAK,QAAQ,GACd,MAAM,eAAe,CAAA"}
|
package/dist/flywheel/index.js
CHANGED
|
@@ -1,8 +1,4 @@
|
|
|
1
|
-
"use strict";
|
|
2
1
|
// Curatorial Flywheel module
|
|
3
2
|
// Re-ranking based on user feedback (pins, dismissals)
|
|
4
|
-
|
|
5
|
-
exports.getFeedbackStore = void 0;
|
|
6
|
-
var feedback_js_1 = require("./feedback.js");
|
|
7
|
-
Object.defineProperty(exports, "getFeedbackStore", { enumerable: true, get: function () { return feedback_js_1.getFeedbackStore; } });
|
|
3
|
+
export { getFeedbackStore, } from './feedback.js';
|
|
8
4
|
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/flywheel/index.ts"],"names":[],"mappings":"AAAA,6BAA6B;AAC7B,uDAAuD;AAEvD,OAAO,EACL,gBAAgB,GAGjB,MAAM,eAAe,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":""}
|
package/dist/index.js
CHANGED
|
@@ -1,53 +1,20 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
|
-
"use strict";
|
|
3
2
|
// Entry point for RAG MCP Server
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
Object.defineProperty(o, k2, desc);
|
|
11
|
-
}) : (function(o, m, k, k2) {
|
|
12
|
-
if (k2 === undefined) k2 = k;
|
|
13
|
-
o[k2] = m[k];
|
|
14
|
-
}));
|
|
15
|
-
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
16
|
-
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
17
|
-
}) : function(o, v) {
|
|
18
|
-
o["default"] = v;
|
|
19
|
-
});
|
|
20
|
-
var __importStar = (this && this.__importStar) || (function () {
|
|
21
|
-
var ownKeys = function(o) {
|
|
22
|
-
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
23
|
-
var ar = [];
|
|
24
|
-
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
25
|
-
return ar;
|
|
26
|
-
};
|
|
27
|
-
return ownKeys(o);
|
|
28
|
-
};
|
|
29
|
-
return function (mod) {
|
|
30
|
-
if (mod && mod.__esModule) return mod;
|
|
31
|
-
var result = {};
|
|
32
|
-
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
33
|
-
__setModuleDefault(result, mod);
|
|
34
|
-
return result;
|
|
35
|
-
};
|
|
36
|
-
})();
|
|
37
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
38
|
-
const install_skills_js_1 = require("./bin/install-skills.js");
|
|
39
|
-
const index_js_1 = require("./server/index.js");
|
|
40
|
-
const config_js_1 = require("./utils/config.js");
|
|
41
|
-
const process_handlers_js_1 = require("./utils/process-handlers.js");
|
|
3
|
+
import { run as runSkillsInstall } from './bin/install-skills.js';
|
|
4
|
+
import { RAGServer } from './server/index.js';
|
|
5
|
+
import { startRemoteTransport } from './server/remote-transport.js';
|
|
6
|
+
import { applyEmbeddingDeviceCliOverride } from './utils/embedding-device-cli.js';
|
|
7
|
+
import { buildRAGConfig, validateRAGConfig } from './utils/config.js';
|
|
8
|
+
import { setupProcessHandlers, setupGracefulShutdown, onShutdown, } from './utils/process-handlers.js';
|
|
42
9
|
// ============================================
|
|
43
10
|
// Subcommand Routing
|
|
44
11
|
// ============================================
|
|
45
|
-
const
|
|
12
|
+
const rawArgs = process.argv.slice(2);
|
|
46
13
|
// Handle "skills" subcommand
|
|
47
|
-
if (
|
|
48
|
-
if (
|
|
14
|
+
if (rawArgs[0] === 'skills') {
|
|
15
|
+
if (rawArgs[1] === 'install') {
|
|
49
16
|
// npx rag-vault skills install [options]
|
|
50
|
-
(
|
|
17
|
+
runSkillsInstall(rawArgs.slice(2));
|
|
51
18
|
}
|
|
52
19
|
else {
|
|
53
20
|
console.error('Unknown skills subcommand. Usage: npx rag-vault skills install [options]');
|
|
@@ -55,38 +22,60 @@ if (args[0] === 'skills') {
|
|
|
55
22
|
process.exit(1);
|
|
56
23
|
}
|
|
57
24
|
}
|
|
58
|
-
else if (args[0] === 'web') {
|
|
59
|
-
// Handle "web" subcommand - launches HTTP server with web UI
|
|
60
|
-
Promise.resolve().then(() => __importStar(require('./web/index.js'))).catch((error) => {
|
|
61
|
-
console.error('Failed to start web server:', error);
|
|
62
|
-
process.exit(1);
|
|
63
|
-
});
|
|
64
|
-
}
|
|
65
25
|
else {
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
main().catch((error) => {
|
|
73
|
-
console.error('Fatal error during startup:', error);
|
|
26
|
+
let args;
|
|
27
|
+
try {
|
|
28
|
+
args = applyEmbeddingDeviceCliOverride(rawArgs);
|
|
29
|
+
}
|
|
30
|
+
catch (error) {
|
|
31
|
+
console.error(`Invalid CLI arguments: ${error instanceof Error ? error.message : String(error)}`);
|
|
74
32
|
process.exit(1);
|
|
75
|
-
}
|
|
33
|
+
}
|
|
34
|
+
const isRemote = args.includes('--remote');
|
|
35
|
+
if (args[0] === 'web') {
|
|
36
|
+
// Handle "web" subcommand - launches HTTP server with web UI
|
|
37
|
+
import('./web/index.js').catch((error) => {
|
|
38
|
+
console.error('Failed to start web server:', error);
|
|
39
|
+
process.exit(1);
|
|
40
|
+
});
|
|
41
|
+
}
|
|
42
|
+
else if (isRemote) {
|
|
43
|
+
// ============================================
|
|
44
|
+
// Remote MCP Server (Streamable HTTP + SSE)
|
|
45
|
+
// ============================================
|
|
46
|
+
setupProcessHandlers();
|
|
47
|
+
setupGracefulShutdown();
|
|
48
|
+
mainRemote(args).catch((error) => {
|
|
49
|
+
console.error('Fatal error during remote startup:', error);
|
|
50
|
+
process.exit(1);
|
|
51
|
+
});
|
|
52
|
+
}
|
|
53
|
+
else {
|
|
54
|
+
// ============================================
|
|
55
|
+
// MCP Server (default stdio behavior)
|
|
56
|
+
// ============================================
|
|
57
|
+
setupProcessHandlers();
|
|
58
|
+
setupGracefulShutdown(); // Listen for SIGTERM/SIGINT
|
|
59
|
+
// Add .catch() to handle initialization errors and prevent unhandled rejections
|
|
60
|
+
main().catch((error) => {
|
|
61
|
+
console.error('Fatal error during startup:', error);
|
|
62
|
+
process.exit(1);
|
|
63
|
+
});
|
|
64
|
+
}
|
|
76
65
|
}
|
|
77
66
|
/**
|
|
78
|
-
* Entry point - Start RAG MCP Server
|
|
67
|
+
* Entry point - Start RAG MCP Server (stdio)
|
|
79
68
|
*/
|
|
80
69
|
async function main() {
|
|
81
70
|
try {
|
|
82
|
-
const config =
|
|
83
|
-
|
|
71
|
+
const config = buildRAGConfig();
|
|
72
|
+
validateRAGConfig(config);
|
|
84
73
|
console.error('Starting RAG MCP Server...');
|
|
85
74
|
console.error('Configuration:', config);
|
|
86
75
|
// Start RAGServer
|
|
87
|
-
const server = new
|
|
76
|
+
const server = new RAGServer(config);
|
|
88
77
|
// Register cleanup callback for graceful shutdown
|
|
89
|
-
|
|
78
|
+
onShutdown(async () => {
|
|
90
79
|
console.error('Closing RAG server...');
|
|
91
80
|
await server.close();
|
|
92
81
|
});
|
|
@@ -99,4 +88,37 @@ async function main() {
|
|
|
99
88
|
process.exit(1);
|
|
100
89
|
}
|
|
101
90
|
}
|
|
91
|
+
/**
|
|
92
|
+
* Entry point - Start RAG MCP Server (remote HTTP + SSE)
|
|
93
|
+
*/
|
|
94
|
+
async function mainRemote(args) {
|
|
95
|
+
try {
|
|
96
|
+
const config = buildRAGConfig();
|
|
97
|
+
validateRAGConfig(config);
|
|
98
|
+
// Parse optional --port flag
|
|
99
|
+
const portIdx = args.indexOf('--port');
|
|
100
|
+
const portArg = portIdx !== -1 ? args[portIdx + 1] : undefined;
|
|
101
|
+
const port = portArg ? Number.parseInt(portArg, 10) : undefined;
|
|
102
|
+
console.error('Starting RAG MCP Server (remote)...');
|
|
103
|
+
console.error('Configuration:', config);
|
|
104
|
+
// Create and initialize a shared RAGServer for backend resources
|
|
105
|
+
const ragServer = new RAGServer(config);
|
|
106
|
+
onShutdown(async () => {
|
|
107
|
+
console.error('Closing RAG server...');
|
|
108
|
+
await ragServer.close();
|
|
109
|
+
});
|
|
110
|
+
await ragServer.initialize();
|
|
111
|
+
// Start remote transport - creates per-session MCP servers sharing the same backend
|
|
112
|
+
const transportOptions = {
|
|
113
|
+
createServer: () => ragServer.createSession(),
|
|
114
|
+
};
|
|
115
|
+
if (port)
|
|
116
|
+
transportOptions.port = port;
|
|
117
|
+
await startRemoteTransport(transportOptions);
|
|
118
|
+
}
|
|
119
|
+
catch (error) {
|
|
120
|
+
console.error('Failed to start RAG MCP Server (remote):', error);
|
|
121
|
+
process.exit(1);
|
|
122
|
+
}
|
|
123
|
+
}
|
|
102
124
|
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"html-parser.d.ts","sourceRoot":"","sources":["../../src/parser/html-parser.ts"],"names":[],"mappings":"AAsDA;;;;;;;;;;;GAWG;AACH,wBAAsB,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAoD1E"}
|
|
@@ -1,14 +1,8 @@
|
|
|
1
|
-
"use strict";
|
|
2
1
|
// HTML Parser using Readability and Turndown
|
|
3
2
|
// Extracts main content from HTML and converts to Markdown
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
8
|
-
exports.parseHtml = parseHtml;
|
|
9
|
-
const readability_1 = require("@mozilla/readability");
|
|
10
|
-
const jsdom_1 = require("jsdom");
|
|
11
|
-
const turndown_1 = __importDefault(require("turndown"));
|
|
3
|
+
import { Readability } from '@mozilla/readability';
|
|
4
|
+
import { JSDOM } from 'jsdom';
|
|
5
|
+
import TurndownService from 'turndown';
|
|
12
6
|
// ============================================
|
|
13
7
|
// Turndown Service Configuration
|
|
14
8
|
// ============================================
|
|
@@ -16,7 +10,7 @@ const turndown_1 = __importDefault(require("turndown"));
|
|
|
16
10
|
* Create and configure Turndown service for HTML to Markdown conversion
|
|
17
11
|
*/
|
|
18
12
|
function createTurndownService() {
|
|
19
|
-
const turndownService = new
|
|
13
|
+
const turndownService = new TurndownService({
|
|
20
14
|
headingStyle: 'atx', // Use # style headings
|
|
21
15
|
codeBlockStyle: 'fenced', // Use ``` for code blocks
|
|
22
16
|
bulletListMarker: '-', // Use - for bullet lists
|
|
@@ -51,21 +45,21 @@ function createTurndownService() {
|
|
|
51
45
|
* @param url - Source URL (used for resolving relative links)
|
|
52
46
|
* @returns Markdown string of extracted content
|
|
53
47
|
*/
|
|
54
|
-
async function parseHtml(html, url) {
|
|
48
|
+
export async function parseHtml(html, url) {
|
|
55
49
|
// Handle empty or whitespace-only HTML
|
|
56
50
|
if (!html || html.trim().length === 0) {
|
|
57
51
|
return '';
|
|
58
52
|
}
|
|
59
53
|
try {
|
|
60
54
|
// Create DOM from HTML string
|
|
61
|
-
const dom = new
|
|
55
|
+
const dom = new JSDOM(html, {
|
|
62
56
|
url,
|
|
63
57
|
// Enable features needed for Readability
|
|
64
58
|
runScripts: 'outside-only',
|
|
65
59
|
});
|
|
66
60
|
const document = dom.window.document;
|
|
67
61
|
// Use Readability to extract main content
|
|
68
|
-
const reader = new
|
|
62
|
+
const reader = new Readability(document, {
|
|
69
63
|
keepClasses: false,
|
|
70
64
|
debug: false,
|
|
71
65
|
});
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"html-parser.js","sourceRoot":"","sources":["../../src/parser/html-parser.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/parser/index.ts"],"names":[],"mappings":"AA8FA,OAAO,EAAE,KAAK,iBAAiB,EAA8C,MAAM,iBAAiB,CAAA;AAGpG,OAAO,EAAE,wBAAwB,EAAE,qBAAqB,EAAE,MAAM,oBAAoB,CAAA;AAMpF;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,uCAAuC;IACvC,OAAO,EAAE,MAAM,CAAA;IACf,gCAAgC;IAChC,WAAW,EAAE,MAAM,CAAA;CACpB;AAMD;;;;;;;GAOG;AACH,qBAAa,cAAc;IACzB,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAc;gBAEzB,MAAM,EAAE,YAAY;IAIhC;;;;;OAKG;IACH,gBAAgB,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI;IAuCxC;;;;;;OAMG;IACH,gBAAgB,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI;IAgBxC;;;;;;;OAOG;IACG,SAAS,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAwBlD;;;;;;;;;;;;OAYG;IACG,QAAQ,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,iBAAiB,GAAG,OAAO,CAAC,MAAM,CAAC;IA4C9E;;;;;;OAMG;YACW,SAAS;IAUvB;;;;;;OAMG;YACW,QAAQ;IAUtB;;;;;;OAMG;YACW,OAAO;IAUrB;;;;;;;;;;;;OAYG;YACW,SAAS;IA8BvB;;;;;;OAMG;YACW,UAAU;IAUxB;;;;;;OAMG;IACH,OAAO,CAAC,iBAAiB;IAmBzB;;;;;;;;;;;;OAYG;IACH,OAAO,CAAC,mBAAmB;IAiB3B;;;;;;;;;;;;OAYG;IACH,OAAO,CAAC,UAAU;CA+CnB"}
|