@slashfi/agents-sdk 0.25.0 → 0.26.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/dist/bm25.d.ts ADDED
@@ -0,0 +1,46 @@
1
+ /**
2
+ * BM25 Search Implementation
3
+ *
4
+ * Okapi BM25 ranking function for full-text search over agent tools.
5
+ * Used by the search_agent_tools MCP tool to find relevant tools by query.
6
+ *
7
+ * @see https://en.wikipedia.org/wiki/Okapi_BM25
8
+ */
9
+ export interface BM25Options {
10
+ /** Term frequency saturation parameter (default: 1.2) */
11
+ k1?: number;
12
+ /** Length normalization parameter (default: 0.75) */
13
+ b?: number;
14
+ }
15
+ export interface BM25Document {
16
+ /** Unique document identifier */
17
+ id: string;
18
+ /** Text content to index and search */
19
+ text: string;
20
+ }
21
+ export interface BM25Result {
22
+ /** Document ID */
23
+ id: string;
24
+ /** BM25 relevance score */
25
+ score: number;
26
+ }
27
+ /**
28
+ * In-memory BM25 search index.
29
+ *
30
+ * Build an index from documents, then query it to get ranked results.
31
+ *
32
+ * @example
33
+ * ```typescript
34
+ * const index = createBM25Index([
35
+ * { id: "tool-1", text: "greet a user by name" },
36
+ * { id: "tool-2", text: "search database records" },
37
+ * ]);
38
+ *
39
+ * const results = index.search("greet");
40
+ * // [{ id: "tool-1", score: 0.83 }]
41
+ * ```
42
+ */
43
+ export declare function createBM25Index(documents: BM25Document[], options?: BM25Options): {
44
+ search: (query: string, limit?: number) => BM25Result[];
45
+ };
46
+ //# sourceMappingURL=bm25.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bm25.d.ts","sourceRoot":"","sources":["../src/bm25.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAMH,MAAM,WAAW,WAAW;IAC1B,yDAAyD;IACzD,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,qDAAqD;IACrD,CAAC,CAAC,EAAE,MAAM,CAAC;CACZ;AAED,MAAM,WAAW,YAAY;IAC3B,iCAAiC;IACjC,EAAE,EAAE,MAAM,CAAC;IACX,uCAAuC;IACvC,IAAI,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,UAAU;IACzB,kBAAkB;IAClB,EAAE,EAAE,MAAM,CAAC;IACX,2BAA2B;IAC3B,KAAK,EAAE,MAAM,CAAC;CACf;AAmBD;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,eAAe,CAC7B,SAAS,EAAE,YAAY,EAAE,EACzB,OAAO,GAAE,WAAgB;oBA6CF,MAAM,UAAU,MAAM,KAAG,UAAU,EAAE;EA+B7D"}
package/dist/bm25.js ADDED
@@ -0,0 +1,103 @@
1
+ /**
2
+ * BM25 Search Implementation
3
+ *
4
+ * Okapi BM25 ranking function for full-text search over agent tools.
5
+ * Used by the search_agent_tools MCP tool to find relevant tools by query.
6
+ *
7
+ * @see https://en.wikipedia.org/wiki/Okapi_BM25
8
+ */
9
+ // ============================================
10
+ // Tokenizer
11
+ // ============================================
12
+ /** Simple whitespace + punctuation tokenizer with lowercasing */
13
+ function tokenize(text) {
14
+ return text
15
+ .toLowerCase()
16
+ .replace(/[^a-z0-9_\-]/g, " ")
17
+ .split(/\s+/)
18
+ .filter((t) => t.length > 0);
19
+ }
20
+ // ============================================
21
+ // BM25 Index
22
+ // ============================================
23
+ /**
24
+ * In-memory BM25 search index.
25
+ *
26
+ * Build an index from documents, then query it to get ranked results.
27
+ *
28
+ * @example
29
+ * ```typescript
30
+ * const index = createBM25Index([
31
+ * { id: "tool-1", text: "greet a user by name" },
32
+ * { id: "tool-2", text: "search database records" },
33
+ * ]);
34
+ *
35
+ * const results = index.search("greet");
36
+ * // [{ id: "tool-1", score: 0.83 }]
37
+ * ```
38
+ */
39
+ export function createBM25Index(documents, options = {}) {
40
+ const { k1 = 1.2, b = 0.75 } = options;
41
+ // Tokenize all documents
42
+ const docTokens = documents.map((d) => tokenize(d.text));
43
+ const docCount = documents.length;
44
+ // Average document length
45
+ const avgDl = docCount > 0
46
+ ? docTokens.reduce((sum, tokens) => sum + tokens.length, 0) / docCount
47
+ : 0;
48
+ // Document frequency: how many documents contain each term
49
+ const df = new Map();
50
+ for (const tokens of docTokens) {
51
+ const seen = new Set(tokens);
52
+ for (const term of seen) {
53
+ df.set(term, (df.get(term) ?? 0) + 1);
54
+ }
55
+ }
56
+ // Term frequencies per document
57
+ const tfs = docTokens.map((tokens) => {
58
+ const freq = new Map();
59
+ for (const term of tokens) {
60
+ freq.set(term, (freq.get(term) ?? 0) + 1);
61
+ }
62
+ return freq;
63
+ });
64
+ /**
65
+ * Compute IDF for a term using the BM25 variant:
66
+ * ln((N - df + 0.5) / (df + 0.5) + 1)
67
+ */
68
+ function idf(term) {
69
+ const n = df.get(term) ?? 0;
70
+ return Math.log((docCount - n + 0.5) / (n + 0.5) + 1);
71
+ }
72
+ /**
73
+ * Search the index with a text query.
74
+ * Returns results sorted by descending BM25 score.
75
+ */
76
+ function search(query, limit) {
77
+ const queryTerms = tokenize(query);
78
+ if (queryTerms.length === 0)
79
+ return [];
80
+ const scores = [];
81
+ for (let i = 0; i < docCount; i++) {
82
+ const dl = docTokens[i].length;
83
+ const tf = tfs[i];
84
+ let score = 0;
85
+ for (const term of queryTerms) {
86
+ const termFreq = tf.get(term) ?? 0;
87
+ if (termFreq === 0)
88
+ continue;
89
+ const termIdf = idf(term);
90
+ const numerator = termFreq * (k1 + 1);
91
+ const denominator = termFreq + k1 * (1 - b + b * (dl / avgDl));
92
+ score += termIdf * (numerator / denominator);
93
+ }
94
+ if (score > 0) {
95
+ scores.push({ id: documents[i].id, score });
96
+ }
97
+ }
98
+ scores.sort((a, b) => b.score - a.score);
99
+ return limit != null ? scores.slice(0, limit) : scores;
100
+ }
101
+ return { search };
102
+ }
103
+ //# sourceMappingURL=bm25.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bm25.js","sourceRoot":"","sources":["../src/bm25.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AA2BH,+CAA+C;AAC/C,YAAY;AACZ,+CAA+C;AAE/C,iEAAiE;AACjE,SAAS,QAAQ,CAAC,IAAY;IAC5B,OAAO,IAAI;SACR,WAAW,EAAE;SACb,OAAO,CAAC,eAAe,EAAE,GAAG,CAAC;SAC7B,KAAK,CAAC,KAAK,CAAC;SACZ,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;AACjC,CAAC;AAED,+CAA+C;AAC/C,aAAa;AACb,+CAA+C;AAE/C;;;;;;;;;;;;;;;GAeG;AACH,MAAM,UAAU,eAAe,CAC7B,SAAyB,EACzB,UAAuB,EAAE;IAEzB,MAAM,EAAE,EAAE,GAAG,GAAG,EAAE,CAAC,GAAG,IAAI,EAAE,GAAG,OAAO,CAAC;IAEvC,yBAAyB;IACzB,MAAM,SAAS,GAAe,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;IACrE,MAAM,QAAQ,GAAG,SAAS,CAAC,MAAM,CAAC;IAElC,0BAA0B;IAC1B,MAAM,KAAK,GACT,QAAQ,GAAG,CAAC;QACV,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,MAAM,EAAE,EAAE,CAAC,GAAG,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,GAAG,QAAQ;QACtE,CAAC,CAAC,CAAC,CAAC;IAER,2DAA2D;IAC3D,MAAM,EAAE,GAAG,IAAI,GAAG,EAAkB,CAAC;IACrC,KAAK,MAAM,MAAM,IAAI,SAAS,EAAE,CAAC;QAC/B,MAAM,IAAI,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,CAAC;QAC7B,KAAK,MAAM,IAAI,IAAI,IAAI,EAAE,CAAC;YACxB,EAAE,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;QACxC,CAAC;IACH,CAAC;IAED,gCAAgC;IAChC,MAAM,GAAG,GAA0B,SAAS,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE;QAC1D,MAAM,IAAI,GAAG,IAAI,GAAG,EAAkB,CAAC;QACvC,KAAK,MAAM,IAAI,IAAI,MAAM,EAAE,CAAC;YAC1B,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;QAC5C,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC,CAAC,CAAC;IAEH;;;OAGG;IACH,SAAS,GAAG,CAAC,IAAY;QACvB,MAAM,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC5B,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,QAAQ,GAAG,CAAC,GAAG,GAAG,CAAC,GAAG,CAAC,CAAC,GAAG,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;IACxD,CAAC;IAED;;;OAGG;IACH,SAAS,MAAM,CAAC,KAAa,EAAE,KAAc;QAC3C,MAAM,UAAU,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;QACnC,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,EAAE,CAAC;QAEvC,MAAM,MAAM,GAAiB,EAAE,CAAC;QAEhC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,QAAQ,EAAE,CAAC,EAAE,EAAE,CAAC;YAClC,MAAM,EAAE,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;YAC/B,MAAM,EAAE,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC;YAClB,IAAI,KAAK,GAAG,CAAC,CAAC;YAEd,KAAK,MAAM,IAAI,IAAI,UAAU,EAAE,CAAC;gBAC9B,MAAM,QAAQ,GAAG,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBACnC,IAAI,QAAQ,KAAK,CAAC;oBAAE,SAAS;gBAE7B,MAAM,OAAO,GAAG,GAAG,CAAC,IAAI,CAAC,CAAC;gBAC1B,MAAM,SAAS,GAAG,QAAQ,GAAG,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC;gBACtC,MAAM,WAAW,GAAG,QAAQ,GAAG,EAAE,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,GAAG,KAAK,CAAC,CAAC,CAAC;gBAC/D,KAAK,IAAI,OAAO,GAAG,CAAC,SAAS,GAAG,WAAW,CAAC,CAAC;YAC/C,CAAC;YAED,IAAI,KAAK,GAAG,CAAC,EAAE,CAAC;gBACd,MAAM,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;YAC9C,CAAC;QACH,CAAC;QAED,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC;QACzC,OAAO,KAAK,IAAI,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;IACzD,CAAC;IAED,OAAO,EAAE,MAAM,EAAE,CAAC;AACpB,CAAC"}
@@ -0,0 +1,106 @@
1
+ "use strict";
2
+ /**
3
+ * BM25 Search Implementation
4
+ *
5
+ * Okapi BM25 ranking function for full-text search over agent tools.
6
+ * Used by the search_agent_tools MCP tool to find relevant tools by query.
7
+ *
8
+ * @see https://en.wikipedia.org/wiki/Okapi_BM25
9
+ */
10
+ Object.defineProperty(exports, "__esModule", { value: true });
11
+ exports.createBM25Index = createBM25Index;
12
+ // ============================================
13
+ // Tokenizer
14
+ // ============================================
15
+ /** Simple whitespace + punctuation tokenizer with lowercasing */
16
+ function tokenize(text) {
17
+ return text
18
+ .toLowerCase()
19
+ .replace(/[^a-z0-9_\-]/g, " ")
20
+ .split(/\s+/)
21
+ .filter((t) => t.length > 0);
22
+ }
23
+ // ============================================
24
+ // BM25 Index
25
+ // ============================================
26
+ /**
27
+ * In-memory BM25 search index.
28
+ *
29
+ * Build an index from documents, then query it to get ranked results.
30
+ *
31
+ * @example
32
+ * ```typescript
33
+ * const index = createBM25Index([
34
+ * { id: "tool-1", text: "greet a user by name" },
35
+ * { id: "tool-2", text: "search database records" },
36
+ * ]);
37
+ *
38
+ * const results = index.search("greet");
39
+ * // [{ id: "tool-1", score: 0.83 }]
40
+ * ```
41
+ */
42
+ function createBM25Index(documents, options = {}) {
43
+ const { k1 = 1.2, b = 0.75 } = options;
44
+ // Tokenize all documents
45
+ const docTokens = documents.map((d) => tokenize(d.text));
46
+ const docCount = documents.length;
47
+ // Average document length
48
+ const avgDl = docCount > 0
49
+ ? docTokens.reduce((sum, tokens) => sum + tokens.length, 0) / docCount
50
+ : 0;
51
+ // Document frequency: how many documents contain each term
52
+ const df = new Map();
53
+ for (const tokens of docTokens) {
54
+ const seen = new Set(tokens);
55
+ for (const term of seen) {
56
+ df.set(term, (df.get(term) ?? 0) + 1);
57
+ }
58
+ }
59
+ // Term frequencies per document
60
+ const tfs = docTokens.map((tokens) => {
61
+ const freq = new Map();
62
+ for (const term of tokens) {
63
+ freq.set(term, (freq.get(term) ?? 0) + 1);
64
+ }
65
+ return freq;
66
+ });
67
+ /**
68
+ * Compute IDF for a term using the BM25 variant:
69
+ * ln((N - df + 0.5) / (df + 0.5) + 1)
70
+ */
71
+ function idf(term) {
72
+ const n = df.get(term) ?? 0;
73
+ return Math.log((docCount - n + 0.5) / (n + 0.5) + 1);
74
+ }
75
+ /**
76
+ * Search the index with a text query.
77
+ * Returns results sorted by descending BM25 score.
78
+ */
79
+ function search(query, limit) {
80
+ const queryTerms = tokenize(query);
81
+ if (queryTerms.length === 0)
82
+ return [];
83
+ const scores = [];
84
+ for (let i = 0; i < docCount; i++) {
85
+ const dl = docTokens[i].length;
86
+ const tf = tfs[i];
87
+ let score = 0;
88
+ for (const term of queryTerms) {
89
+ const termFreq = tf.get(term) ?? 0;
90
+ if (termFreq === 0)
91
+ continue;
92
+ const termIdf = idf(term);
93
+ const numerator = termFreq * (k1 + 1);
94
+ const denominator = termFreq + k1 * (1 - b + b * (dl / avgDl));
95
+ score += termIdf * (numerator / denominator);
96
+ }
97
+ if (score > 0) {
98
+ scores.push({ id: documents[i].id, score });
99
+ }
100
+ }
101
+ scores.sort((a, b) => b.score - a.score);
102
+ return limit != null ? scores.slice(0, limit) : scores;
103
+ }
104
+ return { search };
105
+ }
106
+ //# sourceMappingURL=bm25.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bm25.js","sourceRoot":"","sources":["../../src/bm25.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"events.js","sourceRoot":"","sources":["../../src/events.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;GAUG;;AAwKH,wCA0DC;AA7DD;;GAEG;AACH,SAAgB,cAAc;IAC5B,MAAM,SAAS,GAAoB,EAAE,CAAC;IAEtC,SAAS,EAAE,CACT,SAAY,EACZ,QAA0B;QAE1B,SAAS,CAAC,IAAI,CAAC;YACb,SAAS;YACT,QAAQ,EAAE,QAAoC;SAC/C,CAAC,CAAC;IACL,CAAC;IAED,SAAS,SAAS,CAChB,SAAY,EACZ,QAA0B,EAC1B,KAAgD;QAEhD,SAAS,CAAC,IAAI,CAAC;YACb,SAAS;YACT,QAAQ,EAAE,QAAoC;YAC9C,UAAU,EAAE,KAAK,CAAC,SAAS;YAC3B,SAAS,EAAE,KAAK,CAAC,QAAQ;SAC1B,CAAC,CAAC;IACL,CAAC;IAED,KAAK,UAAU,IAAI,CAAC,KAAiB;QACnC,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE,CAAC;YACjC,mBAAmB;YACnB,IAAI,QAAQ,CAAC,SAAS,KAAK,KAAK,CAAC,IAAI;gBAAE,SAAS;YAEhD,oBAAoB;YACpB,IAAI,QAAQ,CAAC,UAAU,IAAI,QAAQ,CAAC,UAAU,KAAK,KAAK,CAAC,SAAS,EAAE,CAAC;gBACnE,SAAS;YACX,CAAC;YAED,4CAA4C;YAC5C,IACE,QAAQ,CAAC,SAAS;gBAClB,MAAM,IAAI,KAAK;gBACf,QAAQ,CAAC,SAAS,KAAK,KAAK,CAAC,IAAI,EACjC,CAAC;gBACD,SAAS;YACX,CAAC;YAED,IAAI,CAAC;gBACH,MAAM,QAAQ,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;YACjC,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,qDAAqD;gBACrD,OAAO,CAAC,KAAK,CACX,yCAAyC,KAAK,CAAC,IAAI,GAAG,EACtD,GAAG,CACJ,CAAC;YACJ,CAAC;QACH,CAAC;IACH,CAAC;IAED,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;AACjC,CAAC"}
1
+ {"version":3,"file":"events.js","sourceRoot":"","sources":["../../src/events.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;GAUG;;AAqNH,wCA4DC;AA/DD;;GAEG;AACH,SAAgB,cAAc;IAC5B,MAAM,SAAS,GAAoB,EAAE,CAAC;IAEtC,SAAS,EAAE,CACT,SAAY,EACZ,QAA0B;QAE1B,SAAS,CAAC,IAAI,CAAC;YACb,SAAS;YACT,QAAQ,EAAE,QAAoC;SAC/C,CAAC,CAAC;IACL,CAAC;IAED,SAAS,SAAS,CAChB,SAAY,EACZ,QAA0B,EAC1B,KAAgD;QAEhD,SAAS,CAAC,IAAI,CAAC;YACb,SAAS;YACT,QAAQ,EAAE,QAAoC;YAC9C,UAAU,EAAE,KAAK,CAAC,SAAS;YAC3B,SAAS,EAAE,KAAK,CAAC,QAAQ;SAC1B,CAAC,CAAC;IACL,CAAC;IAED,KAAK,UAAU,IAAI,CACjB,KAAkD;QAElD,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE,CAAC;YACjC,mBAAmB;YACnB,IAAI,QAAQ,CAAC,SAAS,KAAK,KAAK,CAAC,IAAI;gBAAE,SAAS;YAEhD,oBAAoB;YACpB,IAAI,QAAQ,CAAC,UAAU,IAAI,QAAQ,CAAC,UAAU,KAAK,KAAK,CAAC,SAAS,EAAE,CAAC;gBACnE,SAAS;YACX,CAAC;YAED,4CAA4C;YAC5C,IACE,QAAQ,CAAC,SAAS;gBAClB,MAAM,IAAI,KAAK;gBACf,QAAQ,CAAC,SAAS,KAAK,KAAK,CAAC,IAAI,EACjC,CAAC;gBACD,SAAS;YACX,CAAC;YAED,IAAI,CAAC;gBACH,MAAM,QAAQ,CAAC,QAAQ,CAAC,KAAc,CAAC,CAAC;YAC1C,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,qDAAqD;gBACrD,OAAO,CAAC,KAAK,CACX,yCAAyC,KAAK,CAAC,IAAI,GAAG,EACtD,GAAG,CACJ,CAAC;YACJ,CAAC;QACH,CAAC;IACH,CAAC;IAED,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;AACjC,CAAC"}
package/dist/cjs/index.js CHANGED
@@ -64,7 +64,7 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
64
64
  };
