@xgjktech/xg_cwork_im 1.17.22 → 1.17.23

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 (57) hide show
  1. package/README.md +4 -2
  2. package/dist/src/account-connection.d.ts.map +1 -1
  3. package/dist/src/account-connection.js +5 -4
  4. package/dist/src/account-connection.js.map +1 -1
  5. package/dist/src/agent-context-types.d.ts +85 -10
  6. package/dist/src/agent-context-types.d.ts.map +1 -1
  7. package/dist/src/agent-context-types.js +50 -7
  8. package/dist/src/agent-context-types.js.map +1 -1
  9. package/dist/src/agent-context-types.test.js +55 -2
  10. package/dist/src/agent-context-types.test.js.map +1 -1
  11. package/dist/src/build-project-prompt.d.ts.map +1 -1
  12. package/dist/src/build-project-prompt.js +53 -17
  13. package/dist/src/build-project-prompt.js.map +1 -1
  14. package/dist/src/build-project-prompt.test.d.ts +2 -0
  15. package/dist/src/build-project-prompt.test.d.ts.map +1 -0
  16. package/dist/src/build-project-prompt.test.js +100 -0
  17. package/dist/src/build-project-prompt.test.js.map +1 -0
  18. package/dist/src/channel-config.d.ts +12 -0
  19. package/dist/src/channel-config.d.ts.map +1 -1
  20. package/dist/src/channel-config.js +2 -0
  21. package/dist/src/channel-config.js.map +1 -1
  22. package/dist/src/dispatch-mentioned-reply.d.ts +3 -0
  23. package/dist/src/dispatch-mentioned-reply.d.ts.map +1 -1
  24. package/dist/src/dispatch-mentioned-reply.js +36 -3
  25. package/dist/src/dispatch-mentioned-reply.js.map +1 -1
  26. package/dist/src/gateway-session-queue.d.ts +3 -0
  27. package/dist/src/gateway-session-queue.d.ts.map +1 -1
  28. package/dist/src/gateway-session-queue.js +1 -0
  29. package/dist/src/gateway-session-queue.js.map +1 -1
  30. package/dist/src/inbound-input-media.js +1 -1
  31. package/dist/src/inbound-input-media.js.map +1 -1
  32. package/dist/src/nas-volumes.d.ts +43 -0
  33. package/dist/src/nas-volumes.d.ts.map +1 -0
  34. package/dist/src/nas-volumes.js +191 -0
  35. package/dist/src/nas-volumes.js.map +1 -0
  36. package/dist/src/nas-volumes.test.d.ts +2 -0
  37. package/dist/src/nas-volumes.test.d.ts.map +1 -0
  38. package/dist/src/nas-volumes.test.js +111 -0
  39. package/dist/src/nas-volumes.test.js.map +1 -0
  40. package/dist/src/single-chat-no-reply-fallback.d.ts +14 -0
  41. package/dist/src/single-chat-no-reply-fallback.d.ts.map +1 -0
  42. package/dist/src/single-chat-no-reply-fallback.js +20 -0
  43. package/dist/src/single-chat-no-reply-fallback.js.map +1 -0
  44. package/dist/src/subagent-progress-hooks.d.ts +11 -0
  45. package/dist/src/subagent-progress-hooks.d.ts.map +1 -0
  46. package/dist/src/subagent-progress-hooks.js +41 -0
  47. package/dist/src/subagent-progress-hooks.js.map +1 -0
  48. package/dist/src/types.d.ts +6 -2
  49. package/dist/src/types.d.ts.map +1 -1
  50. package/dist/src/types.js.map +1 -1
  51. package/dist/src/user-facing-errors.d.ts +1 -0
  52. package/dist/src/user-facing-errors.d.ts.map +1 -1
  53. package/dist/src/user-facing-errors.js +7 -0
  54. package/dist/src/user-facing-errors.js.map +1 -1
  55. package/dist/src/user-facing-errors.test.js +8 -1
  56. package/dist/src/user-facing-errors.test.js.map +1 -1
  57. package/package.json +2 -2
package/README.md CHANGED
@@ -253,7 +253,8 @@ openclaw gateway restart
253
253
  | `inboundMediaOpenClawPath` | string | `workspaceRelative`(默认) | `workspaceRelative`:入站落盘后 `MediaPath` 为 `./子目录/...`(若配置了 `inboundMediaSandboxRootPrefix` 则为该前缀 + 相对路径,如 `/workspace/xg_im_inbound/...`);`absoluteFileUrl`:宿主机 `file://...`(仅适合无沙箱、网关与 Agent 同盘场景)。 |
254
254
  | `inboundMediaSandboxRootPrefix` | string | — | **可选**。沙箱内 workspace 挂载根,填 `**/workspace`** 时,在 `workspaceRelative` 模式下 `MediaPath` 为 `**/workspace/xg_im_inbound/...**`,避免 `./` 被 `read` 等工具按**进程 cwd**解析导致「不可访问」。须以 `/` 开头。 |
255
255
  | `syncServiceBaseUrl` | string | — | **可选**。openclaw-xgkb-sync **管理 API** 根地址(如 `http://127.0.0.1:9090`)。配置后插件可处理 IM 下发的 `openclawApplySyncMapping` 信令并登记目录映射。详见 `docs/im服务接口说明.md`。 |
256
- | `projectPromptMaxChars` | number | `15000` | `agentContext.background` 与 `userInfo.background` 单段最大字符数;超出尾部截断。 |
256
+ | `projectPromptMaxChars` | number | `15000` | `agentContext.background` 与 `userInfo.background` 单段最大字符数;超出尾部截断。 |
257
+ | `nasVolumeAllowedRoots` | string[] | — | `agentContext.nasVolumes[].realDir` 的宿主机真实根目录白名单(如 `["/data/touqian"]`);使用 NAS 挂载时必填,且沙箱必须为 `scope: "session"`。 |
257
258
  | `blockStreaming` | boolean | `true`(未配置时) | 开启后 OpenClaw 在 assistant **text 块结束(tool 调用前)** 即调用 `deliver`;插件默认经 **段缓冲** 在 `onToolStart` / 轮次结束再 HTTP(见 `deliverSegmentBuffer`)。tool 过程走 WS `TOOL_PHASE`。设为 `false` 恢复整轮结束才 deliver 一次。 |
