@crewx/knowledge-core 0.1.4 → 0.1.6
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/src/docs-config.d.ts +12 -0
- package/dist/src/docs-config.d.ts.map +1 -0
- package/dist/src/docs-config.js +86 -0
- package/dist/src/docs-config.js.map +1 -0
- package/dist/src/index.d.ts +4 -0
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/index.js +11 -1
- package/dist/src/index.js.map +1 -1
- package/dist/src/search-config.d.ts +10 -0
- package/dist/src/search-config.d.ts.map +1 -0
- package/dist/src/search-config.js +45 -0
- package/dist/src/search-config.js.map +1 -0
- package/dist/src/search.d.ts.map +1 -1
- package/dist/src/search.js +2 -0
- package/dist/src/search.js.map +1 -1
- package/package.json +7 -7
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
export declare const DEFAULT_DOC_ROOTS: string[];
|
|
2
|
+
export declare const DEFAULT_ROOT_FILES: string[];
|
|
3
|
+
export declare const DEFAULT_EXCLUDE: string[];
|
|
4
|
+
export interface DocsConfig {
|
|
5
|
+
roots: string[];
|
|
6
|
+
rootFiles: string[];
|
|
7
|
+
exclude: Set<string>;
|
|
8
|
+
}
|
|
9
|
+
export declare function loadDocsConfig(projectRoot: string): DocsConfig;
|
|
10
|
+
export declare function resolveProjectRoot(startDir?: string): string;
|
|
11
|
+
export declare function buildIgnorePatterns(exclude: Set<string>): string[];
|
|
12
|
+
//# sourceMappingURL=docs-config.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"docs-config.d.ts","sourceRoot":"","sources":["../../src/docs-config.ts"],"names":[],"mappings":"AAUA,eAAO,MAAM,iBAAiB,UAA+B,CAAC;AAC9D,eAAO,MAAM,kBAAkB,UAA0C,CAAC;AAC1E,eAAO,MAAM,eAAe,UAS3B,CAAC;AAIF,MAAM,WAAW,UAAU;IACzB,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,OAAO,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;CACtB;AAKD,wBAAgB,cAAc,CAAC,WAAW,EAAE,MAAM,GAAG,UAAU,CAiD9D;AAQD,wBAAgB,kBAAkB,CAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,MAAM,CAuB5D;AAKD,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,GAAG,CAAC,MAAM,CAAC,GAAG,MAAM,EAAE,CAElE"}
|
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.DEFAULT_EXCLUDE = exports.DEFAULT_ROOT_FILES = exports.DEFAULT_DOC_ROOTS = void 0;
|
|
4
|
+
exports.loadDocsConfig = loadDocsConfig;
|
|
5
|
+
exports.resolveProjectRoot = resolveProjectRoot;
|
|
6
|
+
exports.buildIgnorePatterns = buildIgnorePatterns;
|
|
7
|
+
const fs_1 = require("fs");
|
|
8
|
+
const path_1 = require("path");
|
|
9
|
+
exports.DEFAULT_DOC_ROOTS = ['docs', 'skills', 'memory'];
|
|
10
|
+
exports.DEFAULT_ROOT_FILES = ['AGENTS.md', 'README.md', 'CLAUDE.md'];
|
|
11
|
+
exports.DEFAULT_EXCLUDE = [
|
|
12
|
+
'node_modules',
|
|
13
|
+
'dist',
|
|
14
|
+
'.git',
|
|
15
|
+
'.claude',
|
|
16
|
+
'.next',
|
|
17
|
+
'coverage',
|
|
18
|
+
'worktree',
|
|
19
|
+
'worktrees',
|
|
20
|
+
];
|
|
21
|
+
function loadDocsConfig(projectRoot) {
|
|
22
|
+
const defaults = {
|
|
23
|
+
roots: [...exports.DEFAULT_DOC_ROOTS],
|
|
24
|
+
rootFiles: [...exports.DEFAULT_ROOT_FILES],
|
|
25
|
+
exclude: new Set(exports.DEFAULT_EXCLUDE),
|
|
26
|
+
};
|
|
27
|
+
try {
|
|
28
|
+
const yamlPath = (0, path_1.join)(projectRoot, 'crewx.yaml');
|
|
29
|
+
if (!(0, fs_1.existsSync)(yamlPath))
|
|
30
|
+
return defaults;
|
|
31
|
+
const raw = (0, fs_1.readFileSync)(yamlPath, 'utf-8');
|
|
32
|
+
let parsed = null;
|
|
33
|
+
try {
|
|
34
|
+
const { load } = require('js-yaml');
|
|
35
|
+
parsed = load(raw);
|
|
36
|
+
}
|
|
37
|
+
catch {
|
|
38
|
+
return defaults;
|
|
39
|
+
}
|
|
40
|
+
const settings = parsed?.settings ?? {};
|
|
41
|
+
const docs = settings.docs ?? {};
|
|
42
|
+
const extraRoots = docs.extra_roots;
|
|
43
|
+
if (Array.isArray(extraRoots)) {
|
|
44
|
+
const extras = extraRoots.filter((v) => typeof v === 'string' && !v.includes('..') && !v.startsWith('/'));
|
|
45
|
+
defaults.roots = [...exports.DEFAULT_DOC_ROOTS, ...extras];
|
|
46
|
+
}
|
|
47
|
+
const rootFiles = docs.root_files;
|
|
48
|
+
if (Array.isArray(rootFiles)) {
|
|
49
|
+
defaults.rootFiles = rootFiles.filter((v) => typeof v === 'string');
|
|
50
|
+
}
|
|
51
|
+
const exclude = docs.exclude;
|
|
52
|
+
if (Array.isArray(exclude)) {
|
|
53
|
+
defaults.exclude = new Set(exclude.filter((v) => typeof v === 'string'));
|
|
54
|
+
}
|
|
55
|
+
return defaults;
|
|
56
|
+
}
|
|
57
|
+
catch {
|
|
58
|
+
return defaults;
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
function resolveProjectRoot(startDir) {
|
|
62
|
+
let dir = (0, path_1.resolve)(startDir ?? process.cwd());
|
|
63
|
+
const root = (0, path_1.resolve)('/');
|
|
64
|
+
while (dir !== root) {
|
|
65
|
+
if ((0, fs_1.existsSync)((0, path_1.join)(dir, 'crewx.yaml')))
|
|
66
|
+
return dir;
|
|
67
|
+
const parent = (0, path_1.dirname)(dir);
|
|
68
|
+
if (parent === dir)
|
|
69
|
+
break;
|
|
70
|
+
dir = parent;
|
|
71
|
+
}
|
|
72
|
+
dir = (0, path_1.resolve)(startDir ?? process.cwd());
|
|
73
|
+
while (dir !== root) {
|
|
74
|
+
if ((0, fs_1.existsSync)((0, path_1.join)(dir, 'package.json')) && (0, fs_1.existsSync)((0, path_1.join)(dir, '.git')))
|
|
75
|
+
return dir;
|
|
76
|
+
const parent = (0, path_1.dirname)(dir);
|
|
77
|
+
if (parent === dir)
|
|
78
|
+
break;
|
|
79
|
+
dir = parent;
|
|
80
|
+
}
|
|
81
|
+
return process.cwd();
|
|
82
|
+
}
|
|
83
|
+
function buildIgnorePatterns(exclude) {
|
|
84
|
+
return Array.from(exclude).map((name) => `**/${name}/**`);
|
|
85
|
+
}
|
|
86
|
+
//# sourceMappingURL=docs-config.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"docs-config.js","sourceRoot":"","sources":["../../src/docs-config.ts"],"names":[],"mappings":"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"}
|
package/dist/src/index.d.ts
CHANGED
|
@@ -4,4 +4,8 @@ export { buildGraph } from './graph';
|
|
|
4
4
|
export type { KnowledgeEntry, ScoredEntry, GraphNode, GraphEdge, Graph, ParsedFrontmatter, BuildGraphOptions, } from './types';
|
|
5
5
|
export { COMMANDS, RELATIONS, generateNextActions, bindTemplate, resolvePattern, formatActions, } from './hateoas';
|
|
6
6
|
export type { CommandDescriptor, CommandRelation, ActionContext, NextAction, RelationType, } from './hateoas';
|
|
7
|
+
export { DEFAULT_SEARCH_CONFIG, loadSearchConfig, } from './search-config';
|
|
8
|
+
export type { SearchConfig, SearchCacheConfig } from './search-config';
|
|
9
|
+
export { DEFAULT_DOC_ROOTS, DEFAULT_ROOT_FILES, DEFAULT_EXCLUDE, loadDocsConfig, resolveProjectRoot, buildIgnorePatterns, } from './docs-config';
|
|
10
|
+
export type { DocsConfig } from './docs-config';
|
|
7
11
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/src/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,gBAAgB,EAAE,oBAAoB,EAAE,MAAM,UAAU,CAAC;AAClE,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AACrC,YAAY,EACV,cAAc,EACd,WAAW,EACX,SAAS,EACT,SAAS,EACT,KAAK,EACL,iBAAiB,EACjB,iBAAiB,GAClB,MAAM,SAAS,CAAC;AAEjB,OAAO,EACL,QAAQ,EACR,SAAS,EACT,mBAAmB,EACnB,YAAY,EACZ,cAAc,EACd,aAAa,GACd,MAAM,WAAW,CAAC;AACnB,YAAY,EACV,iBAAiB,EACjB,eAAe,EACf,aAAa,EACb,UAAU,EACV,YAAY,GACb,MAAM,WAAW,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,gBAAgB,EAAE,oBAAoB,EAAE,MAAM,UAAU,CAAC;AAClE,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AACrC,YAAY,EACV,cAAc,EACd,WAAW,EACX,SAAS,EACT,SAAS,EACT,KAAK,EACL,iBAAiB,EACjB,iBAAiB,GAClB,MAAM,SAAS,CAAC;AAEjB,OAAO,EACL,QAAQ,EACR,SAAS,EACT,mBAAmB,EACnB,YAAY,EACZ,cAAc,EACd,aAAa,GACd,MAAM,WAAW,CAAC;AACnB,YAAY,EACV,iBAAiB,EACjB,eAAe,EACf,aAAa,EACb,UAAU,EACV,YAAY,GACb,MAAM,WAAW,CAAC;AAGnB,OAAO,EACL,qBAAqB,EACrB,gBAAgB,GACjB,MAAM,iBAAiB,CAAC;AACzB,YAAY,EAAE,YAAY,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AAGvE,OAAO,EACL,iBAAiB,EACjB,kBAAkB,EAClB,eAAe,EACf,cAAc,EACd,kBAAkB,EAClB,mBAAmB,GACpB,MAAM,eAAe,CAAC;AACvB,YAAY,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC"}
|
package/dist/src/index.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.formatActions = exports.resolvePattern = exports.bindTemplate = exports.generateNextActions = exports.RELATIONS = exports.COMMANDS = exports.buildGraph = exports.searchEntries = exports.stringifyFrontmatter = exports.parseFrontmatter = void 0;
|
|
3
|
+
exports.buildIgnorePatterns = exports.resolveProjectRoot = exports.loadDocsConfig = exports.DEFAULT_EXCLUDE = exports.DEFAULT_ROOT_FILES = exports.DEFAULT_DOC_ROOTS = exports.loadSearchConfig = exports.DEFAULT_SEARCH_CONFIG = exports.formatActions = exports.resolvePattern = exports.bindTemplate = exports.generateNextActions = exports.RELATIONS = exports.COMMANDS = exports.buildGraph = exports.searchEntries = exports.stringifyFrontmatter = exports.parseFrontmatter = void 0;
|
|
4
4
|
var parser_1 = require("./parser");
|
|
5
5
|
Object.defineProperty(exports, "parseFrontmatter", { enumerable: true, get: function () { return parser_1.parseFrontmatter; } });
|
|
6
6
|
Object.defineProperty(exports, "stringifyFrontmatter", { enumerable: true, get: function () { return parser_1.stringifyFrontmatter; } });
|
|
@@ -15,4 +15,14 @@ Object.defineProperty(exports, "generateNextActions", { enumerable: true, get: f
|
|
|
15
15
|
Object.defineProperty(exports, "bindTemplate", { enumerable: true, get: function () { return hateoas_1.bindTemplate; } });
|
|
16
16
|
Object.defineProperty(exports, "resolvePattern", { enumerable: true, get: function () { return hateoas_1.resolvePattern; } });
|
|
17
17
|
Object.defineProperty(exports, "formatActions", { enumerable: true, get: function () { return hateoas_1.formatActions; } });
|
|
18
|
+
var search_config_1 = require("./search-config");
|
|
19
|
+
Object.defineProperty(exports, "DEFAULT_SEARCH_CONFIG", { enumerable: true, get: function () { return search_config_1.DEFAULT_SEARCH_CONFIG; } });
|
|
20
|
+
Object.defineProperty(exports, "loadSearchConfig", { enumerable: true, get: function () { return search_config_1.loadSearchConfig; } });
|
|
21
|
+
var docs_config_1 = require("./docs-config");
|
|
22
|
+
Object.defineProperty(exports, "DEFAULT_DOC_ROOTS", { enumerable: true, get: function () { return docs_config_1.DEFAULT_DOC_ROOTS; } });
|
|
23
|
+
Object.defineProperty(exports, "DEFAULT_ROOT_FILES", { enumerable: true, get: function () { return docs_config_1.DEFAULT_ROOT_FILES; } });
|
|
24
|
+
Object.defineProperty(exports, "DEFAULT_EXCLUDE", { enumerable: true, get: function () { return docs_config_1.DEFAULT_EXCLUDE; } });
|
|
25
|
+
Object.defineProperty(exports, "loadDocsConfig", { enumerable: true, get: function () { return docs_config_1.loadDocsConfig; } });
|
|
26
|
+
Object.defineProperty(exports, "resolveProjectRoot", { enumerable: true, get: function () { return docs_config_1.resolveProjectRoot; } });
|
|
27
|
+
Object.defineProperty(exports, "buildIgnorePatterns", { enumerable: true, get: function () { return docs_config_1.buildIgnorePatterns; } });
|
|
18
28
|
//# sourceMappingURL=index.js.map
|
package/dist/src/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;AAIA,mCAAkE;AAAzD,0GAAA,gBAAgB,OAAA;AAAE,8GAAA,oBAAoB,OAAA;AAC/C,mCAAyC;AAAhC,uGAAA,aAAa,OAAA;AACtB,iCAAqC;AAA5B,mGAAA,UAAU,OAAA;AAWnB,qCAOmB;AANjB,mGAAA,QAAQ,OAAA;AACR,oGAAA,SAAS,OAAA;AACT,8GAAA,mBAAmB,OAAA;AACnB,uGAAA,YAAY,OAAA;AACZ,yGAAA,cAAc,OAAA;AACd,wGAAA,aAAa,OAAA"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;AAIA,mCAAkE;AAAzD,0GAAA,gBAAgB,OAAA;AAAE,8GAAA,oBAAoB,OAAA;AAC/C,mCAAyC;AAAhC,uGAAA,aAAa,OAAA;AACtB,iCAAqC;AAA5B,mGAAA,UAAU,OAAA;AAWnB,qCAOmB;AANjB,mGAAA,QAAQ,OAAA;AACR,oGAAA,SAAS,OAAA;AACT,8GAAA,mBAAmB,OAAA;AACnB,uGAAA,YAAY,OAAA;AACZ,yGAAA,cAAc,OAAA;AACd,wGAAA,aAAa,OAAA;AAWf,iDAGyB;AAFvB,sHAAA,qBAAqB,OAAA;AACrB,iHAAA,gBAAgB,OAAA;AAKlB,6CAOuB;AANrB,gHAAA,iBAAiB,OAAA;AACjB,iHAAA,kBAAkB,OAAA;AAClB,8GAAA,eAAe,OAAA;AACf,6GAAA,cAAc,OAAA;AACd,iHAAA,kBAAkB,OAAA;AAClB,kHAAA,mBAAmB,OAAA"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
export interface SearchCacheConfig {
|
|
2
|
+
ttl: number;
|
|
3
|
+
max: number;
|
|
4
|
+
}
|
|
5
|
+
export interface SearchConfig {
|
|
6
|
+
cache: SearchCacheConfig;
|
|
7
|
+
}
|
|
8
|
+
export declare const DEFAULT_SEARCH_CONFIG: SearchConfig;
|
|
9
|
+
export declare function loadSearchConfig(projectRoot: string): SearchConfig;
|
|
10
|
+
//# sourceMappingURL=search-config.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"search-config.d.ts","sourceRoot":"","sources":["../../src/search-config.ts"],"names":[],"mappings":"AAUA,MAAM,WAAW,iBAAiB;IAEhC,GAAG,EAAE,MAAM,CAAC;IAEZ,GAAG,EAAE,MAAM,CAAC;CACb;AAED,MAAM,WAAW,YAAY;IAC3B,KAAK,EAAE,iBAAiB,CAAC;CAC1B;AAID,eAAO,MAAM,qBAAqB,EAAE,YAKnC,CAAC;AAKF,wBAAgB,gBAAgB,CAAC,WAAW,EAAE,MAAM,GAAG,YAAY,CAoClE"}
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.DEFAULT_SEARCH_CONFIG = void 0;
|
|
4
|
+
exports.loadSearchConfig = loadSearchConfig;
|
|
5
|
+
const fs_1 = require("fs");
|
|
6
|
+
const path_1 = require("path");
|
|
7
|
+
exports.DEFAULT_SEARCH_CONFIG = {
|
|
8
|
+
cache: {
|
|
9
|
+
ttl: 300,
|
|
10
|
+
max: 100,
|
|
11
|
+
},
|
|
12
|
+
};
|
|
13
|
+
function loadSearchConfig(projectRoot) {
|
|
14
|
+
const defaults = {
|
|
15
|
+
cache: { ...exports.DEFAULT_SEARCH_CONFIG.cache },
|
|
16
|
+
};
|
|
17
|
+
try {
|
|
18
|
+
const yamlPath = (0, path_1.join)(projectRoot, 'crewx.yaml');
|
|
19
|
+
if (!(0, fs_1.existsSync)(yamlPath))
|
|
20
|
+
return defaults;
|
|
21
|
+
const raw = (0, fs_1.readFileSync)(yamlPath, 'utf-8');
|
|
22
|
+
let parsed = null;
|
|
23
|
+
try {
|
|
24
|
+
const { load } = require('js-yaml');
|
|
25
|
+
parsed = load(raw);
|
|
26
|
+
}
|
|
27
|
+
catch {
|
|
28
|
+
return defaults;
|
|
29
|
+
}
|
|
30
|
+
const settings = parsed?.settings ?? {};
|
|
31
|
+
const search = settings.search ?? {};
|
|
32
|
+
const cache = search.cache ?? {};
|
|
33
|
+
if (typeof cache.ttl === 'number') {
|
|
34
|
+
defaults.cache.ttl = cache.ttl;
|
|
35
|
+
}
|
|
36
|
+
if (typeof cache.max === 'number') {
|
|
37
|
+
defaults.cache.max = cache.max;
|
|
38
|
+
}
|
|
39
|
+
return defaults;
|
|
40
|
+
}
|
|
41
|
+
catch {
|
|
42
|
+
return defaults;
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
//# sourceMappingURL=search-config.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"search-config.js","sourceRoot":"","sources":["../../src/search-config.ts"],"names":[],"mappings":";;;AAiCA,4CAoCC;AAhED,2BAA8C;AAC9C,+BAA4B;AAiBf,QAAA,qBAAqB,GAAiB;IACjD,KAAK,EAAE;QACL,GAAG,EAAE,GAAG;QACR,GAAG,EAAE,GAAG;KACT;CACF,CAAC;AAKF,SAAgB,gBAAgB,CAAC,WAAmB;IAClD,MAAM,QAAQ,GAAiB;QAC7B,KAAK,EAAE,EAAE,GAAG,6BAAqB,CAAC,KAAK,EAAE;KAC1C,CAAC;IAEF,IAAI,CAAC;QACH,MAAM,QAAQ,GAAG,IAAA,WAAI,EAAC,WAAW,EAAE,YAAY,CAAC,CAAC;QACjD,IAAI,CAAC,IAAA,eAAU,EAAC,QAAQ,CAAC;YAAE,OAAO,QAAQ,CAAC;QAE3C,MAAM,GAAG,GAAG,IAAA,iBAAY,EAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;QAE5C,IAAI,MAAM,GAAmC,IAAI,CAAC;QAClD,IAAI,CAAC;YAEH,MAAM,EAAE,IAAI,EAAE,GAAG,OAAO,CAAC,SAAS,CAAqC,CAAC;YACxE,MAAM,GAAG,IAAI,CAAC,GAAG,CAAmC,CAAC;QACvD,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,QAAQ,CAAC;QAClB,CAAC;QAED,MAAM,QAAQ,GAAI,MAAM,EAAE,QAAoC,IAAI,EAAE,CAAC;QACrE,MAAM,MAAM,GAAI,QAAQ,CAAC,MAAkC,IAAI,EAAE,CAAC;QAClE,MAAM,KAAK,GAAI,MAAM,CAAC,KAAiC,IAAI,EAAE,CAAC;QAG9D,IAAI,OAAO,KAAK,CAAC,GAAG,KAAK,QAAQ,EAAE,CAAC;YAClC,QAAQ,CAAC,KAAK,CAAC,GAAG,GAAG,KAAK,CAAC,GAAG,CAAC;QACjC,CAAC;QACD,IAAI,OAAO,KAAK,CAAC,GAAG,KAAK,QAAQ,EAAE,CAAC;YAClC,QAAQ,CAAC,KAAK,CAAC,GAAG,GAAG,KAAK,CAAC,GAAG,CAAC;QACjC,CAAC;QAED,OAAO,QAAQ,CAAC;IAClB,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,QAAQ,CAAC;IAClB,CAAC;AACH,CAAC"}
|
package/dist/src/search.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"search.d.ts","sourceRoot":"","sources":["../../src/search.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,cAAc,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"search.d.ts","sourceRoot":"","sources":["../../src/search.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,cAAc,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAuF3D,wBAAgB,aAAa,CAC3B,OAAO,EAAE,cAAc,EAAE,EACzB,KAAK,EAAE,MAAM,EACb,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GACpC,WAAW,EAAE,CAcf"}
|
package/dist/src/search.js
CHANGED
|
@@ -11,9 +11,11 @@ function hasKorean(text) {
|
|
|
11
11
|
function bm25Search(entries, query, fieldWeights) {
|
|
12
12
|
const engine = bm25Lib();
|
|
13
13
|
engine.defineConfig({ fldWeights: fieldWeights });
|
|
14
|
+
const splitUnderscores = (tokens) => tokens.flatMap((t) => t.split('_')).filter(Boolean);
|
|
14
15
|
engine.definePrepTasks([
|
|
15
16
|
nlp['string']['lowerCase'],
|
|
16
17
|
nlp['string']['tokenize0'],
|
|
18
|
+
splitUnderscores,
|
|
17
19
|
nlp['tokens']['removeWords'],
|
|
18
20
|
nlp['tokens']['stem'],
|
|
19
21
|
]);
|
package/dist/src/search.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"search.js","sourceRoot":"","sources":["../../src/search.ts"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"search.js","sourceRoot":"","sources":["../../src/search.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@crewx/knowledge-core",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.6",
|
|
4
4
|
"description": "Shared knowledge core - parser, search (BM25), graph builder for CrewX",
|
|
5
5
|
"type": "commonjs",
|
|
6
6
|
"main": "dist/src/index.js",
|
|
@@ -14,11 +14,6 @@
|
|
|
14
14
|
"files": [
|
|
15
15
|
"dist"
|
|
16
16
|
],
|
|
17
|
-
"scripts": {
|
|
18
|
-
"prepare": "npm run build",
|
|
19
|
-
"build": "tsc",
|
|
20
|
-
"clean": "rm -rf dist"
|
|
21
|
-
},
|
|
22
17
|
"keywords": [
|
|
23
18
|
"crewx",
|
|
24
19
|
"knowledge",
|
|
@@ -35,5 +30,10 @@
|
|
|
35
30
|
"devDependencies": {
|
|
36
31
|
"@types/node": "^20.0.0",
|
|
37
32
|
"typescript": "^5.0.0"
|
|
33
|
+
},
|
|
34
|
+
"scripts": {
|
|
35
|
+
"build": "tsc",
|
|
36
|
+
"clean": "rm -rf dist",
|
|
37
|
+
"test": "echo no tests"
|
|
38
38
|
}
|
|
39
|
-
}
|
|
39
|
+
}
|