65
65
  Object.defineProperty(exports, "__esModule", { value: true });
66
66
  exports.serializeAgent = exports.listAgentTools = exports.useAgent = exports.codegen = exports.createRegistryConsumer = exports.isSecretUri = exports.isSecretUrl = exports.normalizeRegistry = exports.normalizeRef = exports.createKeyManager = exports.createInMemoryUserStore = exports.createUsersAgent = exports.createRemoteRegistryAgent = exports.getDefaultRefreshBodyParams = exports.getDefaultTokenBodyParams = exports.refreshAccessToken = exports.exchangeCodeForToken = exports.createInMemoryIntegrationStore = exports.createIntegrationsAgent = exports.buildJwks = exports.importSigningKey = exports.exportSigningKey = exports.generateSigningKey = exports.verifyJwtFromIssuer = exports.verifyJwtLocal = exports.signJwtES256 = exports.verifyJwt = exports.signJwt = exports.decryptSecret = exports.encryptSecret = exports.processSecretParams = exports.isSecretRef = exports.createInMemorySecretStore = exports.createSecretsAgent = exports.buildAgents = exports.createMemoryAuthStore = exports.createAuthAgent = exports.cleanupExpiredCollections = exports.generateCollectionToken = exports.pendingCollections = exports.createOIDCSignIn = exports.canSeeAgent = exports.resolveAuth = exports.detectAuth = exports.createAgentServer = exports.createEventBus = exports.agentFromSerialized = exports.createAgentRegistry = exports.defineTool = exports.defineAgent = void 0;
