@xrkseek/harness-cli 0.0.4 → 0.0.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.
Files changed (91) hide show
  1. package/README.md +3 -1
  2. package/dist/commands/plugin.d.ts +3 -0
  3. package/dist/commands/plugin.d.ts.map +1 -0
  4. package/dist/commands/plugin.js +100 -0
  5. package/dist/commands/plugin.js.map +1 -0
  6. package/dist/index.d.ts.map +1 -1
  7. package/dist/index.js +3 -0
  8. package/dist/index.js.map +1 -1
  9. package/dist/parse-args.d.ts +3 -1
  10. package/dist/parse-args.d.ts.map +1 -1
  11. package/dist/parse-args.js +11 -0
  12. package/dist/parse-args.js.map +1 -1
  13. package/dist/plugin/classify.d.ts +18 -0
  14. package/dist/plugin/classify.d.ts.map +1 -0
  15. package/dist/plugin/classify.js +109 -0
  16. package/dist/plugin/classify.js.map +1 -0
  17. package/dist/plugin/fetch-pack.d.ts +16 -0
  18. package/dist/plugin/fetch-pack.d.ts.map +1 -0
  19. package/dist/plugin/fetch-pack.js +104 -0
  20. package/dist/plugin/fetch-pack.js.map +1 -0
  21. package/dist/plugin/index.d.ts +27 -0
  22. package/dist/plugin/index.d.ts.map +1 -0
  23. package/dist/plugin/index.js +109 -0
  24. package/dist/plugin/index.js.map +1 -0
  25. package/dist/plugin/install-client.d.ts +4 -0
  26. package/dist/plugin/install-client.d.ts.map +1 -0
  27. package/dist/plugin/install-client.js +34 -0
  28. package/dist/plugin/install-client.js.map +1 -0
  29. package/dist/plugin/install-process.d.ts +4 -0
  30. package/dist/plugin/install-process.d.ts.map +1 -0
  31. package/dist/plugin/install-process.js +46 -0
  32. package/dist/plugin/install-process.js.map +1 -0
  33. package/dist/plugin/inventory.d.ts +42 -0
  34. package/dist/plugin/inventory.d.ts.map +1 -0
  35. package/dist/plugin/inventory.js +105 -0
  36. package/dist/plugin/inventory.js.map +1 -0
  37. package/dist/plugin/remap-inject.d.ts +16 -0
  38. package/dist/plugin/remap-inject.d.ts.map +1 -0
  39. package/dist/plugin/remap-inject.js +52 -0
  40. package/dist/plugin/remap-inject.js.map +1 -0
  41. package/node_modules/@xrkseek/core-agent-loop/dist/index.d.ts.map +1 -1
  42. package/node_modules/@xrkseek/core-agent-loop/dist/index.js +8 -2
  43. package/node_modules/@xrkseek/core-agent-loop/dist/index.js.map +1 -1
  44. package/node_modules/@xrkseek/core-system-prompt/README.md +2 -2
  45. package/node_modules/@xrkseek/core-system-prompt/dist/index.d.ts +1 -1
  46. package/node_modules/@xrkseek/core-system-prompt/dist/index.d.ts.map +1 -1
  47. package/node_modules/@xrkseek/core-system-prompt/dist/index.js +1 -1
  48. package/node_modules/@xrkseek/core-system-prompt/dist/index.js.map +1 -1
  49. package/node_modules/@xrkseek/core-system-prompt/dist/three-layer.d.ts +22 -4
  50. package/node_modules/@xrkseek/core-system-prompt/dist/three-layer.d.ts.map +1 -1
  51. package/node_modules/@xrkseek/core-system-prompt/dist/three-layer.js +21 -8
  52. package/node_modules/@xrkseek/core-system-prompt/dist/three-layer.js.map +1 -1
  53. package/node_modules/@xrkseek/preset-harness/dist/tsconfig.tsbuildinfo +1 -1
  54. package/node_modules/@xrkseek/preset-minimal/dist/tsconfig.tsbuildinfo +1 -1
  55. package/node_modules/@xrkseek/server-config/dist/home.d.ts +5 -0
  56. package/node_modules/@xrkseek/server-config/dist/home.d.ts.map +1 -1
  57. package/node_modules/@xrkseek/server-config/dist/home.js +7 -0
  58. package/node_modules/@xrkseek/server-config/dist/home.js.map +1 -1
  59. package/node_modules/@xrkseek/server-config/dist/index.d.ts +4 -2
  60. package/node_modules/@xrkseek/server-config/dist/index.d.ts.map +1 -1
  61. package/node_modules/@xrkseek/server-config/dist/index.js +10 -1
  62. package/node_modules/@xrkseek/server-config/dist/index.js.map +1 -1
  63. package/package.json +2 -2
  64. package/product-web/boot.json +1 -1
  65. package/product-web/plugins/@xrkseek/client-locale/client.js +2 -2
  66. package/product-web/plugins/@xrkseek/client-ui-agent-preset/client.js +36 -36
  67. package/product-web/plugins/@xrkseek/client-ui-commands/client.js +8 -8
  68. package/product-web/plugins/@xrkseek/client-ui-conversation/client.js +154 -154
  69. package/product-web/plugins/@xrkseek/client-ui-deliverables/client.js +5 -5
  70. package/product-web/plugins/@xrkseek/client-ui-directory-picker-browse/client.js +27 -27
  71. package/product-web/plugins/@xrkseek/client-ui-goal/client.js +7 -7
  72. package/product-web/plugins/@xrkseek/client-ui-input-trigger/client.js +6 -6
  73. package/product-web/plugins/@xrkseek/client-ui-jobs/client.js +9 -9
  74. package/product-web/plugins/@xrkseek/client-ui-layout/client.js +3 -3
  75. package/product-web/plugins/@xrkseek/client-ui-message-feedback/client.js +4 -4
  76. package/product-web/plugins/@xrkseek/client-ui-model-selection/client.js +17 -17
  77. package/product-web/plugins/@xrkseek/client-ui-permission-presets/client.js +3 -3
  78. package/product-web/plugins/@xrkseek/client-ui-plan/client.js +1 -1
  79. package/product-web/plugins/@xrkseek/client-ui-settings-general/client.js +15 -15
  80. package/product-web/plugins/@xrkseek/client-ui-settings-models/client.js +52 -52
  81. package/product-web/plugins/@xrkseek/client-ui-settings-plugin-inventory/client.js +12 -12
  82. package/product-web/plugins/@xrkseek/client-ui-settings-plugins/client.js +42 -42
  83. package/product-web/plugins/@xrkseek/client-ui-sidebar/client.js +15 -15
  84. package/product-web/plugins/@xrkseek/client-ui-skill/client.js +12 -12
  85. package/product-web/plugins/@xrkseek/client-ui-subagent/client.js +18 -18
  86. package/product-web/plugins/@xrkseek/client-ui-theme/client.js +3 -3
  87. package/product-web/plugins/@xrkseek/client-ui-tool/client.js +37 -37
  88. package/product-web/plugins/@xrkseek/client-ui-trajectory/client.js +145 -145
  89. package/product-web/plugins/@xrkseek/client-ui-user-questions/client.js +24 -24
  90. package/product-web/plugins/@xrkseek/client-ui-workflow-run/client.js +15 -15
  91. package/product-web/plugins/@xrkseek/client-ui-workspace/client.js +55 -55
