@xrkseek/harness 0.6.0-rc.2 → 0.6.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/node_modules/@xrkseek/exec-fs/dist/index.d.ts.map +1 -1
- package/node_modules/@xrkseek/exec-fs/dist/index.js +65 -8
- package/node_modules/@xrkseek/exec-fs/dist/index.js.map +1 -1
- package/node_modules/@xrkseek/exec-fs/dist/routing-prompt.d.ts.map +1 -1
- package/node_modules/@xrkseek/exec-fs/dist/routing-prompt.js +5 -3
- package/node_modules/@xrkseek/exec-fs/dist/routing-prompt.js.map +1 -1
- package/node_modules/@xrkseek/exec-fs/dist/search.d.ts +2 -0
- package/node_modules/@xrkseek/exec-fs/dist/search.d.ts.map +1 -1
- package/node_modules/@xrkseek/exec-fs/dist/search.js.map +1 -1
- package/node_modules/@xrkseek/exec-pty/dist/backend.d.ts +5 -0
- package/node_modules/@xrkseek/exec-pty/dist/backend.d.ts.map +1 -1
- package/node_modules/@xrkseek/exec-pty/dist/backend.js +4 -1
- package/node_modules/@xrkseek/exec-pty/dist/backend.js.map +1 -1
- package/node_modules/@xrkseek/exec-pty/dist/index.d.ts +5 -0
- package/node_modules/@xrkseek/exec-pty/dist/index.d.ts.map +1 -1
- package/node_modules/@xrkseek/exec-pty/dist/index.js +3 -0
- package/node_modules/@xrkseek/exec-pty/dist/index.js.map +1 -1
- package/node_modules/@xrkseek/preset-harness/dist/tsconfig.tsbuildinfo +1 -1
- package/node_modules/@xrkseek/preset-minimal/dist/tsconfig.tsbuildinfo +1 -1
- package/node_modules/@xrkseek/preset-server/dist/tsconfig.tsbuildinfo +1 -1
- package/node_modules/@xrkseek/server-face/dist/approvals.d.ts.map +1 -1
- package/node_modules/@xrkseek/server-face/dist/approvals.js +6 -3
- package/node_modules/@xrkseek/server-face/dist/approvals.js.map +1 -1
- package/node_modules/@xrkseek/server-face/dist/index.d.ts +1 -1
- package/node_modules/@xrkseek/server-face/dist/index.d.ts.map +1 -1
- package/node_modules/@xrkseek/server-face/dist/index.js +1 -1
- package/node_modules/@xrkseek/server-face/dist/index.js.map +1 -1
- package/node_modules/@xrkseek/server-face/dist/permissions.d.ts +2 -1
- package/node_modules/@xrkseek/server-face/dist/permissions.d.ts.map +1 -1
- package/node_modules/@xrkseek/server-face/dist/permissions.js +6 -5
- package/node_modules/@xrkseek/server-face/dist/permissions.js.map +1 -1
- package/node_modules/@xrkseek/server-face/dist/session-capability.d.ts.map +1 -1
- package/node_modules/@xrkseek/server-face/dist/session-capability.js +4 -3
- package/node_modules/@xrkseek/server-face/dist/session-capability.js.map +1 -1
- package/node_modules/@xrkseek/server-face/dist/session-posture.d.ts +3 -3
- package/node_modules/@xrkseek/server-face/dist/session-posture.js +9 -9
- package/node_modules/@xrkseek/server-face/dist/session-posture.js.map +1 -1
- package/node_modules/@xrkseek/server-face/dist/xiangyang-skill-bodies/demand-translate.d.ts +4 -0
- package/node_modules/@xrkseek/server-face/dist/xiangyang-skill-bodies/demand-translate.d.ts.map +1 -0
- package/node_modules/@xrkseek/server-face/dist/xiangyang-skill-bodies/demand-translate.js +54 -0
- package/node_modules/@xrkseek/server-face/dist/xiangyang-skill-bodies/demand-translate.js.map +1 -0
- package/node_modules/@xrkseek/server-face/dist/xiangyang-skill-bodies/home-config.d.ts +4 -0
- package/node_modules/@xrkseek/server-face/dist/xiangyang-skill-bodies/home-config.d.ts.map +1 -0
- package/node_modules/@xrkseek/server-face/dist/xiangyang-skill-bodies/home-config.js +61 -0
- package/node_modules/@xrkseek/server-face/dist/xiangyang-skill-bodies/home-config.js.map +1 -0
- package/node_modules/@xrkseek/server-face/dist/xiangyang-skill-bodies/index.d.ts +9 -0
- package/node_modules/@xrkseek/server-face/dist/xiangyang-skill-bodies/index.d.ts.map +1 -0
- package/node_modules/@xrkseek/server-face/dist/xiangyang-skill-bodies/index.js +24 -0
- package/node_modules/@xrkseek/server-face/dist/xiangyang-skill-bodies/index.js.map +1 -0
- package/node_modules/@xrkseek/server-face/dist/xiangyang-skill-bodies/mainline-sideline.d.ts +4 -0
- package/node_modules/@xrkseek/server-face/dist/xiangyang-skill-bodies/mainline-sideline.d.ts.map +1 -0
- package/node_modules/@xrkseek/server-face/dist/xiangyang-skill-bodies/mainline-sideline.js +46 -0
- package/node_modules/@xrkseek/server-face/dist/xiangyang-skill-bodies/mainline-sideline.js.map +1 -0
- package/node_modules/@xrkseek/server-face/dist/xiangyang-skill-bodies/memory-polish.d.ts +4 -0
- package/node_modules/@xrkseek/server-face/dist/xiangyang-skill-bodies/memory-polish.d.ts.map +1 -0
- package/node_modules/@xrkseek/server-face/dist/xiangyang-skill-bodies/memory-polish.js +38 -0
- package/node_modules/@xrkseek/server-face/dist/xiangyang-skill-bodies/memory-polish.js.map +1 -0
- package/node_modules/@xrkseek/server-face/dist/xiangyang-skill-bodies/plugin-dev.d.ts +4 -0
- package/node_modules/@xrkseek/server-face/dist/xiangyang-skill-bodies/plugin-dev.d.ts.map +1 -0
- package/node_modules/@xrkseek/server-face/dist/xiangyang-skill-bodies/plugin-dev.js +114 -0
- package/node_modules/@xrkseek/server-face/dist/xiangyang-skill-bodies/plugin-dev.js.map +1 -0
- package/node_modules/@xrkseek/server-face/dist/xiangyang-skill-bodies/skill-merge.d.ts +4 -0
- package/node_modules/@xrkseek/server-face/dist/xiangyang-skill-bodies/skill-merge.d.ts.map +1 -0
- package/node_modules/@xrkseek/server-face/dist/xiangyang-skill-bodies/skill-merge.js +36 -0
- package/node_modules/@xrkseek/server-face/dist/xiangyang-skill-bodies/skill-merge.js.map +1 -0
- package/node_modules/@xrkseek/server-face/dist/xiangyang-skill-bodies/xrk-cleanup.d.ts +4 -0
- package/node_modules/@xrkseek/server-face/dist/xiangyang-skill-bodies/xrk-cleanup.d.ts.map +1 -0
- package/node_modules/@xrkseek/server-face/dist/xiangyang-skill-bodies/xrk-cleanup.js +61 -0
- package/node_modules/@xrkseek/server-face/dist/xiangyang-skill-bodies/xrk-cleanup.js.map +1 -0
- package/node_modules/@xrkseek/server-face/dist/xiangyang-skills.d.ts +15 -4
- package/node_modules/@xrkseek/server-face/dist/xiangyang-skills.d.ts.map +1 -1
- package/node_modules/@xrkseek/server-face/dist/xiangyang-skills.js +18 -92
- package/node_modules/@xrkseek/server-face/dist/xiangyang-skills.js.map +1 -1
- package/node_modules/@xrkseek/server-host/dist/index.d.ts +10 -0
- package/node_modules/@xrkseek/server-host/dist/index.d.ts.map +1 -1
- package/node_modules/@xrkseek/server-host/dist/index.js +14 -7
- package/node_modules/@xrkseek/server-host/dist/index.js.map +1 -1
- package/package.json +1 -1
|
@@ -1,113 +1,39 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Seed 向阳空间-only skills under the workspace `.xrk/skills` tree.
|
|
3
3
|
* Other workspaces do not get these files (workspace-scoped catalog).
|
|
4
|
+
*
|
|
5
|
+
* Product bodies live in `./xiangyang-skill-bodies/` and refresh when text
|
|
6
|
+
* changes (compare-and-write). Add sibling skill folders for local custom
|
|
7
|
+
* playbooks — seed never deletes unknown ids.
|
|
4
8
|
*/
|
|
5
|
-
import { mkdir, writeFile,
|
|
9
|
+
import { mkdir, writeFile, readFile } from "node:fs/promises";
|
|
6
10
|
import path from "node:path";
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
id: "xrk-xrk-cleanup",
|
|
10
|
-
body: [
|
|
11
|
-
"---",
|
|
12
|
-
"name: xrk-xrk-cleanup",
|
|
13
|
-
"description: >-",
|
|
14
|
-
" Reclaim disk under ~/.xrk and project .xrk (caches, orphans, temp).",
|
|
15
|
-
" Use when Harness litter grows or the user asks to tidy .xrk.",
|
|
16
|
-
"---",
|
|
17
|
-
"",
|
|
18
|
-
"# .xrk 垃圾清理",
|
|
19
|
-
"",
|
|
20
|
-
"范围:`~/.xrk` 与各工作区 `.xrk`(缓存、空 recipes、过期归档、明显 temp)。",
|
|
21
|
-
"",
|
|
22
|
-
"1. 先列体积与路径清单,确认后删;优先大文件与明确临时产物。",
|
|
23
|
-
"2. 保留:`settings.yaml` · `.credentials.yaml` · `sessions.db` · 用户改过的 skills。",
|
|
24
|
-
"3. 跨工作区:`workspace_list` → `workspace_session_prompt` 派清理,或本会话直接处理(full access)。",
|
|
25
|
-
"",
|
|
26
|
-
].join("\n"),
|
|
27
|
-
},
|
|
28
|
-
{
|
|
29
|
-
id: "xrk-skill-merge",
|
|
30
|
-
body: [
|
|
31
|
-
"---",
|
|
32
|
-
"name: xrk-skill-merge",
|
|
33
|
-
"description: >-",
|
|
34
|
-
" Merge overlapping skills across ~/.xrk/skills and workspace layers.",
|
|
35
|
-
" Use when skills duplicate, conflict, or the catalog is noisy.",
|
|
36
|
-
"---",
|
|
37
|
-
"",
|
|
38
|
-
"# 技能合并优化",
|
|
39
|
-
"",
|
|
40
|
-
"1. 对照 `~/.xrk/skills` 与工作区 `.xrk/skills` / `.agents/skills`。",
|
|
41
|
-
"2. 合并重复:真源一份;更新 `description` 触发词。",
|
|
42
|
-
"3. 用户改过的 SKILL.md:缺才写,或征得同意再改。",
|
|
43
|
-
"4. 合并后抽查 skill 工具 / `/skills`。",
|
|
44
|
-
"",
|
|
45
|
-
].join("\n"),
|
|
46
|
-
},
|
|
47
|
-
{
|
|
48
|
-
id: "xrk-memory-polish",
|
|
49
|
-
body: [
|
|
50
|
-
"---",
|
|
51
|
-
"name: xrk-memory-polish",
|
|
52
|
-
"description: >-",
|
|
53
|
-
" Polish curated memory (MEMORY.md): prune stale, fill gaps.",
|
|
54
|
-
" Use when memory is noisy, incomplete, or after long projects.",
|
|
55
|
-
"---",
|
|
56
|
-
"",
|
|
57
|
-
"# 记忆完善",
|
|
58
|
-
"",
|
|
59
|
-
"1. 读 MEMORY.md / Curated memory 现状。",
|
|
60
|
-
"2. 软删过时;补用户要求长期记住的事实。",
|
|
61
|
-
"3. 不写密钥与一次性调试噪声。",
|
|
62
|
-
"4. 改完用短摘要回报。",
|
|
63
|
-
"",
|
|
64
|
-
].join("\n"),
|
|
65
|
-
},
|
|
66
|
-
{
|
|
67
|
-
id: "xrk-plugin-dev-care",
|
|
68
|
-
body: [
|
|
69
|
-
"---",
|
|
70
|
-
"name: xrk-plugin-dev-care",
|
|
71
|
-
"description: >-",
|
|
72
|
-
" Author and verify xrkh process plugins (tools/prompt/commands/…).",
|
|
73
|
-
" Use when building extensions for XRK-Harness.",
|
|
74
|
-
"---",
|
|
75
|
-
"",
|
|
76
|
-
"# 插件开发",
|
|
77
|
-
"",
|
|
78
|
-
"1. 落点 `extensions/<id>/`;读 plugin-development 规格。",
|
|
79
|
-
"2. kind:`tools` · `prompt` · `commands` · `channel` · `policy` · `llm`。",
|
|
80
|
-
"3. 验证:`xrkh plugin`;密钥走 Credentials。",
|
|
81
|
-
"",
|
|
82
|
-
].join("\n"),
|
|
83
|
-
},
|
|
84
|
-
];
|
|
85
|
-
async function exists(p) {
|
|
86
|
-
try {
|
|
87
|
-
await access(p);
|
|
88
|
-
return true;
|
|
89
|
-
}
|
|
90
|
-
catch {
|
|
91
|
-
return false;
|
|
92
|
-
}
|
|
93
|
-
}
|
|
11
|
+
import { XIANGYANG_SKILL_SEEDS, XIANGYANG_SKILLS_REVISION, } from "./xiangyang-skill-bodies/index.js";
|
|
12
|
+
export { XIANGYANG_SKILL_SEEDS, XIANGYANG_SKILL_IDS, XIANGYANG_SKILLS_REVISION, } from "./xiangyang-skill-bodies/index.js";
|
|
94
13
|
/**
|
|
95
|
-
* Write
|
|
14
|
+
* Write / refresh product skill folders under the 向阳空间 workspace.
|
|
96
15
|
* @param xiangyangRoot - Absolute path of the reserved workspace directory.
|
|
97
16
|
*/
|
|
98
17
|
export async function seedXiangyangSkills(xiangyangRoot) {
|
|
99
18
|
const skillsRoot = path.join(xiangyangRoot, ".xrk", "skills");
|
|
100
19
|
await mkdir(skillsRoot, { recursive: true });
|
|
101
20
|
const installed = [];
|
|
102
|
-
for (const skill of
|
|
21
|
+
for (const skill of XIANGYANG_SKILL_SEEDS) {
|
|
103
22
|
const dir = path.join(skillsRoot, skill.id);
|
|
104
23
|
const file = path.join(dir, "SKILL.md");
|
|
105
|
-
|
|
24
|
+
let previous;
|
|
25
|
+
try {
|
|
26
|
+
previous = await readFile(file, "utf8");
|
|
27
|
+
}
|
|
28
|
+
catch {
|
|
29
|
+
previous = undefined;
|
|
30
|
+
}
|
|
31
|
+
if (previous === skill.body)
|
|
106
32
|
continue;
|
|
107
33
|
await mkdir(dir, { recursive: true });
|
|
108
34
|
await writeFile(file, skill.body, "utf8");
|
|
109
35
|
installed.push(skill.id);
|
|
110
36
|
}
|
|
111
|
-
return { installed };
|
|
37
|
+
return { installed, revision: XIANGYANG_SKILLS_REVISION };
|
|
112
38
|
}
|
|
113
39
|
//# sourceMappingURL=xiangyang-skills.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"xiangyang-skills.js","sourceRoot":"","sources":["../src/xiangyang-skills.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"xiangyang-skills.js","sourceRoot":"","sources":["../src/xiangyang-skills.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAC9D,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EACL,qBAAqB,EACrB,yBAAyB,GAE1B,MAAM,mCAAmC,CAAC;AAG3C,OAAO,EACL,qBAAqB,EACrB,mBAAmB,EACnB,yBAAyB,GAC1B,MAAM,mCAAmC,CAAC;AAS3C;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,mBAAmB,CACvC,aAAqB;IAErB,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,MAAM,EAAE,QAAQ,CAAC,CAAC;IAC9D,MAAM,KAAK,CAAC,UAAU,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAC7C,MAAM,SAAS,GAAa,EAAE,CAAC;IAC/B,KAAK,MAAM,KAAK,IAAI,qBAAqB,EAAE,CAAC;QAC1C,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,KAAK,CAAC,EAAE,CAAC,CAAC;QAC5C,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,UAAU,CAAC,CAAC;QACxC,IAAI,QAA4B,CAAC;QACjC,IAAI,CAAC;YACH,QAAQ,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QAC1C,CAAC;QAAC,MAAM,CAAC;YACP,QAAQ,GAAG,SAAS,CAAC;QACvB,CAAC;QACD,IAAI,QAAQ,KAAK,KAAK,CAAC,IAAI;YAAE,SAAS;QACtC,MAAM,KAAK,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QACtC,MAAM,SAAS,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QAC1C,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;IAC3B,CAAC;IACD,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,yBAAyB,EAAE,CAAC;AAC5D,CAAC"}
|
|
@@ -28,7 +28,17 @@ export { loadMcpToolPlugins, mcpDraftsToSpecs, mcpFingerprint, parseMcpServersEn
|
|
|
28
28
|
* otherwise run bash completely unsandboxed.
|
|
29
29
|
*/
|
|
30
30
|
export declare function createHostShellPrepareArgv(options: {
|
|
31
|
+
/**
|
|
32
|
+
* Fallback jail root when {@link readWorkspaceRoot} is omitted or returns
|
|
33
|
+
* nothing (Host process root / single-workspace).
|
|
34
|
+
*/
|
|
31
35
|
readonly workspaceRoot: string;
|
|
36
|
+
/**
|
|
37
|
+
* Per-session workspace root (coding project / worktree). Multi-workspace
|
|
38
|
+
* Hosts must supply this — otherwise bash cwd under session A fails
|
|
39
|
+
* `cwd escapes` against Host root B.
|
|
40
|
+
*/
|
|
41
|
+
readonly readWorkspaceRoot?: (sessionId: string | undefined) => string | undefined;
|
|
32
42
|
readonly readSandboxSettings: () => Record<string, unknown> | undefined;
|
|
33
43
|
readonly readSandboxMode: (sessionId: string | undefined) => import("@xrkseek/protocol").SandboxMode;
|
|
34
44
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAkB,MAAM,qBAAqB,CAAC;AACvE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAE/C,OAAO,EAQL,KAAK,YAAY,EAClB,MAAM,uBAAuB,CAAC;AAI/B,OAAO,EAKL,KAAK,cAAc,EACpB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAGL,KAAK,cAAc,EACpB,MAAM,sBAAsB,CAAC;AAQ9B,OAAO,EAKL,KAAK,UAAU,EAChB,MAAM,wBAAwB,CAAC;AAOhC,OAAO,EAmBL,KAAK,iBAAiB,EAkBvB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAkCL,iCAAiC,EACjC,uCAAuC,EACvC,oCAAoC,EAWrC,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAOL,KAAK,YAAY,EACjB,KAAK,gBAAgB,EACtB,MAAM,wBAAwB,CAAC;AAQhC,OAAO,EAAqC,KAAK,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AAwBhG,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAiBvD,OAAO,KAAK,EAAc,gBAAgB,EAAE,MAAM,UAAU,CAAC;AAK7D,OAAO,EAAE,oBAAoB,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AAC1E,YAAY,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAC1D,OAAO,EAAE,0BAA0B,EAAE,MAAM,qBAAqB,CAAC;AACjE,YAAY,EAAE,gBAAgB,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AACzE,YAAY,EAAE,UAAU,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AAC7D,OAAO,EACL,mBAAmB,EACnB,6BAA6B,EAC7B,wBAAwB,EACxB,KAAK,yBAAyB,GAC/B,MAAM,yBAAyB,CAAC;AAMjC,OAAO,EACL,oBAAoB,EACpB,qBAAqB,EACrB,sBAAsB,GACvB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EACL,WAAW,EACX,eAAe,EACf,uBAAuB,EACvB,cAAc,EACd,kBAAkB,EAClB,KAAK,WAAW,EAChB,KAAK,aAAa,EAClB,KAAK,YAAY,EACjB,KAAK,8BAA8B,GACpC,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EACL,kBAAkB,EAClB,gBAAgB,EAChB,cAAc,EACd,kBAAkB,EAClB,4BAA4B,EAC5B,8BAA8B,EAC9B,uBAAuB,EACvB,8BAA8B,EAC9B,KAAK,mBAAmB,EACxB,KAAK,cAAc,EACnB,KAAK,aAAa,EAClB,KAAK,kBAAkB,GACxB,MAAM,eAAe,CAAC;AA0HvB;;;;;;;GAOG;AACH,wBAAgB,0BAA0B,CAAC,OAAO,EAAE;IAClD,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,mBAAmB,EAAE,MAAM,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,CAAC;IACxE,QAAQ,CAAC,eAAe,EAAE,CAAC,SAAS,EAAE,MAAM,GAAG,SAAS,KAAK,OAAO,mBAAmB,EAAE,WAAW,CAAC;IACrG;;;;;OAKG;IACH,QAAQ,CAAC,sBAAsB,CAAC,EAAE,CAChC,SAAS,EAAE,MAAM,GAAG,SAAS,KAC1B,SAAS,MAAM,EAAE,CAAC;IACvB,QAAQ,CAAC,eAAe,EAAE,OAAO,CAAC;IAClC,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC,UAAU,CAAC;CACjC,GAAG,WAAW,CACb,UAAU,CAAC,OAAO,gBAAgB,CAAC,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,CACtD,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -176,13 +176,15 @@ export function createHostShellPrepareArgv(options) {
|
|
|
176
176
|
let cachedStack;
|
|
177
177
|
let cachedStackKey = "";
|
|
178
178
|
return async (argv, cwd, signal, ctx) => {
|
|
179
|
+
const sessionRoot = options.readWorkspaceRoot?.(ctx?.ownerSessionId)?.trim() ||
|
|
180
|
+
options.workspaceRoot;
|
|
179
181
|
const settings = options.readSandboxSettings();
|
|
180
182
|
const product = parseSandboxProduct(settings);
|
|
181
183
|
const extraRoots = options.readExtraWritableRoots?.(ctx?.ownerSessionId) ?? [];
|
|
182
|
-
const stackKey = `${JSON.stringify(product ?? null)}|${JSON.stringify(extraRoots)}`;
|
|
184
|
+
const stackKey = `${path.resolve(sessionRoot)}|${JSON.stringify(product ?? null)}|${JSON.stringify(extraRoots)}`;
|
|
183
185
|
if (!cachedStack || cachedStackKey !== stackKey) {
|
|
184
186
|
cachedStack = createSandboxStack({
|
|
185
|
-
workspaceRoot:
|
|
187
|
+
workspaceRoot: sessionRoot,
|
|
186
188
|
...(extraRoots.length ? { extraWritableRoots: extraRoots } : {}),
|
|
187
189
|
...(product ? { product } : {}),
|
|
188
190
|
env: options.env,
|
|
@@ -542,11 +544,16 @@ export function createHostManager() {
|
|
|
542
544
|
// Deduplicate while preserving user-declared order (cosmetic).
|
|
543
545
|
return [...new Set(cleaned)];
|
|
544
546
|
};
|
|
547
|
+
// Filled after Face attaches — closures below read it at spawn time.
|
|
548
|
+
const sessionCwdBox = {};
|
|
549
|
+
const sessionWorkspaceRoot = (sessionId) => (sessionId ? sessionCwdBox.get?.(sessionId)?.trim() : undefined) ||
|
|
550
|
+
config.runtime.workspaceRoot;
|
|
545
551
|
const sharedPty = !sshWorld &&
|
|
546
552
|
(config.runtime.preset === "harness" ||
|
|
547
553
|
config.runtime.preset === "server")
|
|
548
554
|
? createDefaultPtyAccess({
|
|
549
555
|
workspaceRoot: config.runtime.workspaceRoot,
|
|
556
|
+
resolveWorkspaceRoot: sessionWorkspaceRoot,
|
|
550
557
|
})
|
|
551
558
|
: undefined;
|
|
552
559
|
const sharedShell = config.runtime.preset === "harness" || config.runtime.preset === "server"
|
|
@@ -560,12 +567,13 @@ export function createHostManager() {
|
|
|
560
567
|
// Same dir as hostReadableRoots — job_output spill paths are tool-readable.
|
|
561
568
|
spillDir: defaultSpillDir(),
|
|
562
569
|
// Host-wide shared registry — sandbox confine resolves lazily so
|
|
563
|
-
// Face settings + per-session sandboxMode
|
|
564
|
-
// not at shell creation (faceBox
|
|
565
|
-
// the production path the harness
|
|
566
|
-
// branch would otherwise bypass
|
|
570
|
+
// Face settings + per-session sandboxMode / session cwd are read
|
|
571
|
+
// at spawn time, not at shell creation (faceBox / sessionCwd
|
|
572
|
+
// arrive later). This is the production path the harness
|
|
573
|
+
// preset's `sharedShell ??` branch would otherwise bypass.
|
|
567
574
|
prepareArgv: createHostShellPrepareArgv({
|
|
568
575
|
workspaceRoot: config.runtime.workspaceRoot,
|
|
576
|
+
readWorkspaceRoot: sessionWorkspaceRoot,
|
|
569
577
|
readSandboxSettings: () => {
|
|
570
578
|
const rt = faceBox.runtime;
|
|
571
579
|
if (!rt)
|
|
@@ -707,7 +715,6 @@ export function createHostManager() {
|
|
|
707
715
|
};
|
|
708
716
|
const llmResolverBox = {};
|
|
709
717
|
const pluginSettingsBox = {};
|
|
710
|
-
const sessionCwdBox = {};
|
|
711
718
|
const sessionPresetBox = {};
|
|
712
719
|
const hostStatusBox = {};
|
|
713
720
|
const lineage = {
|