@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.
@@ -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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"}
@@ -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
@@ -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
@@ -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"}
@@ -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;AAkF3D,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"}
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"}
@@ -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
  ]);
@@ -1 +1 @@
1
- {"version":3,"file":"search.js","sourceRoot":"","sources":["../../src/search.ts"],"names":[],"mappings":";;AAwFA,sCAkBC;AAhGD,MAAM,OAAO,GAAkB,OAAO,CAAC,uBAAuB,CAAC,CAAC;AAChE,MAAM,GAAG,GAA4C,OAAO,CAAC,gBAAgB,CAAC,CAAC;AAG/E,MAAM,qBAAqB,GAA2B,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC;AAEvF,MAAM,YAAY,GAAG,qEAAqE,CAAC;AAE3F,SAAS,SAAS,CAAC,IAAY;IAC7B,OAAO,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACjC,CAAC;AAED,SAAS,UAAU,CACjB,OAAyB,EACzB,KAAa,EACb,YAAoC;IAGpC,MAAM,MAAM,GAAI,OAAe,EAAE,CAAC;IAElC,MAAM,CAAC,YAAY,CAAC,EAAE,UAAU,EAAE,YAAY,EAAE,CAAC,CAAC;IAElD,MAAM,CAAC,eAAe,CAAC;QACrB,GAAG,CAAC,QAAQ,CAAE,CAAC,WAAW,CAAC;QAC3B,GAAG,CAAC,QAAQ,CAAE,CAAC,WAAW,CAAC;QAC3B,GAAG,CAAC,QAAQ,CAAE,CAAC,aAAa,CAAC;QAC7B,GAAG,CAAC,QAAQ,CAAE,CAAC,MAAM,CAAC;KACvB,CAAC,CAAC;IAEH,OAAO,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE;QAC7B,MAAM,GAAG,GAA2B,EAAE,CAAC;QACvC,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,EAAE,CAAC;YAC9C,IAAI,KAAK,GAAY,KAAK,CAAC,KAAK,CAAC,CAAC;YAClC,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;gBAAE,KAAK,GAAI,KAAkB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YAChE,IAAI,KAAK,KAAK,MAAM,IAAI,OAAO,KAAK,KAAK,QAAQ;gBAAE,KAAK,GAAG,KAAK,CAAC,SAAS,CAAC,CAAC,EAAE,OAAS,CAAC,CAAC;YACzF,GAAG,CAAC,KAAK,CAAC,GAAI,KAAgB,IAAI,EAAE,CAAC;QACvC,CAAC;QAED,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;IAC1B,CAAC,CAAC,CAAC;IAGH,MAAM,CAAC,WAAW,EAAE,CAAC;IAErB,MAAM,OAAO,GAAG,MAAM,CAAC,MAAM,CAAC,KAAK,CAAuB,CAAC;IAE3D,OAAO,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC;QACpC,GAAG,OAAO,CAAC,GAAG,CAAE;QAChB,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK,GAAG,GAAG,CAAC,GAAG,GAAG;KACtC,CAAC,CAAC,CAAC;AACN,CAAC;AAED,SAAS,mBAAmB,CAC1B,OAAyB,EACzB,KAAa,EACb,MAAgB;IAEhB,MAAM,KAAK,GAAG,KAAK,CAAC,WAAW,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;IAC3E,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,EAAE,CAAC;IAElC,OAAO,OAAO;SACX,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE;QACb,MAAM,UAAU,GAAG,MAAM;aACtB,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE;YACb,IAAI,KAAK,GAAY,KAAK,CAAC,KAAK,CAAC,CAAC;YAClC,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;gBAAE,KAAK,GAAI,KAAkB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YAChE,OAAQ,KAAgB,IAAI,EAAE,CAAC;QACjC,CAAC,CAAC;aACD,IAAI,CAAC,GAAG,CAAC;aACT,WAAW,EAAE,CAAC;QAEjB,MAAM,UAAU,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC;QAC5E,OAAO,EAAE,GAAG,KAAK,EAAE,MAAM,EAAE,UAAU,EAAE,CAAC;IAC1C,CAAC,CAAC;SACD,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC;SACjC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC;AACzC,CAAC;AAED,SAAgB,aAAa,CAC3B,OAAyB,EACzB,KAAa,EACb,YAAqC;IAErC,IAAI,CAAC,OAAO,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,EAAE,CAAC;IAChD,IAAI,CAAC,KAAK,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,EAAE,CAAC;IAEnD,MAAM,OAAO,GAAG,YAAY,IAAI,qBAAqB,CAAC;IACtD,MAAM,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAGpC,IAAI,SAAS,CAAC,KAAK,CAAC,EAAE,CAAC;QACrB,OAAO,mBAAmB,CAAC,OAAO,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;IACrD,CAAC;IAGD,OAAO,UAAU,CAAC,OAAO,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC;AAC7C,CAAC"}
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.4",
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
+ }