258
259
  | `blockStreamingCoalesce` | object | 不配(注入 500/500) | 合并流式碎片。未配时注入 `minChars:500 idleMs:500 maxChars:12000`(中间档;覆盖 agents.defaults 过大值)。 |
259
260
  | `deliverSegmentBuffer` | boolean | `true` | 段缓冲:修稿覆盖、分块追加;`false` 则每次 deliver 即 HTTP + C7。 |
@@ -324,7 +325,8 @@ openclaw gateway restart
324
325
  | `inboundMediaOpenClawPath` | string | 继承顶层 | 可覆盖顶层的 MediaPath 形式(相对路径 vs file://) |
325
326
  | `inboundMediaSandboxRootPrefix` | string | 继承顶层 | 可覆盖沙箱根前缀(如 `/workspace`) |
326
327
  | `syncServiceBaseUrl` | string | 继承顶层 | 可覆盖同步服务管理 API 地址 |
327
- | `projectPromptMaxChars` | number | 继承顶层 | 项目/用户 background 单段最大字符数(默认 15000) |
328
+ | `projectPromptMaxChars` | number | 继承顶层 | 项目/用户 background 单段最大字符数(默认 15000) |
329
+ | `nasVolumeAllowedRoots` | string[] | 继承顶层 | 可覆盖 NAS 宿主机真实根目录白名单 |
328
330
  | `autoModelRouting` | object | 继承顶层 | 可覆盖顶层的自动路由配置(见上节) |
329
331
 
330
332
 
@@ -1 +1 @@
1
- {"version":3,"file":"account-connection.d.ts","sourceRoot":"","sources":["../../src/account-connection.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAa1D,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAE/C,OAAO,EAAkB,KAAK,cAAc,EAAE,MAAM,iBAAiB,CAAC;AA6BtE,OAAO,KAAK,EAAE,eAAe,EAAa,UAAU,EAAE,MAAM,YAAY,CAAC;AAEzE,MAAM,WAAW,uBAAuB;IACpC,IAAI,EAAE,MAAM,IAAI,CAAC;IACjB,YAAY,EAAE,cAAc,CAAC;IAC7B,oBAAoB,EAAE,MAAM,OAAO,CAAC;CACvC;AAED,MAAM,WAAW,4BAA4B;IACzC,0CAA0C;IAC1C,GAAG,EAAE,cAAc,CAAC;IACpB,OAAO,EAAE,eAAe,CAAC;IACzB,MAAM,EAAE,UAAU,CAAC;IACnB,iDAAiD;IAEjD,EAAE,EAAE,GAAG,CAAC;IACR,GAAG,EAAE,MAAM,CAAC;IACZ,WAAW,CAAC,EAAE,WAAW,CAAC;IAC1B,6CAA6C;IAC7C,WAAW,CAAC,EAAE,MAAM,cAAc,CAAC;CACtC;AA8BD;;;GAGG;AACH,wBAAsB,sBAAsB,CACxC,MAAM,EAAE,4BAA4B,GACrC,OAAO,CAAC,uBAAuB,CAAC,CAmblC"}
1
+ {"version":3,"file":"account-connection.d.ts","sourceRoot":"","sources":["../../src/account-connection.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAa1D,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAE/C,OAAO,EAAkB,KAAK,cAAc,EAAE,MAAM,iBAAiB,CAAC;AA8BtE,OAAO,KAAK,EAAE,eAAe,EAAa,UAAU,EAAE,MAAM,YAAY,CAAC;AAEzE,MAAM,WAAW,uBAAuB;IACpC,IAAI,EAAE,MAAM,IAAI,CAAC;IACjB,YAAY,EAAE,cAAc,CAAC;IAC7B,oBAAoB,EAAE,MAAM,OAAO,CAAC;CACvC;AAED,MAAM,WAAW,4BAA4B;IACzC,0CAA0C;IAC1C,GAAG,EAAE,cAAc,CAAC;IACpB,OAAO,EAAE,eAAe,CAAC;IACzB,MAAM,EAAE,UAAU,CAAC;IACnB,iDAAiD;IAEjD,EAAE,EAAE,GAAG,CAAC;IACR,GAAG,EAAE,MAAM,CAAC;IACZ,WAAW,CAAC,EAAE,WAAW,CAAC;IAC1B,6CAA6C;IAC7C,WAAW,CAAC,EAAE,MAAM,cAAc,CAAC;CACtC;AA8BD;;;GAGG;AACH,wBAAsB,sBAAsB,CACxC,MAAM,EAAE,4BAA4B,GACrC,OAAO,CAAC,uBAAuB,CAAC,CAqblC"}
@@ -130,18 +130,18 @@ export async function startAccountConnection(params) {
130
130
  const agentContext = agentContextParsed.agentContext;
131
131
  if (params.agentContext != null) {
132
132
  if (agentContextParsed.fatalError) {
133
- log.error(`${logPrefix} [agent-context] invalid params.agentContext: ${agentContextParsed.fatalError}`);
133
+ log.warn(`${logPrefix} [agent-context] ignored invalid params.agentContext fields: ${agentContextParsed.fatalError}`);
134
134
  }
135
- else if (!agentContext) {
135
+ if (!agentContext) {
136
136
  log.error(`${logPrefix} [agent-context] params.agentContext present but unparsed`);
137
137
  }
138
138
  else if (agentContextParsed.knowledgeBaseDropped) {
139
- log.warn(`${logPrefix} [agent-context] knowledgeBase dropped, using localRoot+background only: ` +
139
+ log.warn(`${logPrefix} [agent-context] knowledgeBase dropped, using workspace context + background only: ` +
140
140
  `${agentContextParsed.knowledgeBaseDropReason ?? "unknown"}`);
141
141
  }
142
142
  }
143
143
  let workspaceHostRoot;
144
- if (agentContext?.localRoot.kind === "workspace_relative") {
144
+ if (agentContext?.localRoot?.kind === "workspace_relative") {
145
145
  try {
146
146
  workspaceHostRoot = resolveAgentWorkspaceDir(cfg, route.agentId);
147
147
  }
@@ -362,6 +362,7 @@ export async function startAccountConnection(params) {
362
362
  params,
363
363
  currentIdentity: botIdentity,
364
364
  agentWorkspaceDir,
365
+ nasVolumes: agentContext?.nasVolumes,
365
366
  modelOverride,
366
367
  thinkingLevelOverride,
367
368
  autoRouteMeta,
@@ -1 +1 @@
1
- {"version":3,"file":"account-connection.js","sourceRoot":"","sources":["../../src/account-connection.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"account-connection.js","sourceRoot":"","sources":["../../src/account-connection.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,21 @@
1
1
  /**
2
- * robotMention.params.agentContext — 项目工作区路径 + 可选知识库绑定 + 可选项目背景
2
+ * robotMention.params.agentContext — 可选项目工作区 / NAS 挂载 + 知识库绑定 + 项目背景
3
3
  */
4
4
  import { z } from "zod";
5
+ export declare const nasVolumeSchema: z.ZodObject<{
6
+ realDir: z.ZodString;
7
+ dockerDir: z.ZodString;
8
+ mode: z.ZodEnum<["ro", "rw"]>;
9
+ }, "strip", z.ZodTypeAny, {
10
+ realDir: string;
11
+ dockerDir: string;
12
+ mode: "ro" | "rw";
13
+ }, {
14
+ realDir: string;
15
+ dockerDir: string;
16
+ mode: "ro" | "rw";
17
+ }>;
18
+ export type NasVolume = z.infer<typeof nasVolumeSchema>;
5
19
  /** 知识库空间 ID + 逻辑目录路径 */
6
20
  declare const knowledgeBaseByPathSchema: z.ZodObject<{
7
21
  projectId: z.ZodString;
@@ -45,8 +59,8 @@ export declare const agentContextKnowledgeBaseSchema: z.ZodUnion<[z.ZodObject<{
45
59
  }>]>;
46
60
  export type AgentContextKnowledgeBase = z.infer<typeof agentContextKnowledgeBaseSchema>;
47
61
  /** 与 IM 后台约定的 `params.agentContext` 结构 */
48
- export declare const robotMentionAgentContextSchema: z.ZodObject<{
49
- localRoot: z.ZodObject<{
62
+ export declare const robotMentionAgentContextSchema: z.ZodEffects<z.ZodObject<{
63
+ localRoot: z.ZodOptional<z.ZodObject<{
50
64
  kind: z.ZodEnum<["workspace_relative", "host_absolute"]>;
51
65
  path: z.ZodString;
52
66
  }, "strip", z.ZodTypeAny, {
@@ -55,7 +69,20 @@ export declare const robotMentionAgentContextSchema: z.ZodObject<{
55
69
  }, {
56
70
  kind: "workspace_relative" | "host_absolute";
57
71
  path: string;
58
- }>;
72
+ }>>;
73
+ nasVolumes: z.ZodOptional<z.ZodArray<z.ZodObject<{
74
+ realDir: z.ZodString;
75
+ dockerDir: z.ZodString;
76
+ mode: z.ZodEnum<["ro", "rw"]>;
77
+ }, "strip", z.ZodTypeAny, {
78
+ realDir: string;
79
+ dockerDir: string;
80
+ mode: "ro" | "rw";
81
+ }, {
82
+ realDir: string;
83
+ dockerDir: string;
84
+ mode: "ro" | "rw";
85
+ }>, "many">>;
59
86
  knowledgeBase: z.ZodOptional<z.ZodUnion<[z.ZodObject<{
60
87
  rootFileId: z.ZodString;
61
88
  }, "strip", z.ZodTypeAny, {
@@ -80,10 +107,53 @@ export declare const robotMentionAgentContextSchema: z.ZodObject<{
80
107
  }>]>>;
81
108
  background: z.ZodOptional<z.ZodString>;
82
109
  }, "strip", z.ZodTypeAny, {
83
- localRoot: {
110
+ localRoot?: {
111
+ kind: "workspace_relative" | "host_absolute";
112
+ path: string;
113
+ } | undefined;
114
+ nasVolumes?: {
115
+ realDir: string;
116
+ dockerDir: string;
117
+ mode: "ro" | "rw";
118
+ }[] | undefined;
119
+ knowledgeBase?: {
120
+ rootFileId: string;
121
+ } | {
122
+ projectId: string;
123
+ folderPath: string;
124
+ } | {
125
+ projectId: string;
126
+ } | undefined;
127
+ background?: string | undefined;
128
+ }, {
129
+ localRoot?: {
130
+ kind: "workspace_relative" | "host_absolute";
131
+ path: string;
132
+ } | undefined;
133
+ nasVolumes?: {
134
+ realDir: string;
135
+ dockerDir: string;
136
+ mode: "ro" | "rw";
137
+ }[] | undefined;
138
+ knowledgeBase?: {
139
+ rootFileId: string;
140
+ } | {
141
+ projectId: string;
142
+ folderPath: string;
143
+ } | {
144
+ projectId: string;
145
+ } | undefined;
146
+ background?: string | undefined;
147
+ }>, {
148
+ localRoot?: {
84
149
  kind: "workspace_relative" | "host_absolute";
85
150
  path: string;
86
- };
151
+ } | undefined;
152
+ nasVolumes?: {
153
+ realDir: string;
154
+ dockerDir: string;
155
+ mode: "ro" | "rw";
156
+ }[] | undefined;
87
157
  knowledgeBase?: {
88
158
  rootFileId: string;
89
159
  } | {
@@ -94,10 +164,15 @@ export declare const robotMentionAgentContextSchema: z.ZodObject<{
94
164
  } | undefined;
95
165
  background?: string | undefined;
96
166
  }, {
97
- localRoot: {
167
+ localRoot?: {
98
168
  kind: "workspace_relative" | "host_absolute";
99
169
  path: string;
100
- };
170
+ } | undefined;
171
+ nasVolumes?: {
172
+ realDir: string;
173
+ dockerDir: string;
174
+ mode: "ro" | "rw";
175
+ }[] | undefined;
101
176
  knowledgeBase?: {
102
177
  rootFileId: string;
103
178
  } | {
@@ -111,14 +186,14 @@ export declare const robotMentionAgentContextSchema: z.ZodObject<{
111
186
  export type RobotMentionAgentContext = z.infer<typeof robotMentionAgentContextSchema>;
112
187
  export type ParseRobotMentionAgentContextResult = {
113
188
  agentContext?: RobotMentionAgentContext;
114
- /** localRoot 缺失等致命错误 */
189
+ /** 被忽略的非法字段;仅用于日志诊断,不得阻断消息处理。 */
115
190
  fatalError?: string;
116
191
  /** knowledgeBase 存在但无法解析时被丢弃 */
117
192
  knowledgeBaseDropped?: boolean;
118
193
  knowledgeBaseDropReason?: string;
119
194
  };
120
195
  /**
121
- * 解析 agentContext;knowledgeBase 非法时丢弃该字段,仍保留 localRoot + background。
196
+ * 解析 agentContext;knowledgeBase 非法时丢弃该字段,仍保留工作区上下文与 background。
122
197
  */
123
198
  export declare function parseRobotMentionAgentContextDetailed(params: unknown): ParseRobotMentionAgentContextResult;
124
199
  export declare function parseRobotMentionAgentContext(params: unknown): RobotMentionAgentContext | undefined;
@@ -1 +1 @@
1
- {"version":3,"file":"agent-context-types.d.ts","sourceRoot":"","sources":["../../src/agent-context-types.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAaxB,wBAAwB;AACxB,QAAA,MAAM,yBAAyB;;;;;;;;;EAG7B,CAAC;AAEH,qCAAqC;AACrC,QAAA,MAAM,kCAAkC;;;;;;EAEtC,CAAC;AAEH,eAAO,MAAM,+BAA+B;;;;;;;;;;;;;;;;;;;;;IAI1C,CAAC;AAEH,MAAM,MAAM,yBAAyB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,+BAA+B,CAAC,CAAC;AAExF,0CAA0C;AAC1C,eAAO,MAAM,8BAA8B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAIzC,CAAC;AAEH,MAAM,MAAM,wBAAwB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,8BAA8B,CAAC,CAAC;AAEtF,MAAM,MAAM,mCAAmC,GAAG;IAC9C,YAAY,CAAC,EAAE,wBAAwB,CAAC;IACxC,wBAAwB;IACxB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,gCAAgC;IAChC,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B,uBAAuB,CAAC,EAAE,MAAM,CAAC;CACpC,CAAC;AAQF;;GAEG;AACH,wBAAgB,qCAAqC,CAAC,MAAM,EAAE,OAAO,GAAG,mCAAmC,CAuC1G;AAED,wBAAgB,6BAA6B,CAAC,MAAM,EAAE,OAAO,GAAG,wBAAwB,GAAG,SAAS,CAEnG;AAED,qDAAqD;AACrD,wBAAgB,qBAAqB,CACjC,EAAE,EAAE,yBAAyB,GAC9B,EAAE,IAAI,CAAC,CAAC,KAAK,CAAC,OAAO,yBAAyB,CAAC,CAEjD;AAED,iEAAiE;AACjE,wBAAgB,8BAA8B,CAC1C,EAAE,EAAE,yBAAyB,GAC9B,EAAE,IAAI,CAAC,CAAC,KAAK,CAAC,OAAO,kCAAkC,CAAC,CAE1D"}
1
+ {"version":3,"file":"agent-context-types.d.ts","sourceRoot":"","sources":["../../src/agent-context-types.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAQxB,eAAO,MAAM,eAAe;;;;;;;;;;;;EAI1B,CAAC;AAEH,MAAM,MAAM,SAAS,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,eAAe,CAAC,CAAC;AAOxD,wBAAwB;AACxB,QAAA,MAAM,yBAAyB;;;;;;;;;EAG7B,CAAC;AAEH,qCAAqC;AACrC,QAAA,MAAM,kCAAkC;;;;;;EAEtC,CAAC;AAEH,eAAO,MAAM,+BAA+B;;;;;;;;;;;;;;;;;;;;;IAI1C,CAAC;AAEH,MAAM,MAAM,yBAAyB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,+BAA+B,CAAC,CAAC;AAExF,0CAA0C;AAC1C,eAAO,MAAM,8BAA8B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAazC,CAAC;AAEH,MAAM,MAAM,wBAAwB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,8BAA8B,CAAC,CAAC;AAEtF,MAAM,MAAM,mCAAmC,GAAG;IAC9C,YAAY,CAAC,EAAE,wBAAwB,CAAC;IACxC,iCAAiC;IACjC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,gCAAgC;IAChC,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B,uBAAuB,CAAC,EAAE,MAAM,CAAC;CACpC,CAAC;AAQF;;GAEG;AACH,wBAAgB,qCAAqC,CAAC,MAAM,EAAE,OAAO,GAAG,mCAAmC,CAoE1G;AAED,wBAAgB,6BAA6B,CAAC,MAAM,EAAE,OAAO,GAAG,wBAAwB,GAAG,SAAS,CAEnG;AAED,qDAAqD;AACrD,wBAAgB,qBAAqB,CACjC,EAAE,EAAE,yBAAyB,GAC9B,EAAE,IAAI,CAAC,CAAC,KAAK,CAAC,OAAO,yBAAyB,CAAC,CAEjD;AAED,iEAAiE;AACjE,wBAAgB,8BAA8B,CAC1C,EAAE,EAAE,yBAAyB,GAC9B,EAAE,IAAI,CAAC,CAAC,KAAK,CAAC,OAAO,kCAAkC,CAAC,CAE1D"}
@@ -1,5 +1,5 @@
1
1
  /**
2
- * robotMention.params.agentContext — 项目工作区路径 + 可选知识库绑定 + 可选项目背景
2
+ * robotMention.params.agentContext — 可选项目工作区 / NAS 挂载 + 知识库绑定 + 项目背景
3
3
  */
4
4
  import { z } from "zod";
5
5
  import { LOCAL_ROOT_KINDS } from "./project-path-normalize.js";
@@ -7,6 +7,11 @@ const localRootSchema = z.object({
7
7
  kind: z.enum(LOCAL_ROOT_KINDS),
8
8
  path: z.string().min(1),
9
9
  });
10
+ export const nasVolumeSchema = z.object({
11
+ realDir: z.string().min(1),
12
+ dockerDir: z.string().min(1),
13
+ mode: z.enum(["ro", "rw"]),
14
+ });
10
15
  /** 知识库目录 fileId(与 projectId 形式二选一) */
11
16
  const knowledgeBaseByFileIdSchema = z.object({
12
17
  rootFileId: z.string().min(1),
@@ -27,9 +32,18 @@ export const agentContextKnowledgeBaseSchema = z.union([
27
32
  ]);
28
33
  /** 与 IM 后台约定的 `params.agentContext` 结构 */
29
34
  export const robotMentionAgentContextSchema = z.object({
30
- localRoot: localRootSchema,
35
+ localRoot: localRootSchema.optional(),
36
+ nasVolumes: z.array(nasVolumeSchema).max(16).optional(),
31
37
  knowledgeBase: agentContextKnowledgeBaseSchema.optional(),
32
38
  background: z.string().optional(),
39
+ }).superRefine((value, ctx) => {
40
+ if (!value.localRoot && !value.nasVolumes?.length) {
41
+ ctx.addIssue({
42
+ code: z.ZodIssueCode.custom,
43
+ path: ["localRoot"],
44
+ message: "localRoot 与 nasVolumes 至少需要提供一个",
45
+ });
46
+ }
33
47
  });
34
48
  function formatZodIssue(err) {
35
49
  const issue = err.issues[0];
@@ -37,7 +51,7 @@ function formatZodIssue(err) {
37
51
  return `${path}: ${issue?.message ?? err.message}`;
38
52
  }
39
53
  /**
40
- * 解析 agentContext;knowledgeBase 非法时丢弃该字段,仍保留 localRoot + background。
54
+ * 解析 agentContext;knowledgeBase 非法时丢弃该字段,仍保留工作区上下文与 background。
41
55
  */
42
56
  export function parseRobotMentionAgentContextDetailed(params) {
43
57
  if (params == null || typeof params !== "object") {
@@ -48,9 +62,36 @@ export function parseRobotMentionAgentContextDetailed(params) {
48
62
  return {};
49
63
  }
50
64
  const record = raw;
51
- const localRootParsed = localRootSchema.safeParse(record.localRoot);
52
- if (!localRootParsed.success) {
53
- return { fatalError: formatZodIssue(localRootParsed.error) };
65
+ const droppedReasons = [];
66
+ const localRootParsed = record.localRoot == null ? undefined : localRootSchema.safeParse(record.localRoot);
67
+ if (localRootParsed && !localRootParsed.success) {
68
+ droppedReasons.push(formatZodIssue(localRootParsed.error));
69
+ }
70
+ const nasVolumes = [];
71
+ if (record.nasVolumes != null) {
72
+ if (!Array.isArray(record.nasVolumes)) {
73
+ droppedReasons.push("nasVolumes: Expected array");
74
+ }
75
+ else {
76
+ for (const [index, rawVolume] of record.nasVolumes.slice(0, 16).entries()) {
77
+ const parsed = nasVolumeSchema.safeParse(rawVolume);
78
+ if (parsed.success) {
79
+ nasVolumes.push(parsed.data);
80
+ }
81
+ else {
82
+ droppedReasons.push(`nasVolumes.${index}: ${formatZodIssue(parsed.error)}`);
83
+ }
84
+ }
85
+ if (record.nasVolumes.length > 16) {
86
+ droppedReasons.push("nasVolumes: 超过 16 项的部分已忽略");
87
+ }
88
+ }
89
+ }
90
+ // 保持旧逻辑:没有有效工作区来源时忽略整个 agentContext,但绝不阻断消息。
91
+ if (!localRootParsed?.success && nasVolumes.length === 0) {
92
+ return {
93
+ ...(droppedReasons.length > 0 ? { fatalError: droppedReasons.join("; ") } : {}),
94
+ };
54
95
  }
55
96
  let knowledgeBase;
56
97
  let knowledgeBaseDropped = false;
@@ -68,10 +109,12 @@ export function parseRobotMentionAgentContextDetailed(params) {
68
109
  const background = typeof record.background === "string" ? record.background : undefined;
69
110
  return {
70
111
  agentContext: {
71
- localRoot: localRootParsed.data,
112
+ ...(localRootParsed?.success ? { localRoot: localRootParsed.data } : {}),
113
+ ...(nasVolumes.length > 0 ? { nasVolumes } : {}),
72
114
  ...(knowledgeBase ? { knowledgeBase } : {}),
73
115
  ...(background !== undefined ? { background } : {}),
74
116
  },
117
+ ...(droppedReasons.length > 0 ? { fatalError: droppedReasons.join("; ") } : {}),
75
118
  ...(knowledgeBaseDropped ? { knowledgeBaseDropped, knowledgeBaseDropReason } : {}),
76
119
  };
77
120
  }
@@ -1 +1 @@
1
- {"version":3,"file":"agent-context-types.js","sourceRoot":"","sources":["../../src/agent-context-types.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AAE/D,MAAM,eAAe,GAAG,CAAC,CAAC,MAAM,CAAC;IAC7B,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC;IAC9B,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;CAC1B,CAAC,CAAC;AAEH,sCAAsC;AACtC,MAAM,2BAA2B,GAAG,CAAC,CAAC,MAAM,CAAC;IACzC,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;CAChC,CAAC,CAAC;AAEH,wBAAwB;AACxB,MAAM,yBAAyB,GAAG,CAAC,CAAC,MAAM,CAAC;IACvC,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IAC5B,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;CAChC,CAAC,CAAC;AAEH,qCAAqC;AACrC,MAAM,kCAAkC,GAAG,CAAC,CAAC,MAAM,CAAC;IAChD,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;CAC/B,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,+BAA+B,GAAG,CAAC,CAAC,KAAK,CAAC;IACnD,2BAA2B;IAC3B,yBAAyB;IACzB,kCAAkC;CACrC,CAAC,CAAC;AAIH,0CAA0C;AAC1C,MAAM,CAAC,MAAM,8BAA8B,GAAG,CAAC,CAAC,MAAM,CAAC;IACnD,SAAS,EAAE,eAAe;IAC1B,aAAa,EAAE,+BAA+B,CAAC,QAAQ,EAAE;IACzD,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;CACpC,CAAC,CAAC;AAaH,SAAS,cAAc,CAAC,GAAe;IACnC,MAAM,KAAK,GAAG,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;IAC5B,MAAM,IAAI,GAAG,KAAK,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC;IACzE,OAAO,GAAG,IAAI,KAAK,KAAK,EAAE,OAAO,IAAI,GAAG,CAAC,OAAO,EAAE,CAAC;AACvD,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,qCAAqC,CAAC,MAAe;IACjE,IAAI,MAAM,IAAI,IAAI,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE,CAAC;QAC/C,OAAO,EAAE,CAAC;IACd,CAAC;IACD,MAAM,GAAG,GAAI,MAAkC,CAAC,YAAY,CAAC;IAC7D,IAAI,GAAG,IAAI,IAAI,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE,CAAC;QACzC,OAAO,EAAE,CAAC;IACd,CAAC;IACD,MAAM,MAAM,GAAG,GAA8B,CAAC;IAE9C,MAAM,eAAe,GAAG,eAAe,CAAC,SAAS,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;IACpE,IAAI,CAAC,eAAe,CAAC,OAAO,EAAE,CAAC;QAC3B,OAAO,EAAE,UAAU,EAAE,cAAc,CAAC,eAAe,CAAC,KAAK,CAAC,EAAE,CAAC;IACjE,CAAC;IAED,IAAI,aAAoD,CAAC;IACzD,IAAI,oBAAoB,GAAG,KAAK,CAAC;IACjC,IAAI,uBAA2C,CAAC;IAEhD,IAAI,MAAM,CAAC,aAAa,IAAI,IAAI,EAAE,CAAC;QAC/B,MAAM,QAAQ,GAAG,+BAA+B,CAAC,SAAS,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;QACjF,IAAI,QAAQ,CAAC,OAAO,EAAE,CAAC;YACnB,aAAa,GAAG,QAAQ,CAAC,IAAI,CAAC;QAClC,CAAC;aAAM,CAAC;YACJ,oBAAoB,GAAG,IAAI,CAAC;YAC5B,uBAAuB,GAAG,cAAc,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;QAC7D,CAAC;IACL,CAAC;IAED,MAAM,UAAU,GAAG,OAAO,MAAM,CAAC,UAAU,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC;IAEzF,OAAO;QACH,YAAY,EAAE;YACV,SAAS,EAAE,eAAe,CAAC,IAAI;YAC/B,GAAG,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC3C,GAAG,CAAC,UAAU,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SACtD;QACD,GAAG,CAAC,oBAAoB,CAAC,CAAC,CAAC,EAAE,oBAAoB,EAAE,uBAAuB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KACrF,CAAC;AACN,CAAC;AAED,MAAM,UAAU,6BAA6B,CAAC,MAAe;IACzD,OAAO,qCAAqC,CAAC,MAAM,CAAC,CAAC,YAAY,CAAC;AACtE,CAAC;AAED,qDAAqD;AACrD,MAAM,UAAU,qBAAqB,CACjC,EAA6B;IAE7B,OAAO,WAAW,IAAI,EAAE,IAAI,YAAY,IAAI,EAAE,CAAC;AACnD,CAAC;AAED,iEAAiE;AACjE,MAAM,UAAU,8BAA8B,CAC1C,EAA6B;IAE7B,OAAO,WAAW,IAAI,EAAE,IAAI,CAAC,CAAC,YAAY,IAAI,EAAE,CAAC,IAAI,CAAC,CAAC,YAAY,IAAI,EAAE,CAAC,CAAC;AAC/E,CAAC"}
1
+ {"version":3,"file":"agent-context-types.js","sourceRoot":"","sources":["../../src/agent-context-types.ts"],"names":[],"mappings":"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"}
@@ -37,12 +37,65 @@ describe("parseRobotMentionAgentContext", () => {
37
37
  });
38
38
  assert.deepEqual(ctx.knowledgeBase, { rootFileId: "2072258063360479234" });
39
39
  });
40
- it("rejects missing localRoot", () => {
40
+ it("ignores a context with no valid workspace source without making it fatal", () => {
41
41
  const result = parseRobotMentionAgentContextDetailed({
42
42
  agentContext: { background: "x" },
43
43
  });
44
44
  assert.equal(result.agentContext, undefined);
45
- assert.ok(result.fatalError);
45
+ assert.equal(result.fatalError, undefined);
46
+ });
47
+ it("accepts nasVolumes without localRoot", () => {
48
+ const ctx = parseRobotMentionAgentContext({
49
+ agentContext: {
50
+ nasVolumes: [
51
+ {
52
+ realDir: "/data/touqian/CP202205250005/sequences/0000",
53
+ dockerDir: "touqian/2026/08/biz-1/CP202205250005/sequences/0000",
54
+ mode: "ro",
55
+ },
56
+ ],
57
+ background: "案件资料处理",
58
+ },
59
+ });
60
+ assert.ok(ctx);
61
+ assert.equal(ctx.localRoot, undefined);
62
+ assert.equal(ctx.nasVolumes?.[0]?.mode, "ro");
63
+ });
64
+ it("treats an empty nasVolumes array exactly like an omitted field when localRoot exists", () => {
65
+ const withoutNas = parseRobotMentionAgentContext({
66
+ agentContext: { localRoot: { kind: "workspace_relative", path: "data/a" } },
67
+ });
68
+ const emptyNas = parseRobotMentionAgentContext({
69
+ agentContext: {
70
+ localRoot: { kind: "workspace_relative", path: "data/a" },
71
+ nasVolumes: [],
72
+ },
73
+ });
74
+ assert.deepEqual(emptyNas, withoutNas);
75
+ assert.equal(emptyNas?.nasVolumes, undefined);
76
+ });
77
+ it("ignores an invalid nasVolumes item without blocking valid items", () => {
78
+ const result = parseRobotMentionAgentContextDetailed({
79
+ agentContext: {
80
+ nasVolumes: [
81
+ { realDir: "/data/touqian/a", dockerDir: "case/a", mode: "write" },
82
+ { realDir: "/data/touqian/b", dockerDir: "case/b", mode: "rw" },
83
+ ],
84
+ },
85
+ });
86
+ assert.equal(result.agentContext?.nasVolumes?.length, 1);
87
+ assert.equal(result.agentContext?.nasVolumes?.[0]?.dockerDir, "case/b");
88
+ assert.ok(result.fatalError?.includes("mode"));
89
+ });
90
+ it("ignores an entirely invalid nasVolumes declaration and leaves the message unblocked", () => {
91
+ const result = parseRobotMentionAgentContextDetailed({
92
+ agentContext: {
93
+ nasVolumes: [{ realDir: "/data/touqian/a", dockerDir: "case/a", mode: "write" }],
94
+ background: "must not make the context fatal",
95
+ },
96
+ });
97
+ assert.equal(result.agentContext, undefined);
98
+ assert.ok(result.fatalError?.includes("mode"));
46
99
  });
47
100
  it("drops invalid knowledgeBase but keeps localRoot and background", () => {
48
101
  const result = parseRobotMentionAgentContextDetailed({
@@ -1 +1 @@
1
- {"version":3,"file":"agent-context-types.test.js","sourceRoot":"","sources":["../../src/agent-context-types.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"agent-context-types.test.js","sourceRoot":"","sources":["../../src/agent-context-types.test.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"build-project-prompt.d.ts","sourceRoot":"","sources":["../../src/build-project-prompt.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,WAAW,CAAC;AACrC,OAAO,EAGH,KAAK,wBAAwB,EAChC,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAGH,KAAK,aAAa,EACrB,MAAM,6BAA6B,CAAC;AACrC,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAK7C,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,UAAU,GAAG,MAAM,CAIhE;AAED,MAAM,WAAW,uBAAuB;IACpC,YAAY,EAAE,wBAAwB,CAAC;IACvC,MAAM,EAAE,UAAU,CAAC;IACnB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,GAAG,CAAC,EAAE,GAAG,CAAC;CACb;AAED,MAAM,WAAW,wBAAwB;IACrC,KAAK,EAAE,MAAM,CAAC;IACd,kBAAkB,CAAC,EAAE,MAAM,CAAC;CAC/B;AAQD,0CAA0C;AAC1C,wBAAgB,yBAAyB,CACrC,SAAS,EAAE,aAAa,EACxB,MAAM,EAAE,UAAU,GACnB;IAAE,WAAW,EAAE,MAAM,CAAC;IAAC,wBAAwB,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,UAAU,GAAG,UAAU,GAAG,MAAM,CAAA;CAAE,CAuB3H;AAOD,MAAM,WAAW,sBAAsB;IACnC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,MAAM,EAAE,UAAU,CAAC;CACtB;AAED;;GAEG;AACH,wBAAgB,2BAA2B,CAAC,KAAK,EAAE,sBAAsB,GAAG,MAAM,GAAG,SAAS,CAmB7F;AAkCD;;GAEG;AACH,wBAAgB,4BAA4B,CAAC,KAAK,EAAE,uBAAuB,GAAG,wBAAwB,CAgErG"}
1
+ {"version":3,"file":"build-project-prompt.d.ts","sourceRoot":"","sources":["../../src/build-project-prompt.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,WAAW,CAAC;AACrC,OAAO,EAGH,KAAK,wBAAwB,EAChC,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAGH,KAAK,aAAa,EACrB,MAAM,6BAA6B,CAAC;AAErC,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAK7C,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,UAAU,GAAG,MAAM,CAIhE;AAED,MAAM,WAAW,uBAAuB;IACpC,YAAY,EAAE,wBAAwB,CAAC;IACvC,MAAM,EAAE,UAAU,CAAC;IACnB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,GAAG,CAAC,EAAE,GAAG,CAAC;CACb;AAED,MAAM,WAAW,wBAAwB;IACrC,KAAK,EAAE,MAAM,CAAC;IACd,kBAAkB,CAAC,EAAE,MAAM,CAAC;CAC/B;AAQD,0CAA0C;AAC1C,wBAAgB,yBAAyB,CACrC,SAAS,EAAE,aAAa,EACxB,MAAM,EAAE,UAAU,GACnB;IAAE,WAAW,EAAE,MAAM,CAAC;IAAC,wBAAwB,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,UAAU,GAAG,UAAU,GAAG,MAAM,CAAA;CAAE,CAuB3H;AAOD,MAAM,WAAW,sBAAsB;IACnC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,MAAM,EAAE,UAAU,CAAC;CACtB;AAED;;GAEG;AACH,wBAAgB,2BAA2B,CAAC,KAAK,EAAE,sBAAsB,GAAG,MAAM,GAAG,SAAS,CAmB7F;AAkCD;;GAEG;AACH,wBAAgB,4BAA4B,CAAC,KAAK,EAAE,uBAAuB,GAAG,wBAAwB,CAsGrG"}
@@ -3,6 +3,7 @@
3
3
  */
4
4
  import { isKnowledgeBaseByPath, isKnowledgeBaseByProjectIdOnly, } from "./agent-context-types.js";
5
5
  import { normalizeWorkspaceRelativeSegment, resolveLocalAbsolutePath, } from "./project-path-normalize.js";
6
+ import { normalizeNasVolumesForPrompt } from "./nas-volumes.js";
6
7
  const DEFAULT_SANDBOX_PREFIX = "/workspace";
7
8
  const DEFAULT_PROJECT_PROMPT_MAX_CHARS = 15_000;
8
9
  export function resolvePromptMaxChars(config) {
@@ -96,35 +97,70 @@ export function buildAgentContextPromptBlock(input) {
96
97
  const { agentContext, config, workspaceHostRoot, log } = input;
97
98
  const lines = [];
98
99
  const maxChars = resolvePromptMaxChars(config);
99
- const pathInfo = resolveSandboxProjectPath(agentContext.localRoot, config);
100
+ const pathInfo = agentContext.localRoot
101
+ ? resolveSandboxProjectPath(agentContext.localRoot, config)
102
+ : undefined;
103
+ const nasVolumes = normalizeNasVolumesForPrompt(agentContext.nasVolumes);
100
104
  lines.push("## 当前项目");
101
- lines.push("");
102
- lines.push(`- 项目根目录:\`${pathInfo.sandboxPath}\``);
103
- if (pathInfo.workspaceRelativeSegment) {
104
- lines.push(`- Workspace 相对路径:\`${pathInfo.workspaceRelativeSegment}\``);
105
- lines.push(`- 本条消息入站附件:\`${pathInfo.sandboxPath}/input\``);
106
- if (pathInfo.pathMode === "relative") {
107
- lines.push(`- 未配置 \`inboundMediaSandboxRootPrefix\`,默认采用 workspace 相对路径(\`./...\`)以兼容沙箱与非沙箱环境。`);
108
- lines.push(`- 若当前运行时要求绝对前缀路径,请在通道配置中显式设置 \`inboundMediaSandboxRootPrefix\`(例如 \`${DEFAULT_SANDBOX_PREFIX}\`)。`);
105
+ if (pathInfo) {
106
+ lines.push("");
107
+ lines.push(`- 项目根目录:\`${pathInfo.sandboxPath}\``);
108
+ if (pathInfo.workspaceRelativeSegment) {
109
+ lines.push(`- Workspace 相对路径:\`${pathInfo.workspaceRelativeSegment}\``);
110
+ lines.push(`- 本条消息入站附件:\`${pathInfo.sandboxPath}/input\``);
111
+ if (pathInfo.pathMode === "relative") {
112
+ lines.push(`- 未配置 \`inboundMediaSandboxRootPrefix\`,默认采用 workspace 相对路径(\`./...\`)以兼容沙箱与非沙箱环境。`);
113
+ lines.push(`- 若当前运行时要求绝对前缀路径,请在通道配置中显式设置 \`inboundMediaSandboxRootPrefix\`(例如 \`${DEFAULT_SANDBOX_PREFIX}\`)。`);
114
+ }
115
+ }
116
+ if (pathInfo.hostNote) {
117
+ lines.push(`- ${pathInfo.hostNote}`);
118
+ lines.push(`- 注意:host_absolute 模式下附件落盘路径为宿主机绝对路径,沙箱 Agent 可能无法读取`);
109
119
  }
110
120
  }
111
- if (pathInfo.hostNote) {
112
- lines.push(`- ${pathInfo.hostNote}`);
113
- lines.push(`- 注意:host_absolute 模式下附件落盘路径为宿主机绝对路径,沙箱 Agent 可能无法读取`);
121
+ if (nasVolumes.length > 0) {
122
+ lines.push("");
123
+ lines.push("### 本次会话文件目录");
124
+ lines.push("本次会话需要读取的文件位于以下已授权目录:");
125
+ for (const volume of nasVolumes) {
126
+ lines.push(`- \`${volume.sandboxDir}\`(${volume.mode === "ro" ? "只读" : "可读写"})`);
127
+ }
128
+ const preferredWritePath = pathInfo?.sandboxPath ?? nasVolumes.find((volume) => volume.mode === "rw")?.sandboxDir;
129
+ if (preferredWritePath) {
130
+ lines.push(`- 首选文件写入目录:\`${preferredWritePath}\`${pathInfo ? "(localRoot 优先)" : ""}`);
131
+ }
132
+ else {
133
+ lines.push("- 当前 NAS 目录均为只读;不要尝试向这些目录写入文件。");
134
+ }
114
135
  }
115
136
  lines.push("");
116
137
  lines.push("### 目录用途");
117
- lines.push("- **项目产出**:项目相关文件的创建与修改应保存在项目根目录或其子目录下;子目录结构由已启用的 skill 决定。");
138
+ if (pathInfo) {
139
+ lines.push("- **项目产出**:项目相关文件的创建与修改应保存在项目根目录或其子目录下;子目录结构由已启用的 skill 决定。");
140
+ }
141
+ else {
142
+ const writableNas = nasVolumes.find((volume) => volume.mode === "rw");
143
+ lines.push(writableNas
144
+ ? `- **项目产出**:项目相关文件优先保存到可写目录 \`${writableNas.sandboxDir}\` 或其子目录。`
145
+ : "- **项目产出**:当前未指定可写项目目录;除非用户另有明确要求,不要向只读 NAS 目录写入。");
146
+ }
118
147
  const kbLine = knowledgeBasePurposeLine(agentContext);
119
148
  if (kbLine) {
120
149
  lines.push(kbLine);
121
150
  }
122
151
  lines.push("");
123
152
  lines.push("### 操作约束");
124
- lines.push("- 仅在本项目根目录下处理项目相关文件;不要在 workspace 其他位置查找类似目录。");
125
- lines.push("- 项目根目录可能尚无文件或仅有部分内容,向用户如实说明即可,不要猜测其他路径。");
153
+ if (pathInfo) {
154
+ lines.push(nasVolumes.length > 0
155
+ ? "- 仅在本项目根目录及上述已授权 NAS 目录下处理项目相关文件;不要在 workspace 其他位置查找类似目录。"
156
+ : "- 仅在本项目根目录下处理项目相关文件;不要在 workspace 其他位置查找类似目录。");
157
+ lines.push("- 项目根目录可能尚无文件或仅有部分内容,向用户如实说明即可,不要猜测其他路径。");
158
+ }
159
+ else {
160
+ lines.push("- 仅在上述已授权 NAS 目录下读取或处理项目文件;不要在 workspace 其他位置查找类似目录。");
161
+ }
126
162
  lines.push('- 对用户统一称为「本项目」,不要提及 OpenClaw workspace 等实现细节。');
127
- if (workspaceHostRoot?.trim() && agentContext.localRoot.kind === "workspace_relative") {
163
+ if (workspaceHostRoot?.trim() && agentContext.localRoot?.kind === "workspace_relative") {
128
164
  try {
129
165
  resolveLocalAbsolutePath(agentContext.localRoot, workspaceHostRoot);
130
166
  }
@@ -141,7 +177,7 @@ export function buildAgentContextPromptBlock(input) {
141
177
  }
142
178
  return {
143
179
  block: lines.join("\n"),
144
- sandboxProjectPath: pathInfo.sandboxPath,
180
+ sandboxProjectPath: pathInfo?.sandboxPath,
145
181
  };
146
182
  }
147
183
  //# sourceMappingURL=build-project-prompt.js.map