@zenalexa/unicli 0.223.4 → 0.224.1
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/AGENTS.md +5 -5
- package/README.md +4 -4
- package/README.zh-CN.md +4 -4
- package/dist/adapters/marxists-cn/archive.d.ts +61 -0
- package/dist/adapters/marxists-cn/archive.d.ts.map +1 -0
- package/dist/adapters/marxists-cn/archive.js +861 -0
- package/dist/adapters/marxists-cn/archive.js.map +1 -0
- package/dist/adapters/twitter/lists-extra.d.ts +17 -1
- package/dist/adapters/twitter/lists-extra.d.ts.map +1 -1
- package/dist/adapters/twitter/lists-extra.js +123 -21
- package/dist/adapters/twitter/lists-extra.js.map +1 -1
- package/dist/adapters/twitter/post.js +1 -0
- package/dist/adapters/twitter/post.js.map +1 -1
- package/dist/adapters/twitter/thread.d.ts +13 -1
- package/dist/adapters/twitter/thread.d.ts.map +1 -1
- package/dist/adapters/twitter/thread.js +76 -33
- package/dist/adapters/twitter/thread.js.map +1 -1
- package/dist/cli.d.ts.map +1 -1
- package/dist/cli.js +3 -0
- package/dist/cli.js.map +1 -1
- package/dist/commands/architecture.d.ts +21 -0
- package/dist/commands/architecture.d.ts.map +1 -0
- package/dist/commands/architecture.js +47 -0
- package/dist/commands/architecture.js.map +1 -0
- package/dist/commands/compute.d.ts.map +1 -1
- package/dist/commands/compute.js +31 -6
- package/dist/commands/compute.js.map +1 -1
- package/dist/commands/doctor-compute.d.ts.map +1 -1
- package/dist/commands/doctor-compute.js +88 -1
- package/dist/commands/doctor-compute.js.map +1 -1
- package/dist/compute/action-execution.d.ts +30 -0
- package/dist/compute/action-execution.d.ts.map +1 -0
- package/dist/compute/action-execution.js +112 -0
- package/dist/compute/action-execution.js.map +1 -0
- package/dist/compute/capture-reference.d.ts.map +1 -1
- package/dist/compute/capture-reference.js +6 -1
- package/dist/compute/capture-reference.js.map +1 -1
- package/dist/compute/capture.d.ts +2 -0
- package/dist/compute/capture.d.ts.map +1 -1
- package/dist/compute/capture.js +6 -1
- package/dist/compute/capture.js.map +1 -1
- package/dist/compute/cursor-visual-style.d.ts +35 -0
- package/dist/compute/cursor-visual-style.d.ts.map +1 -0
- package/dist/compute/cursor-visual-style.js +39 -0
- package/dist/compute/cursor-visual-style.js.map +1 -0
- package/dist/compute/linux-overlay.d.ts +38 -0
- package/dist/compute/linux-overlay.d.ts.map +1 -0
- package/dist/compute/linux-overlay.js +274 -0
- package/dist/compute/linux-overlay.js.map +1 -0
- package/dist/compute/macos-overlay.d.ts +64 -0
- package/dist/compute/macos-overlay.d.ts.map +1 -0
- package/dist/compute/macos-overlay.js +590 -0
- package/dist/compute/macos-overlay.js.map +1 -0
- package/dist/compute/overlay-daemon.d.ts +47 -0
- package/dist/compute/overlay-daemon.d.ts.map +1 -0
- package/dist/compute/overlay-daemon.js +206 -0
- package/dist/compute/overlay-daemon.js.map +1 -0
- package/dist/compute/overlay.d.ts +42 -0
- package/dist/compute/overlay.d.ts.map +1 -0
- package/dist/compute/overlay.js +111 -0
- package/dist/compute/overlay.js.map +1 -0
- package/dist/compute/platform-overlays.d.ts +20 -0
- package/dist/compute/platform-overlays.d.ts.map +1 -0
- package/dist/compute/platform-overlays.js +31 -0
- package/dist/compute/platform-overlays.js.map +1 -0
- package/dist/compute/visual-timeline.d.ts +132 -0
- package/dist/compute/visual-timeline.d.ts.map +1 -0
- package/dist/compute/visual-timeline.js +431 -0
- package/dist/compute/visual-timeline.js.map +1 -0
- package/dist/compute/windows-overlay.d.ts +38 -0
- package/dist/compute/windows-overlay.d.ts.map +1 -0
- package/dist/compute/windows-overlay.js +282 -0
- package/dist/compute/windows-overlay.js.map +1 -0
- package/dist/core/architecture-tree.d.ts +68 -0
- package/dist/core/architecture-tree.d.ts.map +1 -0
- package/dist/core/architecture-tree.js +215 -0
- package/dist/core/architecture-tree.js.map +1 -0
- package/dist/discovery/aliases.d.ts.map +1 -1
- package/dist/discovery/aliases.js +93 -0
- package/dist/discovery/aliases.js.map +1 -1
- package/dist/discovery/core-catalog.d.ts.map +1 -1
- package/dist/discovery/core-catalog.js +14 -0
- package/dist/discovery/core-catalog.js.map +1 -1
- package/dist/discovery/intents.d.ts.map +1 -1
- package/dist/discovery/intents.js +124 -0
- package/dist/discovery/intents.js.map +1 -1
- package/dist/discovery/loader.d.ts +12 -6
- package/dist/discovery/loader.d.ts.map +1 -1
- package/dist/discovery/loader.js +37 -10
- package/dist/discovery/loader.js.map +1 -1
- package/dist/discovery/search.d.ts +27 -28
- package/dist/discovery/search.d.ts.map +1 -1
- package/dist/discovery/search.js +118 -120
- package/dist/discovery/search.js.map +1 -1
- package/dist/engine/text-normalize.d.ts +14 -0
- package/dist/engine/text-normalize.d.ts.map +1 -1
- package/dist/engine/text-normalize.js +64 -0
- package/dist/engine/text-normalize.js.map +1 -1
- package/dist/fast-path/handlers/discovery.d.ts +12 -5
- package/dist/fast-path/handlers/discovery.d.ts.map +1 -1
- package/dist/fast-path/handlers/discovery.js +42 -7
- package/dist/fast-path/handlers/discovery.js.map +1 -1
- package/dist/manifest-compact.txt +2 -2
- package/dist/manifest.json +352 -3
- package/dist/mcp/profiles/computer-use.d.ts.map +1 -1
- package/dist/mcp/profiles/computer-use.js +76 -8
- package/dist/mcp/profiles/computer-use.js.map +1 -1
- package/dist/registry.d.ts +14 -5
- package/dist/registry.d.ts.map +1 -1
- package/dist/registry.js +33 -6
- package/dist/registry.js.map +1 -1
- package/dist/transport/cascade.d.ts +1 -0
- package/dist/transport/cascade.d.ts.map +1 -1
- package/dist/transport/cascade.js +2 -2
- package/dist/transport/cascade.js.map +1 -1
- package/docs/operate/compute.md +66 -1
- package/docs/operate/troubleshooting.md +42 -0
- package/package.json +9 -5
- package/server.json +3 -3
- package/skills/unicli/SKILL.md +1 -1
- package/skills/unicli-claude-code/SKILL.md +1 -1
- package/skills/unicli-hermes/SKILL.md +1 -1
- package/src/adapters/marxists-cn/archive.test.ts +173 -0
- package/src/adapters/marxists-cn/archive.ts +1049 -0
- package/src/adapters/twitter/lists-extra.test.ts +115 -0
- package/src/adapters/twitter/lists-extra.ts +146 -26
- package/src/adapters/twitter/post.ts +1 -0
- package/src/adapters/twitter/thread.test.ts +25 -1
- package/src/adapters/twitter/thread.ts +99 -47
- package/dist/manifest-search.json +0 -1
package/dist/discovery/loader.js
CHANGED
|
@@ -1,16 +1,22 @@
|
|
|
1
1
|
/**
|
|
2
|
-
*
|
|
3
|
-
*
|
|
4
|
-
*
|
|
5
|
-
*
|
|
6
|
-
*
|
|
7
|
-
*
|
|
2
|
+
* @owner src/discovery/loader.ts
|
|
3
|
+
* @does Discovers YAML and TypeScript adapters, validates adapter metadata, stamps source paths, and registers commands.
|
|
4
|
+
* @needs fs, path, js-yaml, src/registry, src/core/schema-v2, src/engine/kernel/compile, src/discovery/macos-dynamic
|
|
5
|
+
* @feeds src/cli.ts, src/discovery/search.ts, MCP and ACP command surfaces, tests/unit/loader.test.ts
|
|
6
|
+
* @breaks Emits schema-v2/config warnings or exits with code 78 for strict adapter violations; import failures are surfaced in debug mode.
|
|
7
|
+
* @invariants Registered file-backed commands carry repairable source paths; YAML files are size bounded before parsing.
|
|
8
|
+
* @side-effects Reads adapter files, imports TS/JS adapter modules, mutates the registry, primes the invocation kernel cache, writes warnings to stderr.
|
|
9
|
+
* @perf O(adapter files) startup scan; YAML parsing is capped by MAX_YAML_BYTES.
|
|
10
|
+
* @concurrency Loader imports TS adapters sequentially so registry source-path context cannot cross-contaminate commands.
|
|
11
|
+
* @test tests/unit/loader.test.ts, tests/unit/loader-parity.test.ts
|
|
12
|
+
* @stability stable
|
|
13
|
+
* @since 2026-05-26
|
|
8
14
|
*/
|
|
9
15
|
import { readFileSync, readdirSync, existsSync, statSync } from "node:fs";
|
|
10
|
-
import { join, extname, basename, dirname } from "node:path";
|
|
16
|
+
import { join, extname, basename, dirname, sep } from "node:path";
|
|
11
17
|
import { fileURLToPath, pathToFileURL } from "node:url";
|
|
12
18
|
import yaml from "js-yaml";
|
|
13
|
-
import { getAllAdapters, registerAdapter } from "../registry.js";
|
|
19
|
+
import { getAllAdapters, registerAdapter, withAdapterSourcePath, } from "../registry.js";
|
|
14
20
|
import { validateAdapterV2 } from "../core/schema-v2.js";
|
|
15
21
|
import { compileAll } from "../engine/kernel/compile.js";
|
|
16
22
|
import { registerMacosDynamicCommands } from "./macos-dynamic.js";
|
|
@@ -87,6 +93,25 @@ function findAdapterDirs() {
|
|
|
87
93
|
}
|
|
88
94
|
const { yamlDir: BUILTIN_YAML_DIR, tsDir: BUILTIN_TS_DIR } = findAdapterDirs();
|
|
89
95
|
const USER_DIR = join(process.env.HOME ?? "~", ".unicli", "adapters");
|
|
96
|
+
function adapterSourcePath(absPath) {
|
|
97
|
+
const normalized = absPath.split(sep).join("/");
|
|
98
|
+
const sourceMarker = "/src/adapters/";
|
|
99
|
+
const sourceIndex = normalized.lastIndexOf(sourceMarker);
|
|
100
|
+
if (sourceIndex >= 0) {
|
|
101
|
+
return `src/adapters/${normalized.slice(sourceIndex + sourceMarker.length)}`;
|
|
102
|
+
}
|
|
103
|
+
const distMarker = "/dist/adapters/";
|
|
104
|
+
const distIndex = normalized.lastIndexOf(distMarker);
|
|
105
|
+
if (distIndex >= 0) {
|
|
106
|
+
return `dist/adapters/${normalized.slice(distIndex + distMarker.length)}`;
|
|
107
|
+
}
|
|
108
|
+
const userMarker = "/.unicli/adapters/";
|
|
109
|
+
const userIndex = normalized.lastIndexOf(userMarker);
|
|
110
|
+
if (userIndex >= 0) {
|
|
111
|
+
return normalized;
|
|
112
|
+
}
|
|
113
|
+
return absPath;
|
|
114
|
+
}
|
|
90
115
|
function extractBalancedLiteral(source, openIndex) {
|
|
91
116
|
let depth = 0;
|
|
92
117
|
let quote = null;
|
|
@@ -214,6 +239,7 @@ function extractTsCommandStubs(site, siteDir) {
|
|
|
214
239
|
continue;
|
|
215
240
|
if (file.endsWith(".d.ts") || file.endsWith(".test.ts"))
|
|
216
241
|
continue;
|
|
242
|
+
const sourcePath = adapterSourcePath(join(siteDir, file));
|
|
217
243
|
const source = readFileSync(join(siteDir, file), "utf-8");
|
|
218
244
|
let index = 0;
|
|
219
245
|
while (true) {
|
|
@@ -248,7 +274,7 @@ function extractTsCommandStubs(site, siteDir) {
|
|
|
248
274
|
commands[name] = {
|
|
249
275
|
name,
|
|
250
276
|
description: objectStringProp(body, "description"),
|
|
251
|
-
adapter_path: objectStringProp(body, "adapter_path"),
|
|
277
|
+
adapter_path: objectStringProp(body, "adapter_path") ?? sourcePath,
|
|
252
278
|
target_surface: objectStringProp(body, "target_surface"),
|
|
253
279
|
strategy,
|
|
254
280
|
browser,
|
|
@@ -416,6 +442,7 @@ export function loadAdaptersFromDir(dir) {
|
|
|
416
442
|
commands[cmdName] = {
|
|
417
443
|
name: cmdName,
|
|
418
444
|
description: parsed.description,
|
|
445
|
+
adapter_path: adapterSourcePath(absPath),
|
|
419
446
|
pipeline: parsed.pipeline,
|
|
420
447
|
adapterArgs,
|
|
421
448
|
strategy: parsed.strategy,
|
|
@@ -535,7 +562,7 @@ export async function loadTsAdapters() {
|
|
|
535
562
|
let count = 0;
|
|
536
563
|
for (const file of files) {
|
|
537
564
|
try {
|
|
538
|
-
await import(`${pathToFileURL(file).href}?unicli_ts_load=${tsAdapterLoadGeneration}`);
|
|
565
|
+
await withAdapterSourcePath(adapterSourcePath(file), () => import(`${pathToFileURL(file).href}?unicli_ts_load=${tsAdapterLoadGeneration}`));
|
|
539
566
|
count++;
|
|
540
567
|
}
|
|
541
568
|
catch (err) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"loader.js","sourceRoot":"","sources":["../../src/discovery/loader.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"loader.js","sourceRoot":"","sources":["../../src/discovery/loader.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,17 +1,16 @@
|
|
|
1
1
|
/**
|
|
2
|
-
*
|
|
3
|
-
*
|
|
4
|
-
*
|
|
5
|
-
*
|
|
6
|
-
*
|
|
7
|
-
*
|
|
8
|
-
*
|
|
9
|
-
*
|
|
10
|
-
*
|
|
11
|
-
*
|
|
12
|
-
*
|
|
13
|
-
*
|
|
14
|
-
* index is ~50KB — small enough to hold in memory permanently.
|
|
2
|
+
* @owner src/discovery/search.ts
|
|
3
|
+
* @does Score command-intent queries against live registry or manifest command documents.
|
|
4
|
+
* @needs ./aliases, ./intents, ./core-catalog, ./macos-dynamic, ../registry
|
|
5
|
+
* @feeds src/commands/search.ts, src/mcp/handler.ts, src/fast-path/handlers/discovery.ts
|
|
6
|
+
* @breaks Returns an empty result set when the registry/manifest has no matching commands.
|
|
7
|
+
* @invariants Runtime search uses the live registry; generated search-index artifacts are not a source of truth.
|
|
8
|
+
* @side-effects Caches an in-memory index by command-document signature; reads dynamic macOS data only when enabled.
|
|
9
|
+
* @perf Cold index build is O(commands * terms); warm searches reuse the cache until documents change.
|
|
10
|
+
* @concurrency Module cache is process-local and rebuilt synchronously inside a search call.
|
|
11
|
+
* @test tests/unit/search.test.ts, tests/unit/search-eval.test.ts, tests/unit/commands/search.test.ts
|
|
12
|
+
* @stability Public CLI/MCP discovery behavior.
|
|
13
|
+
* @since 0.223.4
|
|
15
14
|
*/
|
|
16
15
|
export interface SearchResult {
|
|
17
16
|
site: string;
|
|
@@ -24,7 +23,13 @@ export interface SearchResult {
|
|
|
24
23
|
export interface SearchOptions {
|
|
25
24
|
category?: string;
|
|
26
25
|
}
|
|
27
|
-
|
|
26
|
+
export interface CommandSearchDocument {
|
|
27
|
+
site: string;
|
|
28
|
+
command: string;
|
|
29
|
+
description: string;
|
|
30
|
+
category?: string;
|
|
31
|
+
}
|
|
32
|
+
/** In-memory search index built from command documents. */
|
|
28
33
|
export interface SearchIndex {
|
|
29
34
|
/** Mapping: term → list of document indices that contain this term */
|
|
30
35
|
postings: Record<string, number[]>;
|
|
@@ -43,21 +48,16 @@ export interface SearchIndex {
|
|
|
43
48
|
avgDl: number;
|
|
44
49
|
/** Total document count */
|
|
45
50
|
N: number;
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
description: string;
|
|
53
|
-
}>;
|
|
51
|
+
/** Registered site names for O(1) query hint checks. */
|
|
52
|
+
siteLookup: Record<string, true>;
|
|
53
|
+
/** Normalized multi-token site names for phrase hint matching. */
|
|
54
|
+
sitePhrases: Array<{
|
|
55
|
+
site: string;
|
|
56
|
+
phrase: string;
|
|
54
57
|
}>;
|
|
55
58
|
}
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
* Exported for use by the build script.
|
|
59
|
-
*/
|
|
60
|
-
export declare function buildIndex(manifest: SearchManifest): SearchIndex;
|
|
59
|
+
export declare function buildIndexFromDocuments(searchDocuments: readonly CommandSearchDocument[]): SearchIndex;
|
|
60
|
+
export declare function searchDocuments(documents: readonly CommandSearchDocument[], query: string, limit?: number, options?: SearchOptions): SearchResult[];
|
|
61
61
|
/**
|
|
62
62
|
* Search all commands by natural language query.
|
|
63
63
|
*
|
|
@@ -76,5 +76,4 @@ export declare function search(query: string, limit?: number, options?: SearchOp
|
|
|
76
76
|
* Force-reload the search index (useful after index rebuild).
|
|
77
77
|
*/
|
|
78
78
|
export declare function invalidateCache(): void;
|
|
79
|
-
export {};
|
|
80
79
|
//# sourceMappingURL=search.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"search.d.ts","sourceRoot":"","sources":["../../src/discovery/search.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"search.d.ts","sourceRoot":"","sources":["../../src/discovery/search.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAuBH,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;IACpB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,qBAAqB;IACpC,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAeD,2DAA2D;AAC3D,MAAM,WAAW,WAAW;IAC1B,sEAAsE;IACtE,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;IACnC,qDAAqD;IACrD,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC5B,wCAAwC;IACxC,SAAS,EAAE,KAAK,CAAC;QACf,EAAE,EAAE,MAAM,CAAC;QACX,IAAI,EAAE,MAAM,CAAC;QACb,OAAO,EAAE,MAAM,CAAC;QAChB,WAAW,EAAE,MAAM,CAAC;QACpB,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,KAAK,EAAE,MAAM,EAAE,CAAC;KACjB,CAAC,CAAC;IACH,6DAA6D;IAC7D,KAAK,EAAE,MAAM,CAAC;IACd,2BAA2B;IAC3B,CAAC,EAAE,MAAM,CAAC;IACV,wDAAwD;IACxD,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;IACjC,kEAAkE;IAClE,WAAW,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;CACtD;AA8ED,wBAAgB,uBAAuB,CACrC,eAAe,EAAE,SAAS,qBAAqB,EAAE,GAChD,WAAW,CAuEb;AAED,wBAAgB,eAAe,CAC7B,SAAS,EAAE,SAAS,qBAAqB,EAAE,EAC3C,KAAK,EAAE,MAAM,EACb,KAAK,SAAI,EACT,OAAO,GAAE,aAAkB,GAC1B,YAAY,EAAE,CAUhB;AA2KD;;;;;;;;;;;;GAYG;AACH,wBAAgB,MAAM,CACpB,KAAK,EAAE,MAAM,EACb,KAAK,SAAI,EACT,OAAO,GAAE,aAAkB,GAC1B,YAAY,EAAE,CAKhB;AA8PD;;GAEG;AACH,wBAAgB,eAAe,IAAI,IAAI,CAGtC"}
|
package/dist/discovery/search.js
CHANGED
|
@@ -1,25 +1,22 @@
|
|
|
1
1
|
/**
|
|
2
|
-
*
|
|
3
|
-
*
|
|
4
|
-
*
|
|
5
|
-
*
|
|
6
|
-
*
|
|
7
|
-
*
|
|
8
|
-
*
|
|
9
|
-
*
|
|
10
|
-
*
|
|
11
|
-
*
|
|
12
|
-
*
|
|
13
|
-
*
|
|
14
|
-
* index is ~50KB — small enough to hold in memory permanently.
|
|
2
|
+
* @owner src/discovery/search.ts
|
|
3
|
+
* @does Score command-intent queries against live registry or manifest command documents.
|
|
4
|
+
* @needs ./aliases, ./intents, ./core-catalog, ./macos-dynamic, ../registry
|
|
5
|
+
* @feeds src/commands/search.ts, src/mcp/handler.ts, src/fast-path/handlers/discovery.ts
|
|
6
|
+
* @breaks Returns an empty result set when the registry/manifest has no matching commands.
|
|
7
|
+
* @invariants Runtime search uses the live registry; generated search-index artifacts are not a source of truth.
|
|
8
|
+
* @side-effects Caches an in-memory index by command-document signature; reads dynamic macOS data only when enabled.
|
|
9
|
+
* @perf Cold index build is O(commands * terms); warm searches reuse the cache until documents change.
|
|
10
|
+
* @concurrency Module cache is process-local and rebuilt synchronously inside a search call.
|
|
11
|
+
* @test tests/unit/search.test.ts, tests/unit/search-eval.test.ts, tests/unit/commands/search.test.ts
|
|
12
|
+
* @stability Public CLI/MCP discovery behavior.
|
|
13
|
+
* @since 0.223.4
|
|
15
14
|
*/
|
|
16
|
-
import { readFileSync, existsSync } from "node:fs";
|
|
17
|
-
import { join, dirname } from "node:path";
|
|
18
|
-
import { fileURLToPath } from "node:url";
|
|
19
15
|
import { expandToken, tokenizeQuery, SITE_ALIASES, SITE_CATEGORIES, CATEGORY_ALIASES, } from "./aliases.js";
|
|
20
16
|
import { intentBoost } from "./intents.js";
|
|
21
17
|
import { buildMacosDynamicSearchDocuments, discoverMacosDynamicData, dynamicMacosDiscoveryEnabled, } from "./macos-dynamic.js";
|
|
22
18
|
import { coreDiscoveryCategory, listCoreDiscoveryCommands, } from "./core-catalog.js";
|
|
19
|
+
import { getRegistryVersion, listCommands } from "../registry.js";
|
|
23
20
|
// ── BM25 Parameters ─────────────────────────────────────────────────────────
|
|
24
21
|
// Standard BM25 tuning. k1 controls term frequency saturation,
|
|
25
22
|
// b controls document length normalization.
|
|
@@ -43,93 +40,68 @@ const BOOST_CMD_PARTIAL = 3.0; // Query token is substring of command name
|
|
|
43
40
|
const BOOST_CATEGORY = 2.0; // Query token matches site's category
|
|
44
41
|
// ── Index Management ────────────────────────────────────────────────────────
|
|
45
42
|
let cachedIndex = null;
|
|
43
|
+
let cachedRegistryVersion = -1;
|
|
46
44
|
/**
|
|
47
|
-
*
|
|
48
|
-
* Falls back to building one on-the-fly from the manifest if the
|
|
49
|
-
* pre-built index doesn't exist.
|
|
50
|
-
*/
|
|
51
|
-
function getIndexPath() {
|
|
52
|
-
const __dirname = dirname(fileURLToPath(import.meta.url));
|
|
53
|
-
return join(__dirname, "..", "..", "dist", "manifest-search.json");
|
|
54
|
-
}
|
|
55
|
-
/**
|
|
56
|
-
* Load or build the search index. Called lazily on first search.
|
|
45
|
+
* Load the live registry search index. Called lazily on first search.
|
|
57
46
|
*/
|
|
58
47
|
function loadIndex() {
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
const indexPath = getIndexPath();
|
|
62
|
-
if (existsSync(indexPath)) {
|
|
63
|
-
cachedIndex = augmentIndexWithCoreDocs(JSON.parse(readFileSync(indexPath, "utf-8")));
|
|
48
|
+
const registryVersion = getRegistryVersion();
|
|
49
|
+
if (cachedIndex && cachedRegistryVersion === registryVersion) {
|
|
64
50
|
return cachedIndex;
|
|
65
51
|
}
|
|
66
|
-
|
|
67
|
-
cachedIndex =
|
|
52
|
+
const documents = runtimeSearchDocuments();
|
|
53
|
+
cachedIndex = buildIndexFromDocuments(documents);
|
|
54
|
+
cachedRegistryVersion = registryVersion;
|
|
68
55
|
return cachedIndex;
|
|
69
56
|
}
|
|
70
|
-
function
|
|
71
|
-
const manifest = { sites: {} };
|
|
57
|
+
function runtimeSearchDocuments() {
|
|
72
58
|
const seen = new Set();
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
description:
|
|
59
|
+
const documents = [];
|
|
60
|
+
for (const command of listCommands()) {
|
|
61
|
+
const id = `${command.site}/${command.command}`;
|
|
62
|
+
seen.add(id);
|
|
63
|
+
documents.push({
|
|
64
|
+
site: command.site,
|
|
65
|
+
command: command.command,
|
|
66
|
+
description: command.description,
|
|
67
|
+
category: command.category,
|
|
81
68
|
});
|
|
82
|
-
seen.add(doc.id);
|
|
83
69
|
}
|
|
84
70
|
for (const doc of listCoreDiscoveryCommands()) {
|
|
85
71
|
const id = `${doc.site}/${doc.command}`;
|
|
86
72
|
if (seen.has(id))
|
|
87
73
|
continue;
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
74
|
+
seen.add(id);
|
|
75
|
+
documents.push({
|
|
76
|
+
site: doc.site,
|
|
77
|
+
command: doc.command,
|
|
91
78
|
description: doc.description,
|
|
79
|
+
category: doc.category,
|
|
92
80
|
});
|
|
93
81
|
}
|
|
94
|
-
return
|
|
95
|
-
}
|
|
96
|
-
/**
|
|
97
|
-
* Build a search index from the manifest.json file.
|
|
98
|
-
* Used when the pre-built search index doesn't exist (dev mode).
|
|
99
|
-
*/
|
|
100
|
-
function buildIndexFromManifest() {
|
|
101
|
-
const __dirname = dirname(fileURLToPath(import.meta.url));
|
|
102
|
-
const manifestPath = join(__dirname, "..", "..", "dist", "manifest.json");
|
|
103
|
-
if (!existsSync(manifestPath)) {
|
|
104
|
-
// No manifest either — search will silently return zero results.
|
|
105
|
-
// Emit an actionable hint to stderr so CI/dev failures point to the fix.
|
|
106
|
-
process.stderr.write("[unicli search] Missing dist/manifest-search.json and dist/manifest.json. " +
|
|
107
|
-
"Run: npm run build:manifest\n");
|
|
108
|
-
return { postings: {}, idf: {}, documents: [], avgDl: 0, N: 0 };
|
|
109
|
-
}
|
|
110
|
-
const manifest = JSON.parse(readFileSync(manifestPath, "utf-8"));
|
|
111
|
-
return buildIndex(manifest);
|
|
82
|
+
return documents;
|
|
112
83
|
}
|
|
113
|
-
|
|
114
|
-
* Build a search index from a manifest object.
|
|
115
|
-
* Exported for use by the build script.
|
|
116
|
-
*/
|
|
117
|
-
export function buildIndex(manifest) {
|
|
84
|
+
export function buildIndexFromDocuments(searchDocuments) {
|
|
118
85
|
const documents = [];
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
}
|
|
86
|
+
const siteSet = new Set();
|
|
87
|
+
for (const doc of searchDocuments) {
|
|
88
|
+
siteSet.add(doc.site);
|
|
89
|
+
const terms = tokenizeDocument(doc.site, doc.command, doc.description, doc.category);
|
|
90
|
+
documents.push({
|
|
91
|
+
id: `${doc.site}/${doc.command}`,
|
|
92
|
+
site: doc.site,
|
|
93
|
+
command: doc.command,
|
|
94
|
+
description: doc.description,
|
|
95
|
+
...(doc.category ? { category: doc.category } : {}),
|
|
96
|
+
terms,
|
|
97
|
+
termCount: terms.length,
|
|
98
|
+
});
|
|
132
99
|
}
|
|
100
|
+
const siteLookup = Object.fromEntries(Array.from(siteSet, (site) => [site, true]));
|
|
101
|
+
const sitePhrases = Array.from(siteSet, (site) => ({
|
|
102
|
+
site,
|
|
103
|
+
phrase: normalizeSitePhrase(site),
|
|
104
|
+
})).filter((entry) => entry.phrase.includes(" "));
|
|
133
105
|
const N = documents.length;
|
|
134
106
|
const avgDl = N > 0 ? documents.reduce((sum, d) => sum + d.termCount, 0) / N : 0;
|
|
135
107
|
// Build inverted index
|
|
@@ -165,8 +137,15 @@ export function buildIndex(manifest) {
|
|
|
165
137
|
})),
|
|
166
138
|
avgDl,
|
|
167
139
|
N,
|
|
140
|
+
siteLookup,
|
|
141
|
+
sitePhrases,
|
|
168
142
|
};
|
|
169
143
|
}
|
|
144
|
+
export function searchDocuments(documents, query, limit = 5, options = {}) {
|
|
145
|
+
const staticResults = searchIndex(buildIndexFromDocuments(documents), query, limit, options);
|
|
146
|
+
const dynamicResults = searchDynamicMacosIndex(query, limit, options);
|
|
147
|
+
return mergeSearchResults(staticResults, dynamicResults, limit);
|
|
148
|
+
}
|
|
170
149
|
// Minimal English stopwords — same set used in query tokenization
|
|
171
150
|
const DOC_STOPWORDS = new Set([
|
|
172
151
|
"the",
|
|
@@ -318,6 +297,9 @@ function tfidfCosine(docTerms, queryTerms, index) {
|
|
|
318
297
|
export function search(query, limit = 5, options = {}) {
|
|
319
298
|
const staticResults = searchIndex(loadIndex(), query, limit, options);
|
|
320
299
|
const dynamicResults = searchDynamicMacosIndex(query, limit, options);
|
|
300
|
+
return mergeSearchResults(staticResults, dynamicResults, limit);
|
|
301
|
+
}
|
|
302
|
+
function mergeSearchResults(staticResults, dynamicResults, limit) {
|
|
321
303
|
if (dynamicResults.length === 0)
|
|
322
304
|
return staticResults;
|
|
323
305
|
const byCommand = new Map();
|
|
@@ -340,16 +322,12 @@ function searchDynamicMacosIndex(query, limit, options) {
|
|
|
340
322
|
const docs = buildMacosDynamicSearchDocuments(discoverMacosDynamicData());
|
|
341
323
|
if (docs.length === 0)
|
|
342
324
|
return [];
|
|
343
|
-
|
|
344
|
-
|
|
345
|
-
|
|
346
|
-
|
|
347
|
-
|
|
348
|
-
|
|
349
|
-
description: doc.description,
|
|
350
|
-
});
|
|
351
|
-
}
|
|
352
|
-
return searchIndex(buildIndex(manifest), query, limit, options);
|
|
325
|
+
return searchIndex(buildIndexFromDocuments(docs.map((doc) => ({
|
|
326
|
+
site: doc.site,
|
|
327
|
+
command: doc.command,
|
|
328
|
+
description: doc.description,
|
|
329
|
+
category: "desktop",
|
|
330
|
+
}))), query, limit, options);
|
|
353
331
|
}
|
|
354
332
|
function searchIndex(index, query, limit, options) {
|
|
355
333
|
if (index.N === 0)
|
|
@@ -369,8 +347,9 @@ function searchIndex(index, query, limit, options) {
|
|
|
369
347
|
if (siteMatch)
|
|
370
348
|
siteHints.push(siteMatch);
|
|
371
349
|
// Check if this token is directly a known site
|
|
372
|
-
|
|
373
|
-
|
|
350
|
+
const lowerToken = token.toLowerCase();
|
|
351
|
+
if (index.siteLookup[lowerToken]) {
|
|
352
|
+
siteHints.push(lowerToken);
|
|
374
353
|
}
|
|
375
354
|
// Check category alias
|
|
376
355
|
const catMatch = CATEGORY_ALIASES.get(token) ?? CATEGORY_ALIASES.get(token.toLowerCase());
|
|
@@ -390,31 +369,21 @@ function searchIndex(index, query, limit, options) {
|
|
|
390
369
|
}
|
|
391
370
|
}
|
|
392
371
|
// If site hints exist, also add ALL commands for those sites
|
|
393
|
-
|
|
394
|
-
|
|
395
|
-
if (siteHints.includes(index.documents[i].site)) {
|
|
396
|
-
candidateSet.add(i);
|
|
397
|
-
}
|
|
398
|
-
}
|
|
399
|
-
}
|
|
400
|
-
if (sitePhraseHints.length > 0) {
|
|
401
|
-
for (let i = 0; i < index.documents.length; i++) {
|
|
402
|
-
if (sitePhraseHints.includes(index.documents[i].site)) {
|
|
403
|
-
candidateSet.add(i);
|
|
404
|
-
}
|
|
405
|
-
}
|
|
372
|
+
for (const siteHint of new Set([...siteHints, ...sitePhraseHints])) {
|
|
373
|
+
addSiteCandidates(index, siteHint, candidateSet);
|
|
406
374
|
}
|
|
407
375
|
if (queryTerms.length === 0 && categoryFilter) {
|
|
408
|
-
|
|
409
|
-
if (documentCategory(index.documents[i]) === categoryFilter) {
|
|
410
|
-
candidateSet.add(i);
|
|
411
|
-
}
|
|
412
|
-
}
|
|
376
|
+
addCategoryCandidates(index, categoryFilter, candidateSet);
|
|
413
377
|
}
|
|
414
378
|
if (candidateSet.size === 0)
|
|
415
379
|
return [];
|
|
416
380
|
// Step 4: Score candidates using hybrid BM25 + TF-IDF
|
|
381
|
+
const boundedLimit = Math.max(0, Math.floor(limit));
|
|
382
|
+
if (boundedLimit === 0)
|
|
383
|
+
return [];
|
|
384
|
+
const shouldSortAll = boundedLimit >= candidateSet.size;
|
|
417
385
|
const scored = [];
|
|
386
|
+
const topScored = [];
|
|
418
387
|
for (const idx of candidateSet) {
|
|
419
388
|
const doc = index.documents[idx];
|
|
420
389
|
const docCategory = documentCategory(doc);
|
|
@@ -449,12 +418,19 @@ function searchIndex(index, query, limit, options) {
|
|
|
449
418
|
score += intentBoost(doc, queryTerms, [...siteHints, ...sitePhraseHints]);
|
|
450
419
|
if (categoryFilter && queryTerms.length === 0)
|
|
451
420
|
score += BOOST_CATEGORY;
|
|
452
|
-
if (score
|
|
421
|
+
if (score <= 0)
|
|
422
|
+
continue;
|
|
423
|
+
if (shouldSortAll) {
|
|
453
424
|
scored.push({ idx, score });
|
|
425
|
+
}
|
|
426
|
+
else {
|
|
427
|
+
pushTopScore(topScored, { idx, score }, boundedLimit);
|
|
428
|
+
}
|
|
454
429
|
}
|
|
455
430
|
// Step 5: Sort and return top-K
|
|
456
|
-
|
|
457
|
-
|
|
431
|
+
const topK = shouldSortAll
|
|
432
|
+
? scored.sort((a, b) => b.score - a.score).slice(0, boundedLimit)
|
|
433
|
+
: topScored;
|
|
458
434
|
return topK.map(({ idx, score }) => {
|
|
459
435
|
const doc = index.documents[idx];
|
|
460
436
|
return {
|
|
@@ -467,6 +443,29 @@ function searchIndex(index, query, limit, options) {
|
|
|
467
443
|
};
|
|
468
444
|
});
|
|
469
445
|
}
|
|
446
|
+
function addSiteCandidates(index, site, candidateSet) {
|
|
447
|
+
for (const docIdx of index.postings[site] ?? []) {
|
|
448
|
+
if (index.documents[docIdx]?.site === site)
|
|
449
|
+
candidateSet.add(docIdx);
|
|
450
|
+
}
|
|
451
|
+
}
|
|
452
|
+
function addCategoryCandidates(index, category, candidateSet) {
|
|
453
|
+
for (const docIdx of index.postings[category] ?? []) {
|
|
454
|
+
const doc = index.documents[docIdx];
|
|
455
|
+
if (doc && documentCategory(doc) === category)
|
|
456
|
+
candidateSet.add(docIdx);
|
|
457
|
+
}
|
|
458
|
+
}
|
|
459
|
+
function pushTopScore(topScored, candidate, limit) {
|
|
460
|
+
let insertAt = topScored.findIndex((entry) => candidate.score > entry.score);
|
|
461
|
+
if (insertAt === -1)
|
|
462
|
+
insertAt = topScored.length;
|
|
463
|
+
if (insertAt >= limit)
|
|
464
|
+
return;
|
|
465
|
+
topScored.splice(insertAt, 0, candidate);
|
|
466
|
+
if (topScored.length > limit)
|
|
467
|
+
topScored.pop();
|
|
468
|
+
}
|
|
470
469
|
function documentCategory(doc) {
|
|
471
470
|
return (doc.category ??
|
|
472
471
|
coreDiscoveryCategory(doc.site) ??
|
|
@@ -477,11 +476,9 @@ function deriveSitePhraseHints(index, query) {
|
|
|
477
476
|
const normalizedQuery = normalizeSitePhrase(query);
|
|
478
477
|
if (normalizedQuery.length === 0)
|
|
479
478
|
return [];
|
|
480
|
-
const sites = new Set(index.documents.map((doc) => doc.site));
|
|
481
479
|
const hints = [];
|
|
482
|
-
for (const site of
|
|
483
|
-
|
|
484
|
-
if (phrase.includes(" ") && hasPhrase(normalizedQuery, phrase)) {
|
|
480
|
+
for (const { site, phrase } of index.sitePhrases) {
|
|
481
|
+
if (hasPhrase(normalizedQuery, phrase)) {
|
|
485
482
|
hints.push(site);
|
|
486
483
|
}
|
|
487
484
|
}
|
|
@@ -509,5 +506,6 @@ function buildUsageExample(site, command) {
|
|
|
509
506
|
*/
|
|
510
507
|
export function invalidateCache() {
|
|
511
508
|
cachedIndex = null;
|
|
509
|
+
cachedRegistryVersion = -1;
|
|
512
510
|
}
|
|
513
511
|
//# sourceMappingURL=search.js.map
|