@@ -0,0 +1,109 @@
1
+ /**
2
+ * High-level plugin install / remove / list for `xrk-harness plugin`.
3
+ */
4
+ import { mkdirSync } from "node:fs";
5
+ import { homedir } from "node:os";
6
+ import path from "node:path";
7
+ import { defaultPluginsDir } from "@xrkseek/server-config";
8
+ import { classifyPackage } from "./classify.js";
9
+ import { fetchPackage } from "./fetch-pack.js";
10
+ import { installClientBundle, removeClientBundle, } from "./install-client.js";
11
+ import { installProcessPlugin, removeProcessPlugin, } from "./install-process.js";
12
+ import { readInventory, reconcileBoot, removeInventoryEntry, upsertInventoryEntry, } from "./inventory.js";
13
+ import { remapInjectList } from "./remap-inject.js";
14
+ export { anchorPathSpec, fetchPackage } from "./fetch-pack.js";
15
+ export { classifyPackage } from "./classify.js";
16
+ export { remapInjectId, remapInjectList } from "./remap-inject.js";
17
+ export { readInventory, reconcileBoot, } from "./inventory.js";
18
+ const defaultIo = {
19
+ log: (line) => {
20
+ process.stdout.write(`${line}\n`);
21
+ },
22
+ warn: (line) => {
23
+ process.stderr.write(`${line}\n`);
24
+ },
25
+ };
26
+ function expandPath(p) {
27
+ if (p === "~")
28
+ return homedir();
29
+ if (p.startsWith("~/") || p.startsWith("~\\")) {
30
+ return path.resolve(homedir(), p.slice(2));
31
+ }
32
+ return path.resolve(p);
33
+ }
34
+ /** Resolve plugins root: `XRK_PLUGINS_DIR` or `{XRK_HOME}/plugins`. */
35
+ export function resolvePluginsDir(env = process.env) {
36
+ const override = env.XRK_PLUGINS_DIR?.trim();
37
+ if (override)
38
+ return expandPath(override);
39
+ return defaultPluginsDir(env);
40
+ }
41
+ export function addPlugin(spec, options = {}) {
42
+ const io = options.io ?? defaultIo;
43
+ const env = options.env ?? process.env;
44
+ const pluginsDir = options.pluginsDir ?? resolvePluginsDir(env);
45
+ const cwd = options.cwd ?? process.cwd();
46
+ mkdirSync(pluginsDir, { recursive: true });
47
+ const unpacked = fetchPackage(spec, cwd);
48
+ try {
49
+ const classified = classifyPackage(unpacked.root, unpacked.pkg);
50
+ const { inject, dropped } = remapInjectList(classified.clientInject);
51
+ for (const d of dropped) {
52
+ io.warn(`xrk-harness: warning: dropped unknown inject ${JSON.stringify(d)}`);
53
+ }
54
+ if (classified.kind === "client" || classified.kind === "both") {
55
+ installClientBundle(pluginsDir, classified);
56
+ }
57
+ if (classified.kind === "process" || classified.kind === "both") {
58
+ installProcessPlugin(pluginsDir, classified);
59
+ }
60
+ const entry = {
61
+ name: classified.name,
62
+ version: classified.version,
63
+ kind: classified.kind,
64
+ source: spec,
65
+ installedAt: new Date().toISOString(),
66
+ ...(classified.kind === "client" || classified.kind === "both"
67
+ ? {
68
+ clientInject: inject,
69
+ ...(classified.clientImmediately
70
+ ? { clientImmediately: true }
71
+ : {}),
72
+ }
73
+ : {}),
74
+ };
75
+ upsertInventoryEntry(pluginsDir, entry);
76
+ reconcileBoot(pluginsDir);
77
+ io.log(`xrk-harness: installed ${entry.name}@${entry.version} (${entry.kind}) → ${pluginsDir}`);
78
+ return entry;
79
+ }
80
+ finally {
81
+ unpacked.cleanup();
82
+ }
83
+ }
84
+ export function removePlugin(name, options = {}) {
85
+ const io = options.io ?? defaultIo;
86
+ const env = options.env ?? process.env;
87
+ const pluginsDir = options.pluginsDir ?? resolvePluginsDir(env);
88
+ const inv = readInventory(pluginsDir);
89
+ const entry = inv.packages[name];
90
+ if (!entry) {
91
+ throw new Error(`plugin not installed: ${name}`);
92
+ }
93
+ if (entry.kind === "client" || entry.kind === "both") {
94
+ removeClientBundle(pluginsDir, name);
95
+ }
96
+ if (entry.kind === "process" || entry.kind === "both") {
97
+ removeProcessPlugin(pluginsDir, name);
98
+ }
99
+ removeInventoryEntry(pluginsDir, name);
100
+ reconcileBoot(pluginsDir);
101
+ io.log(`xrk-harness: removed ${name}`);
102
+ }
103
+ export function listPlugins(options = {}) {
104
+ const env = options.env ?? process.env;
105
+ const pluginsDir = options.pluginsDir ?? resolvePluginsDir(env);
106
+ const inv = readInventory(pluginsDir);
107
+ return Object.values(inv.packages).sort((a, b) => a.name.localeCompare(b.name));
108
+ }
109
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/plugin/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,4 @@
1
+ import type { ClassifiedPackage } from "./classify.js";
2
+ export declare function installClientBundle(pluginsDir: string, classified: ClassifiedPackage): void;
3
+ export declare function removeClientBundle(pluginsDir: string, name: string): void;
4
+ //# sourceMappingURL=install-client.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"install-client.d.ts","sourceRoot":"","sources":["../../src/plugin/install-client.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAGvD,wBAAgB,mBAAmB,CACjC,UAAU,EAAE,MAAM,EAClB,UAAU,EAAE,iBAAiB,GAC5B,IAAI,CAYN;AAED,wBAAgB,kBAAkB,CAAC,UAAU,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI,CAYzE"}
@@ -0,0 +1,34 @@
1
+ /**
2
+ * Stage a client plugin: copy client.js (+ optional LICENSE) under web/plugins.
3
+ */
4
+ import { copyFileSync, existsSync, mkdirSync, rmSync } from "node:fs";
5
+ import path from "node:path";
6
+ import { clientInstallDir } from "./inventory.js";
7
+ export function installClientBundle(pluginsDir, classified) {
8
+ if (!classified.clientJs) {
9
+ throw new Error(`${classified.name}: missing client.js`);
10
+ }
11
+ const destDir = clientInstallDir(pluginsDir, classified.name);
12
+ rmSync(destDir, { recursive: true, force: true });
13
+ mkdirSync(destDir, { recursive: true });
14
+ copyFileSync(classified.clientJs, path.join(destDir, "client.js"));
15
+ const license = path.join(classified.root, "LICENSE");
16
+ if (existsSync(license)) {
17
+ copyFileSync(license, path.join(destDir, "LICENSE"));
18
+ }
19
+ }
20
+ export function removeClientBundle(pluginsDir, name) {
21
+ const destDir = clientInstallDir(pluginsDir, name);
22
+ rmSync(destDir, { recursive: true, force: true });
23
+ // Prune empty @scope parent
24
+ if (name.startsWith("@")) {
25
+ const scopeDir = path.dirname(destDir);
26
+ try {
27
+ rmSync(scopeDir, { recursive: false });
28
+ }
29
+ catch {
30
+ /* not empty */
31
+ }
32
+ }
33
+ }
34
+ //# sourceMappingURL=install-client.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"install-client.js","sourceRoot":"","sources":["../../src/plugin/install-client.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AACtE,OAAO,IAAI,MAAM,WAAW,CAAC;AAE7B,OAAO,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAElD,MAAM,UAAU,mBAAmB,CACjC,UAAkB,EAClB,UAA6B;IAE7B,IAAI,CAAC,UAAU,CAAC,QAAQ,EAAE,CAAC;QACzB,MAAM,IAAI,KAAK,CAAC,GAAG,UAAU,CAAC,IAAI,qBAAqB,CAAC,CAAC;IAC3D,CAAC;IACD,MAAM,OAAO,GAAG,gBAAgB,CAAC,UAAU,EAAE,UAAU,CAAC,IAAI,CAAC,CAAC;IAC9D,MAAM,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;IAClD,SAAS,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IACxC,YAAY,CAAC,UAAU,CAAC,QAAQ,EAAE,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC,CAAC;IACnE,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;IACtD,IAAI,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;QACxB,YAAY,CAAC,OAAO,EAAE,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC,CAAC;IACvD,CAAC;AACH,CAAC;AAED,MAAM,UAAU,kBAAkB,CAAC,UAAkB,EAAE,IAAY;IACjE,MAAM,OAAO,GAAG,gBAAgB,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC;IACnD,MAAM,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;IAClD,4BAA4B;IAC5B,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;QACzB,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QACvC,IAAI,CAAC;YACH,MAAM,CAAC,QAAQ,EAAE,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC,CAAC;QACzC,CAAC;QAAC,MAAM,CAAC;YACP,eAAe;QACjB,CAAC;IACH,CAAC;AACH,CAAC"}
@@ -0,0 +1,4 @@
1
+ import type { ClassifiedPackage } from "./classify.js";
2
+ export declare function installProcessPlugin(pluginsDir: string, classified: ClassifiedPackage): void;
3
+ export declare function removeProcessPlugin(pluginsDir: string, name: string): void;
4
+ //# sourceMappingURL=install-process.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"install-process.d.ts","sourceRoot":"","sources":["../../src/plugin/install-process.ts"],"names":[],"mappings":"AAaA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAkBvD,wBAAgB,oBAAoB,CAClC,UAAU,EAAE,MAAM,EAClB,UAAU,EAAE,iBAAiB,GAC5B,IAAI,CAQN;AAED,wBAAgB,mBAAmB,CAAC,UAAU,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI,CAW1E"}
@@ -0,0 +1,46 @@
1
+ /**
2
+ * Stage a process plugin into a discoverable directory under pluginsDir.
3
+ * Copies the unpacked package tree (skips nested node_modules).
4
+ */
5
+ import { cpSync, existsSync, mkdirSync, readdirSync, rmSync, statSync, } from "node:fs";
6
+ import path from "node:path";
7
+ import { processInstallDir } from "./inventory.js";
8
+ function copyTree(src, dest) {
9
+ mkdirSync(dest, { recursive: true });
10
+ for (const name of readdirSync(src)) {
11
+ if (name === "node_modules" || name === ".git")
12
+ continue;
13
+ const from = path.join(src, name);
14
+ const to = path.join(dest, name);
15
+ const st = statSync(from);
16
+ if (st.isDirectory()) {
17
+ copyTree(from, to);
18
+ }
19
+ else {
20
+ cpSync(from, to);
21
+ }
22
+ }
23
+ }
24
+ export function installProcessPlugin(pluginsDir, classified) {
25
+ const dest = processInstallDir(pluginsDir, classified.name);
26
+ rmSync(dest, { recursive: true, force: true });
27
+ mkdirSync(path.dirname(dest), { recursive: true });
28
+ copyTree(classified.root, dest);
29
+ if (!existsSync(path.join(dest, "package.json"))) {
30
+ throw new Error(`${classified.name}: process install missing package.json`);
31
+ }
32
+ }
33
+ export function removeProcessPlugin(pluginsDir, name) {
34
+ const dest = processInstallDir(pluginsDir, name);
35
+ rmSync(dest, { recursive: true, force: true });
36
+ if (name.startsWith("@")) {
37
+ const scopeDir = path.dirname(dest);
38
+ try {
39
+ rmSync(scopeDir, { recursive: false });
40
+ }
41
+ catch {
42
+ /* not empty */
43
+ }
44
+ }
45
+ }
46
+ //# sourceMappingURL=install-process.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"install-process.js","sourceRoot":"","sources":["../../src/plugin/install-process.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,EACL,MAAM,EACN,UAAU,EACV,SAAS,EACT,WAAW,EACX,MAAM,EACN,QAAQ,GACT,MAAM,SAAS,CAAC;AACjB,OAAO,IAAI,MAAM,WAAW,CAAC;AAE7B,OAAO,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AAEnD,SAAS,QAAQ,CAAC,GAAW,EAAE,IAAY;IACzC,SAAS,CAAC,IAAI,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IACrC,KAAK,MAAM,IAAI,IAAI,WAAW,CAAC,GAAG,CAAC,EAAE,CAAC;QACpC,IAAI,IAAI,KAAK,cAAc,IAAI,IAAI,KAAK,MAAM;YAAE,SAAS;QACzD,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;QAClC,MAAM,EAAE,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QACjC,MAAM,EAAE,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC;QAC1B,IAAI,EAAE,CAAC,WAAW,EAAE,EAAE,CAAC;YACrB,QAAQ,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;QACrB,CAAC;aAAM,CAAC;YACN,MAAM,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;QACnB,CAAC;IACH,CAAC;AACH,CAAC;AAED,MAAM,UAAU,oBAAoB,CAClC,UAAkB,EAClB,UAA6B;IAE7B,MAAM,IAAI,GAAG,iBAAiB,CAAC,UAAU,EAAE,UAAU,CAAC,IAAI,CAAC,CAAC;IAC5D,MAAM,CAAC,IAAI,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;IAC/C,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IACnD,QAAQ,CAAC,UAAU,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;IAChC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,cAAc,CAAC,CAAC,EAAE,CAAC;QACjD,MAAM,IAAI,KAAK,CAAC,GAAG,UAAU,CAAC,IAAI,wCAAwC,CAAC,CAAC;IAC9E,CAAC;AACH,CAAC;AAED,MAAM,UAAU,mBAAmB,CAAC,UAAkB,EAAE,IAAY;IAClE,MAAM,IAAI,GAAG,iBAAiB,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC;IACjD,MAAM,CAAC,IAAI,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;IAC/C,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;QACzB,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QACpC,IAAI,CAAC;YACH,MAAM,CAAC,QAAQ,EAAE,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC,CAAC;QACzC,CAAC;QAAC,MAAM,CAAC;YACP,eAAe;QACjB,CAAC;IACH,CAAC;AACH,CAAC"}
@@ -0,0 +1,42 @@
1
+ import type { PluginKind } from "./classify.js";
2
+ export declare const INVENTORY_FILE = ".xrk-plugins.json";
3
+ export interface InventoryEntry {
4
+ readonly name: string;
5
+ readonly version: string;
6
+ readonly kind: PluginKind;
7
+ /** Original add spec (registry / path / github). */
8
+ readonly source: string;
9
+ readonly installedAt: string;
10
+ /** Remapped client inject when kind includes client. */
11
+ readonly clientInject?: readonly string[];
12
+ readonly clientImmediately?: boolean;
13
+ }
14
+ export interface PluginInventory {
15
+ readonly rev: number;
16
+ readonly packages: Record<string, InventoryEntry>;
17
+ }
18
+ export interface WebBootEntry {
19
+ readonly id: string;
20
+ readonly url: string;
21
+ readonly rev: string;
22
+ readonly inject: readonly string[];
23
+ readonly immediately?: boolean;
24
+ }
25
+ export interface WebBootManifest {
26
+ readonly rev: string;
27
+ readonly entries: readonly WebBootEntry[];
28
+ }
29
+ export declare function inventoryPath(pluginsDir: string): string;
30
+ export declare function readInventory(pluginsDir: string): PluginInventory;
31
+ export declare function writeInventory(pluginsDir: string, inventory: PluginInventory): void;
32
+ export declare function upsertInventoryEntry(pluginsDir: string, entry: InventoryEntry): PluginInventory;
33
+ export declare function removeInventoryEntry(pluginsDir: string, name: string): PluginInventory;
34
+ /** Absolute install dir for a process plugin package name. */
35
+ export declare function processInstallDir(pluginsDir: string, name: string): string;
36
+ /** Absolute dir for staged client.js. */
37
+ export declare function clientInstallDir(pluginsDir: string, name: string): string;
38
+ /**
39
+ * Rewrite `web/boot.json` from inventory client entries only.
40
+ */
41
+ export declare function reconcileBoot(pluginsDir: string): WebBootManifest;
42
+ //# sourceMappingURL=inventory.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"inventory.d.ts","sourceRoot":"","sources":["../../src/plugin/inventory.ts"],"names":[],"mappings":"AAYA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAEhD,eAAO,MAAM,cAAc,sBAAsB,CAAC;AAElD,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,IAAI,EAAE,UAAU,CAAC;IAC1B,oDAAoD;IACpD,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,wDAAwD;IACxD,QAAQ,CAAC,YAAY,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAC1C,QAAQ,CAAC,iBAAiB,CAAC,EAAE,OAAO,CAAC;CACtC;AAED,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC;CACnD;AAED,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,MAAM,EAAE,SAAS,MAAM,EAAE,CAAC;IACnC,QAAQ,CAAC,WAAW,CAAC,EAAE,OAAO,CAAC;CAChC;AAED,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,OAAO,EAAE,SAAS,YAAY,EAAE,CAAC;CAC3C;AAED,wBAAgB,aAAa,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,CAExD;AAED,wBAAgB,aAAa,CAAC,UAAU,EAAE,MAAM,GAAG,eAAe,CAoBjE;AAED,wBAAgB,cAAc,CAC5B,UAAU,EAAE,MAAM,EAClB,SAAS,EAAE,eAAe,GACzB,IAAI,CAON;AAED,wBAAgB,oBAAoB,CAClC,UAAU,EAAE,MAAM,EAClB,KAAK,EAAE,cAAc,GACpB,eAAe,CAQjB;AAED,wBAAgB,oBAAoB,CAClC,UAAU,EAAE,MAAM,EAClB,IAAI,EAAE,MAAM,GACX,eAAe,CAUjB;AAED,8DAA8D;AAC9D,wBAAgB,iBAAiB,CAAC,UAAU,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,CAS1E;AAED,yCAAyC;AACzC,wBAAgB,gBAAgB,CAAC,UAAU,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,CAEzE;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,UAAU,EAAE,MAAM,GAAG,eAAe,CA2BjE"}
@@ -0,0 +1,105 @@
1
+ /**
2
+ * Inventory of CLI-installed plugins under `{pluginsDir}/.xrk-plugins.json`.
3
+ * `reconcileBoot` regenerates `{pluginsDir}/web/boot.json` from this list.
4
+ */
5
+ import { existsSync, mkdirSync, readFileSync, rmSync, writeFileSync, } from "node:fs";
6
+ import path from "node:path";
7
+ export const INVENTORY_FILE = ".xrk-plugins.json";
8
+ export function inventoryPath(pluginsDir) {
9
+ return path.join(pluginsDir, INVENTORY_FILE);
10
+ }
11
+ export function readInventory(pluginsDir) {
12
+ const file = inventoryPath(pluginsDir);
13
+ if (!existsSync(file)) {
14
+ return { rev: 1, packages: {} };
15
+ }
16
+ try {
17
+ const raw = JSON.parse(readFileSync(file, "utf8"));
18
+ if (!raw || typeof raw !== "object")
19
+ return { rev: 1, packages: {} };
20
+ const o = raw;
21
+ const packages = o.packages && typeof o.packages === "object" && !Array.isArray(o.packages)
22
+ ? o.packages
23
+ : {};
24
+ return {
25
+ rev: typeof o.rev === "number" ? o.rev : 1,
26
+ packages,
27
+ };
28
+ }
29
+ catch {
30
+ return { rev: 1, packages: {} };
31
+ }
32
+ }
33
+ export function writeInventory(pluginsDir, inventory) {
34
+ mkdirSync(pluginsDir, { recursive: true });
35
+ writeFileSync(inventoryPath(pluginsDir), `${JSON.stringify(inventory, null, 2)}\n`, "utf8");
36
+ }
37
+ export function upsertInventoryEntry(pluginsDir, entry) {
38
+ const inv = readInventory(pluginsDir);
39
+ const next = {
40
+ rev: inv.rev,
41
+ packages: { ...inv.packages, [entry.name]: entry },
42
+ };
43
+ writeInventory(pluginsDir, next);
44
+ return next;
45
+ }
46
+ export function removeInventoryEntry(pluginsDir, name) {
47
+ const inv = readInventory(pluginsDir);
48
+ if (!(name in inv.packages)) {
49
+ throw new Error(`plugin not installed: ${name}`);
50
+ }
51
+ const packages = { ...inv.packages };
52
+ delete packages[name];
53
+ const next = { rev: inv.rev, packages };
54
+ writeInventory(pluginsDir, next);
55
+ return next;
56
+ }
57
+ /** Absolute install dir for a process plugin package name. */
58
+ export function processInstallDir(pluginsDir, name) {
59
+ if (name.startsWith("@")) {
60
+ const [scope, pkg] = name.split("/");
61
+ if (!scope || !pkg) {
62
+ throw new Error(`invalid scoped package name: ${name}`);
63
+ }
64
+ return path.join(pluginsDir, scope, pkg);
65
+ }
66
+ return path.join(pluginsDir, name);
67
+ }
68
+ /** Absolute dir for staged client.js. */
69
+ export function clientInstallDir(pluginsDir, name) {
70
+ return path.join(pluginsDir, "web", "plugins", ...name.split("/"));
71
+ }
72
+ /**
73
+ * Rewrite `web/boot.json` from inventory client entries only.
74
+ */
75
+ export function reconcileBoot(pluginsDir) {
76
+ const inv = readInventory(pluginsDir);
77
+ const entries = [];
78
+ for (const entry of Object.values(inv.packages)) {
79
+ if (entry.kind !== "client" && entry.kind !== "both")
80
+ continue;
81
+ entries.push({
82
+ id: entry.name,
83
+ url: `/plugins/${entry.name}/client.js`,
84
+ rev: entry.version,
85
+ inject: entry.clientInject ?? [],
86
+ ...(entry.clientImmediately ? { immediately: true } : {}),
87
+ });
88
+ }
89
+ entries.sort((a, b) => a.id.localeCompare(b.id));
90
+ const manifest = {
91
+ rev: `xrk-plugins-${Date.now()}`,
92
+ entries,
93
+ };
94
+ const webDir = path.join(pluginsDir, "web");
95
+ mkdirSync(webDir, { recursive: true });
96
+ const bootPath = path.join(webDir, "boot.json");
97
+ if (entries.length === 0) {
98
+ if (existsSync(bootPath))
99
+ rmSync(bootPath, { force: true });
100
+ return manifest;
101
+ }
102
+ writeFileSync(bootPath, `${JSON.stringify(manifest, null, 2)}\n`, "utf8");
103
+ return manifest;
104
+ }
105
+ //# sourceMappingURL=inventory.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"inventory.js","sourceRoot":"","sources":["../../src/plugin/inventory.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,16 @@
1
+ /**
2
+ * Remap DSH client boot inject ids onto XRK product-shell packages.
3
+ * Unknown `@deepseek-ai/*` entries are dropped (with optional warn) so boot
4
+ * does not stall on missing ModuleLoader rows.
5
+ */
6
+ export interface RemapInjectResult {
7
+ readonly inject: readonly string[];
8
+ readonly dropped: readonly string[];
9
+ }
10
+ /**
11
+ * Map one inject id. Returns `undefined` when the id should be dropped.
12
+ */
13
+ export declare function remapInjectId(id: string): string | undefined;
14
+ /** Remap a full inject list; preserve order, dedupe. */
15
+ export declare function remapInjectList(inject: readonly string[] | undefined): RemapInjectResult;
16
+ //# sourceMappingURL=remap-inject.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"remap-inject.d.ts","sourceRoot":"","sources":["../../src/plugin/remap-inject.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,MAAM,EAAE,SAAS,MAAM,EAAE,CAAC;IACnC,QAAQ,CAAC,OAAO,EAAE,SAAS,MAAM,EAAE,CAAC;CACrC;AAaD;;GAEG;AACH,wBAAgB,aAAa,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAa5D;AAED,wDAAwD;AACxD,wBAAgB,eAAe,CAC7B,MAAM,EAAE,SAAS,MAAM,EAAE,GAAG,SAAS,GACpC,iBAAiB,CAenB"}
@@ -0,0 +1,52 @@
1
+ const EXACT = {
2
+ "@deepseek-ai/dsh-client-runtime": "@xrkseek/client-runtime",
3
+ "@deepseek-ai/dsh-client-locale": "@xrkseek/client-locale",
4
+ "@deepseek-ai/dsh-client-ui-slots": "@xrkseek/client-ui-slots",
5
+ "@deepseek-ai/dsh-client-ui-primitives": "@xrkseek/client-ui-primitives",
6
+ "@deepseek-ai/dsh-client-ui-conversation": "@xrkseek/client-ui-conversation",
7
+ "@deepseek-ai/dsh-client-ui-attachment": "@xrkseek/client-ui-attachment",
8
+ "@deepseek-ai/dsh-client-web-react": "@xrkseek/client-web-react",
9
+ "@deepseek-ai/dsh-client-schema-form": "@xrkseek/client-schema-form",
10
+ };
11
+ /**
12
+ * Map one inject id. Returns `undefined` when the id should be dropped.
13
+ */
14
+ export function remapInjectId(id) {
15
+ const trimmed = id.trim();
16
+ if (!trimmed)
17
+ return undefined;
18
+ if (trimmed.startsWith("@xrkseek/"))
19
+ return trimmed;
20
+ const exact = EXACT[trimmed];
21
+ if (exact)
22
+ return exact;
23
+ // @deepseek-ai/dsh-client-ui-foo → @xrkseek/client-ui-foo
24
+ const ui = /^@deepseek-ai\/dsh-client-(ui-.+)$/.exec(trimmed);
25
+ if (ui?.[1])
26
+ return `@xrkseek/client-${ui[1]}`;
27
+ const client = /^@deepseek-ai\/dsh-client-(.+)$/.exec(trimmed);
28
+ if (client?.[1])
29
+ return `@xrkseek/client-${client[1]}`;
30
+ if (trimmed.startsWith("@deepseek-ai/"))
31
+ return undefined;
32
+ return trimmed;
33
+ }
34
+ /** Remap a full inject list; preserve order, dedupe. */
35
+ export function remapInjectList(inject) {
36
+ const out = [];
37
+ const dropped = [];
38
+ const seen = new Set();
39
+ for (const raw of inject ?? []) {
40
+ const mapped = remapInjectId(raw);
41
+ if (mapped === undefined) {
42
+ dropped.push(raw);
43
+ continue;
44
+ }
45
+ if (seen.has(mapped))
46
+ continue;
47
+ seen.add(mapped);
48
+ out.push(mapped);
49
+ }
50
+ return { inject: out, dropped };
51
+ }
52
+ //# sourceMappingURL=remap-inject.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"remap-inject.js","sourceRoot":"","sources":["../../src/plugin/remap-inject.ts"],"names":[],"mappings":"AAUA,MAAM,KAAK,GAAqC;IAC9C,iCAAiC,EAAE,yBAAyB;IAC5D,gCAAgC,EAAE,wBAAwB;IAC1D,kCAAkC,EAAE,0BAA0B;IAC9D,uCAAuC,EAAE,+BAA+B;IACxE,yCAAyC,EAAE,iCAAiC;IAC5E,uCAAuC,EAAE,+BAA+B;IACxE,mCAAmC,EAAE,2BAA2B;IAChE,qCAAqC,EAAE,6BAA6B;CACrE,CAAC;AAEF;;GAEG;AACH,MAAM,UAAU,aAAa,CAAC,EAAU;IACtC,MAAM,OAAO,GAAG,EAAE,CAAC,IAAI,EAAE,CAAC;IAC1B,IAAI,CAAC,OAAO;QAAE,OAAO,SAAS,CAAC;IAC/B,IAAI,OAAO,CAAC,UAAU,CAAC,WAAW,CAAC;QAAE,OAAO,OAAO,CAAC;IACpD,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,CAAC;IAC7B,IAAI,KAAK;QAAE,OAAO,KAAK,CAAC;IACxB,0DAA0D;IAC1D,MAAM,EAAE,GAAG,oCAAoC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAC9D,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC;QAAE,OAAO,mBAAmB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IAC/C,MAAM,MAAM,GAAG,iCAAiC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAC/D,IAAI,MAAM,EAAE,CAAC,CAAC,CAAC;QAAE,OAAO,mBAAmB,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC;IACvD,IAAI,OAAO,CAAC,UAAU,CAAC,eAAe,CAAC;QAAE,OAAO,SAAS,CAAC;IAC1D,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,wDAAwD;AACxD,MAAM,UAAU,eAAe,CAC7B,MAAqC;IAErC,MAAM,GAAG,GAAa,EAAE,CAAC;IACzB,MAAM,OAAO,GAAa,EAAE,CAAC;IAC7B,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAC;IAC/B,KAAK,MAAM,GAAG,IAAI,MAAM,IAAI,EAAE,EAAE,CAAC;QAC/B,MAAM,MAAM,GAAG,aAAa,CAAC,GAAG,CAAC,CAAC;QAClC,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;YACzB,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YAClB,SAAS;QACX,CAAC;QACD,IAAI,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC;YAAE,SAAS;QAC/B,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QACjB,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACnB,CAAC;IACD,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,OAAO,EAAE,CAAC;AAClC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -85,11 +85,13 @@ async function invokeLlm(input, req, onChunk) {
85
85
  function buildModelRequest(input) {
86
86
  const derived = deriveMessages(input.events);
87
87
  assertModelVisible(input.events, derived);
88
- const toolDefs = input.tools.list().map((t) => ({
88
+ const toolDefs = [...input.tools.list()]
89
+ .map((t) => ({
89
90
  name: t.name,
90
91
  description: t.description,
91
92
  parameters: t.parameters,
92
- }));
93
+ }))
94
+ .sort((a, b) => (a.name < b.name ? -1 : a.name > b.name ? 1 : 0));
93
95
  const useAssemble = input.assemble && input.assemble.enabled !== false;
94
96
  if (!useAssemble) {
95
97
  const planExtra = foldPlanMode(input.events)
@@ -141,6 +143,10 @@ function buildModelRequest(input) {
141
143
  sessionId: input.sessionId,
142
144
  ...(input.assemble?.owner ? { owner: input.assemble.owner } : {}),
143
145
  },
146
+ // Follow-ups: keep conversation prefix byte-stable for provider cache
147
+ // (DSH append-only). Marker + changing clock only on the opening step.
148
+ includeCurrentMarker: input.firstStep === true,
149
+ includeVolatileTime: input.firstStep === true,
144
150
  tools: toolDefs,
145
151
  ...(input.assemble?.workspaceBlocks ||
146
152
  input.slashSystemExtra ||
@@ -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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"}
@@ -2,10 +2,10 @@
2
2
 
3
3
  | API | 作用 |
4
4
  |-----|------|
5
- | `assembleThreeLayers` | 骨架 system(+ workspaceBlocks)· 历史 · skeleton user · volatile user |
5
+ | `assembleThreeLayers` | 骨架 system(+ workspaceBlocks)· 历史 · skeleton user · volatile user;**tools 按 name 字典序** |
6
6
  | `createSystemPromptAssembler` | 分段 system 字符串(preset persona) |
7
7
  | `createOutboundPipeline` / `createDefaultOutbound` | 出站链:slash → assemble → toolPair → compaction → window → invariant |
8
8
 
9
9
  **注意:** 出站默认 `slashRecipeStep` 仍为 noop;传入 `createDefaultOutbound({ resolveSlash })` 或用 `createSlashRecipeStep`。热路径 slash 在 agent-loop `assemble.resolveSlash`。真 compaction 在 agent-loop;recipe 解析在 `@xrkseek/workspace`。
10
10
 
11
- 易变层不得进入 system(保 prompt cache)— 有单测锁定。
11
+ 易变层不得进入 system(保 prompt cache)— 有单测锁定。同 turn 的后续 step:`includeCurrentMarker` / `includeVolatileTime` 默认关(agent-loop),避免 `[current message]` 与每秒时钟挪动对话前缀。
@@ -1,7 +1,7 @@
1
1
  import type { SessionEvent } from "@xrkseek/protocol";
2
2
  import { type ThreeLayerInput } from "./three-layer.js";
3
3
  import { type PipelineStep, type SlashResolveFn } from "./outbound.js";
4
- export { assembleThreeLayers, buildSkeletonSystem, buildSkeletonUser, buildVolatileUser, mergeHistory, type AssembledRequest, type SkeletonSystemInput, type SkeletonUserInput, type ThreeLayerInput, type VolatileUserInput, } from "./three-layer.js";
4
+ export { assembleThreeLayers, buildSkeletonSystem, buildSkeletonUser, buildVolatileUser, mergeHistory, orderToolsForWire, type AssembledRequest, type SkeletonSystemInput, type SkeletonUserInput, type ThreeLayerInput, type VolatileUserInput, } from "./three-layer.js";
5
5
  export { compactionStep, createAssembleStep, createContextWindowStep, createOutboundPipeline, createSlashRecipeStep, createToolPairStep, slashRecipeStep, type OutboundPipeline, type PipelineStep, type PipelineStepContext, type SlashExpandResult, type SlashResolveFn, } from "./outbound.js";
6
6
  export interface PromptSection {
7
7
  readonly id: string;