67
- exports.assertValidDefinition = exports.validateDefinition = exports.SerializedToolSchema = exports.SerializedAgentDefinitionSchema = exports.CALL_AGENT_ACTIONS = exports.callAgentInputSchema = exports.introspectMcp = exports.publish = exports.pack = exports.readJsoncFile = exports.parseJsonc = exports.createClient = exports.serializeTool = void 0;
67
+ exports.createBM25Index = exports.assertValidDefinition = exports.validateDefinition = exports.SerializedToolSchema = exports.SerializedAgentDefinitionSchema = exports.CALL_AGENT_ACTIONS = exports.callAgentInputSchema = exports.introspectMcp = exports.publish = exports.pack = exports.readJsoncFile = exports.parseJsonc = exports.createClient = exports.serializeTool = void 0;
68
68
  // Define functions
69
69
  var define_js_1 = require("./define.js");
70
70
  Object.defineProperty(exports, "defineAgent", { enumerable: true, get: function () { return define_js_1.defineAgent; } });
@@ -192,4 +192,9 @@ Object.defineProperty(exports, "SerializedAgentDefinitionSchema", { enumerable:
192
192
  Object.defineProperty(exports, "SerializedToolSchema", { enumerable: true, get: function () { return validate_js_1.SerializedToolSchema; } });
193
193
  Object.defineProperty(exports, "validateDefinition", { enumerable: true, get: function () { return validate_js_1.validateDefinition; } });
194
194
  Object.defineProperty(exports, "assertValidDefinition", { enumerable: true, get: function () { return validate_js_1.assertValidDefinition; } });
195
+ // ============================================
196
+ // BM25 Search
197
+ // ============================================
198
+ var bm25_js_1 = require("./bm25.js");
199
+ Object.defineProperty(exports, "createBM25Index", { enumerable: true, get: function () { return bm25_js_1.createBM25Index; } });
195
200
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}