@cicctencent/agent-core 1.0.57 → 1.0.60

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.
@@ -40,6 +40,24 @@ export interface SandboxConfig {
40
40
  * 一般从服务端环境变量 SB_SCRIPT_TOKEN 下发,前端/用户不可见。
41
41
  */
42
42
  sbScriptToken?: string;
43
+ /**
44
+ * 沙箱所属应用标识(TOB 多应用模式下的应用隔离维度)。
45
+ * 以 `SB_APPLICATION_ID` 注入子进程 env,供 `sb.notify` / `sb.agent` 等按应用隔离路由。
46
+ *
47
+ * 该值为 per-application 语义,MUST 由调用方在创建沙箱时按当前应用上下文显式传入。
48
+ * 未配置(`undefined` / `null`)时注入空值,表示「无应用归属」。
49
+ * 沙箱实现 MUST NOT 回退到宿主进程全局 env 或 `data/_shared/.env`,
50
+ * 否则多应用部署下不同应用的沙箱会共用同一标识而串号。
51
+ */
52
+ applicationId?: number | null;
53
+ /**
54
+ * Agent(A2A) 调用端点,以 `SB_AGENT_ENDPOINT` 注入子进程 env。
55
+ *
56
+ * 未配置时注入空值,由沙箱内 `sb.*` 运行时按
57
+ * `{backendBaseUrl}/a2a[?applicationId=<x>]` 自行推导(Node / Python 对称)。
58
+ * 显式配置时优先于推导结果。
59
+ */
60
+ agentEndpoint?: string;
43
61
  }
44
62
  /** 默认沙箱配置 */
45
63
  export declare const DEFAULT_SANDBOX_CONFIG: Partial<SandboxConfig>;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/sandbox/types.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,KAAK,EAAE,aAAa,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAI1E,WAAW;AACX,MAAM,WAAW,aAAa;IAC5B,yCAAyC;IACzC,OAAO,EAAE,MAAM,CAAC;IAChB,8BAA8B;IAC9B,iBAAiB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC7B,6BAA6B;IAC7B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,yBAAyB;IACzB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,wBAAwB;IACxB,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B;;;;;;OAMG;IACH,sBAAsB,CAAC,EAAE,MAAM,EAAE,CAAC;IAClC;;;;OAIG;IACH,iBAAiB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC3C;;;;OAIG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,+CAA+C;IAC/C,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB;;;;OAIG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,aAAa;AACb,eAAO,MAAM,sBAAsB,EAAE,OAAO,CAAC,aAAa,CAIzD,CAAC;AAIF,aAAa;AACb,MAAM,MAAM,cAAc,GAAG,QAAQ,GAAG,QAAQ,GAAG,OAAO,CAAC;AAE3D,aAAa;AACb,MAAM,WAAW,OAAO;IACtB,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,sBAAsB;IACtB,gBAAgB,IAAI,aAAa,CAAC;IAClC,mBAAmB;IACnB,qBAAqB,IAAI,kBAAkB,CAAC;IAC5C;;;;;OAKG;IACH,SAAS,CAAC,QAAQ,EAAE,cAAc,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IACrF,mBAAmB;IACnB,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;CAC1B;AAID,cAAc;AACd,MAAM,WAAW,cAAc;IAC7B,WAAW;IACX,MAAM,CAAC,EAAE,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,OAAO,CAAC,aAAa,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IACtE,eAAe;IACf,GAAG,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,GAAG,SAAS,CAAC;IACrC,aAAa;IACb,OAAO,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACnC,aAAa;IACb,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;CAC7B;AAID;;;GAGG;AACH,eAAO,MAAM,wBAAwB,EAAE,YAAY,EAyFlD,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,qBAAqB,EAAE,MAAM,EAezC,CAAC"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/sandbox/types.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,KAAK,EAAE,aAAa,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAI1E,WAAW;AACX,MAAM,WAAW,aAAa;IAC5B,yCAAyC;IACzC,OAAO,EAAE,MAAM,CAAC;IAChB,8BAA8B;IAC9B,iBAAiB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC7B,6BAA6B;IAC7B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,yBAAyB;IACzB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,wBAAwB;IACxB,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B;;;;;;OAMG;IACH,sBAAsB,CAAC,EAAE,MAAM,EAAE,CAAC;IAClC;;;;OAIG;IACH,iBAAiB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC3C;;;;OAIG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,+CAA+C;IAC/C,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB;;;;OAIG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB;;;;;;;;OAQG;IACH,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B;;;;;;OAMG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,aAAa;AACb,eAAO,MAAM,sBAAsB,EAAE,OAAO,CAAC,aAAa,CAIzD,CAAC;AAIF,aAAa;AACb,MAAM,MAAM,cAAc,GAAG,QAAQ,GAAG,QAAQ,GAAG,OAAO,CAAC;AAE3D,aAAa;AACb,MAAM,WAAW,OAAO;IACtB,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,sBAAsB;IACtB,gBAAgB,IAAI,aAAa,CAAC;IAClC,mBAAmB;IACnB,qBAAqB,IAAI,kBAAkB,CAAC;IAC5C;;;;;OAKG;IACH,SAAS,CAAC,QAAQ,EAAE,cAAc,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IACrF,mBAAmB;IACnB,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;CAC1B;AAID,cAAc;AACd,MAAM,WAAW,cAAc;IAC7B,WAAW;IACX,MAAM,CAAC,EAAE,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,OAAO,CAAC,aAAa,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IACtE,eAAe;IACf,GAAG,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,GAAG,SAAS,CAAC;IACrC,aAAa;IACb,OAAO,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACnC,aAAa;IACb,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;CAC7B;AAID;;;GAGG;AACH,eAAO,MAAM,wBAAwB,EAAE,YAAY,EAyFlD,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,qBAAqB,EAAE,MAAM,EAezC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/sandbox/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/sandbox/types.ts"],"names":[],"mappings":"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"}
@@ -11,7 +11,10 @@ export interface AskUserArgs {
11
11
  type: InteractionType;
12
12
  /** 选项列表(choice / multi-choice 类型) */
13
13
  options?: InteractionOption[];
14
- /** 是否允许自由文本输入 */
14
+ /**
15
+ * 是否允许自由文本输入。
16
+ * 未显式传入时按类型推断:`input` 为 true,其余类型为 false。
17
+ */
15
18
  allowFreeText?: boolean;
16
19
  }
17
20
  /** ask_user 工具定义 */
@@ -1 +1 @@
1
- {"version":3,"file":"ask-user.d.ts","sourceRoot":"","sources":["../../../src/tool/ask-user.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,cAAc,EAAE,cAAc,EAAe,MAAM,YAAY,CAAC;AAC9E,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AACpE,OAAO,KAAK,EAAyC,eAAe,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAiBzH,qBAAqB;AACrB,MAAM,WAAW,WAAW;IAC1B,SAAS;IACT,KAAK,EAAE,MAAM,CAAC;IACd,WAAW;IACX,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW;IACX,IAAI,EAAE,eAAe,CAAC;IACtB,qCAAqC;IACrC,OAAO,CAAC,EAAE,iBAAiB,EAAE,CAAC;IAC9B,iBAAiB;IACjB,aAAa,CAAC,EAAE,OAAO,CAAC;CACzB;AAED,oBAAoB;AACpB,eAAO,MAAM,wBAAwB,EAAE,cA2CtC,CAAC;AAEF;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAAC,kBAAkB,EAAE,kBAAkB,GAAG,cAAc,CAyKxF"}
1
+ {"version":3,"file":"ask-user.d.ts","sourceRoot":"","sources":["../../../src/tool/ask-user.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,cAAc,EAAE,cAAc,EAAe,MAAM,YAAY,CAAC;AAC9E,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AACpE,OAAO,KAAK,EAAyC,eAAe,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAiBzH,qBAAqB;AACrB,MAAM,WAAW,WAAW;IAC1B,SAAS;IACT,KAAK,EAAE,MAAM,CAAC;IACd,WAAW;IACX,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW;IACX,IAAI,EAAE,eAAe,CAAC;IACtB,qCAAqC;IACrC,OAAO,CAAC,EAAE,iBAAiB,EAAE,CAAC;IAC9B;;;OAGG;IACH,aAAa,CAAC,EAAE,OAAO,CAAC;CACzB;AAaD,oBAAoB;AACpB,eAAO,MAAM,wBAAwB,EAAE,cA2CtC,CAAC;AAEF;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAAC,kBAAkB,EAAE,kBAAkB,GAAG,cAAc,CAqLxF"}
@@ -16,6 +16,17 @@ function ctxKey(sessionId, parentToolCallId) {
16
16
  }
17
17
  /** 超时后返回给 Agent 的收敛指令:明确要求直接继续/结束,不得再次发起交互 */
18
18
  const ASK_USER_TIMEOUT_RESULT = '用户交互请求已超时,未收到回答。请勿再次发起同类交互,直接基于已掌握的信息继续完成任务或给出结论。';
19
+ /**
20
+ * 解析是否允许自由文本输入。
21
+ *
22
+ * `input` 类型的语义就是收集用户键入的文本,未显式传值时默认开启;
23
+ * 显式传入(含 false)始终优先,保证调用方可以关闭输入框。
24
+ */
25
+ function resolveAllowFreeText(type, explicit) {
26
+ if (typeof explicit === 'boolean')
27
+ return explicit;
28
+ return type === 'input';
29
+ }
19
30
  /** ask_user 工具定义 */
20
31
  exports.ASK_USER_TOOL_DEFINITION = {
21
32
  type: 'function',
@@ -35,7 +46,7 @@ exports.ASK_USER_TOOL_DEFINITION = {
35
46
  },
36
47
  type: {
37
48
  type: 'string',
38
- description: '交互类型:confirm(确认/取消)、choice(单选)、multi-choice(多选)、input(自由文本输入)',
49
+ description: '交互类型:confirm(确认/取消)、choice(单选)、multi-choice(多选)、input(自由文本输入,用户会看到文本输入框)',
39
50
  enum: ['confirm', 'choice', 'multi-choice', 'input'],
40
51
  },
41
52
  options: {
@@ -54,7 +65,7 @@ exports.ASK_USER_TOOL_DEFINITION = {
54
65
  },
55
66
  allowFreeText: {
56
67
  type: 'boolean',
57
- description: '是否允许用户额外输入自由文本(默认 false)',
68
+ description: '是否允许用户键入自由文本。input 类型默认为 true(渲染文本输入框),其余类型默认为 false;显式传入时以传入值为准',
58
69
  },
59
70
  },
60
71
  required: ['title', 'message', 'type'],
@@ -77,7 +88,11 @@ function createAskUserTool(interactionService) {
77
88
  prompt: '### User Interaction (CRITICAL)\n' +
78
89
  '- 当你需要用户**做出选择、确认或提供输入**时,**必须调用 `ask_user` 工具**,而不是在回复中输出"您是否需要我…"、"请确认是否…"等自由文本。\n' +
79
90
  '- `ask_user` 会**暂停当前执行**并等待用户回答;收到答案后继续执行任务。\n' +
80
- '- 适用场景:需要确认(type: confirm)、选择(type: choice/multi-choice)、输入(type: input)\n' +
91
+ '- 适用场景:\n' +
92
+ ' - 需要确认:`type: "confirm"`(不传 options 时自动生成「确认 / 取消」两个选项)\n' +
93
+ ' - 需要选择:`type: "choice"`(单选)/ `type: "multi-choice"`(多选),并提供 `options`\n' +
94
+ ' - 需要用户自由输入文本:`type: "input"`,用户会看到文本输入框,答案通过 `text` 返回,无需传 `options`\n' +
95
+ '- 想在选项之外额外收集用户补充文本时,传 `allowFreeText: true`。\n' +
81
96
  '- 不要用大段文字把问题抛给用户然后结束回复;应当通过 `ask_user` 真正等待答案。\n' +
82
97
  '- 仅在确实需要从用户处获取信息时才使用,避免无谓地打断用户。',
83
98
  executor: async (args, ctx) => {
@@ -88,14 +103,18 @@ function createAskUserTool(interactionService) {
88
103
  if (TIMED_OUT_CONTEXTS.has(key)) {
89
104
  return ASK_USER_TIMEOUT_RESULT;
90
105
  }
91
- // 构建选项
92
- const options = (typedArgs.options || []).map((opt) => ({
93
- id: String(opt.id),
94
- label: String(opt.label),
95
- value: opt.value ?? opt.id,
96
- primary: Boolean(opt.primary),
97
- danger: Boolean(opt.danger),
98
- }));
106
+ // input 类型的答案落在 text,选项只会干扰用户:即便模型误传 options 也一并忽略
107
+ const isInputType = typedArgs.type === 'input';
108
+ // 构建选项(input 类型不构建,避免把选项下发给交互渠道)
109
+ const options = isInputType
110
+ ? []
111
+ : (typedArgs.options || []).map((opt) => ({
112
+ id: String(opt.id),
113
+ label: String(opt.label),
114
+ value: opt.value ?? opt.id,
115
+ primary: Boolean(opt.primary),
116
+ danger: Boolean(opt.danger),
117
+ }));
99
118
  // 对于 confirm 类型,如果没有选项则自动生成
100
119
  if (typedArgs.type === 'confirm' && options.length === 0) {
101
120
  options.push({ id: 'yes', label: '确认', primary: true }, { id: 'no', label: '取消', danger: true });
@@ -143,7 +162,7 @@ function createAskUserTool(interactionService) {
143
162
  title,
144
163
  message: typedArgs.message,
145
164
  options: options.length > 0 ? options : undefined,
146
- allowFreeText: typedArgs.allowFreeText ?? false,
165
+ allowFreeText: resolveAllowFreeText(typedArgs.type, typedArgs.allowFreeText),
147
166
  abortSignal: ctx.abortSignal,
148
167
  emit: (request) => {
149
168
  interactionRequestId = request.requestId;
@@ -185,11 +204,14 @@ function createAskUserTool(interactionService) {
185
204
  .join('、');
186
205
  parts.push(`用户选择了:${selectedLabels}`);
187
206
  }
188
- if (answer.text) {
189
- parts.push(`用户输入:${answer.text}`);
207
+ // 按 trim 后取值,避免纯空白被当作有效输入
208
+ const submittedText = typeof answer.text === 'string' ? answer.text.trim() : '';
209
+ if (submittedText) {
210
+ parts.push(`用户输入:${submittedText}`);
190
211
  }
191
212
  if (parts.length === 0) {
192
- return '用户已确认。';
213
+ // input 类型未收到非空文本时不得表述为「已确认」,避免模型把空回答误读为肯定答复
214
+ return isInputType ? '用户未输入内容,交互已结束。' : '用户已确认。';
193
215
  }
194
216
  return parts.join('\n');
195
217
  }
@@ -1 +1 @@
1
- {"version":3,"file":"ask-user.js","sourceRoot":"","sources":["../../../src/tool/ask-user.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ask-user.js","sourceRoot":"","sources":["../../../src/tool/ask-user.ts"],"names":[],"mappings":"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"}
@@ -40,6 +40,24 @@ export interface SandboxConfig {
40
40
  * 一般从服务端环境变量 SB_SCRIPT_TOKEN 下发,前端/用户不可见。
41
41
  */
42
42
  sbScriptToken?: string;
43
+ /**
44
+ * 沙箱所属应用标识(TOB 多应用模式下的应用隔离维度)。
45
+ * 以 `SB_APPLICATION_ID` 注入子进程 env,供 `sb.notify` / `sb.agent` 等按应用隔离路由。
46
+ *
47
+ * 该值为 per-application 语义,MUST 由调用方在创建沙箱时按当前应用上下文显式传入。
48
+ * 未配置(`undefined` / `null`)时注入空值,表示「无应用归属」。
49
+ * 沙箱实现 MUST NOT 回退到宿主进程全局 env 或 `data/_shared/.env`,
50
+ * 否则多应用部署下不同应用的沙箱会共用同一标识而串号。
51
+ */
52
+ applicationId?: number | null;
53
+ /**
54
+ * Agent(A2A) 调用端点,以 `SB_AGENT_ENDPOINT` 注入子进程 env。
55
+ *
56
+ * 未配置时注入空值,由沙箱内 `sb.*` 运行时按
57
+ * `{backendBaseUrl}/a2a[?applicationId=<x>]` 自行推导(Node / Python 对称)。
58
+ * 显式配置时优先于推导结果。
59
+ */
60
+ agentEndpoint?: string;
43
61
  }
44
62
  /** 默认沙箱配置 */
45
63
  export declare const DEFAULT_SANDBOX_CONFIG: Partial<SandboxConfig>;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/sandbox/types.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,KAAK,EAAE,aAAa,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAI1E,WAAW;AACX,MAAM,WAAW,aAAa;IAC5B,yCAAyC;IACzC,OAAO,EAAE,MAAM,CAAC;IAChB,8BAA8B;IAC9B,iBAAiB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC7B,6BAA6B;IAC7B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,yBAAyB;IACzB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,wBAAwB;IACxB,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B;;;;;;OAMG;IACH,sBAAsB,CAAC,EAAE,MAAM,EAAE,CAAC;IAClC;;;;OAIG;IACH,iBAAiB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC3C;;;;OAIG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,+CAA+C;IAC/C,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB;;;;OAIG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,aAAa;AACb,eAAO,MAAM,sBAAsB,EAAE,OAAO,CAAC,aAAa,CAIzD,CAAC;AAIF,aAAa;AACb,MAAM,MAAM,cAAc,GAAG,QAAQ,GAAG,QAAQ,GAAG,OAAO,CAAC;AAE3D,aAAa;AACb,MAAM,WAAW,OAAO;IACtB,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,sBAAsB;IACtB,gBAAgB,IAAI,aAAa,CAAC;IAClC,mBAAmB;IACnB,qBAAqB,IAAI,kBAAkB,CAAC;IAC5C;;;;;OAKG;IACH,SAAS,CAAC,QAAQ,EAAE,cAAc,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IACrF,mBAAmB;IACnB,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;CAC1B;AAID,cAAc;AACd,MAAM,WAAW,cAAc;IAC7B,WAAW;IACX,MAAM,CAAC,EAAE,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,OAAO,CAAC,aAAa,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IACtE,eAAe;IACf,GAAG,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,GAAG,SAAS,CAAC;IACrC,aAAa;IACb,OAAO,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACnC,aAAa;IACb,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;CAC7B;AAID;;;GAGG;AACH,eAAO,MAAM,wBAAwB,EAAE,YAAY,EAyFlD,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,qBAAqB,EAAE,MAAM,EAezC,CAAC"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/sandbox/types.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,KAAK,EAAE,aAAa,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAI1E,WAAW;AACX,MAAM,WAAW,aAAa;IAC5B,yCAAyC;IACzC,OAAO,EAAE,MAAM,CAAC;IAChB,8BAA8B;IAC9B,iBAAiB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC7B,6BAA6B;IAC7B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,yBAAyB;IACzB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,wBAAwB;IACxB,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B;;;;;;OAMG;IACH,sBAAsB,CAAC,EAAE,MAAM,EAAE,CAAC;IAClC;;;;OAIG;IACH,iBAAiB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC3C;;;;OAIG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,+CAA+C;IAC/C,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB;;;;OAIG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB;;;;;;;;OAQG;IACH,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B;;;;;;OAMG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,aAAa;AACb,eAAO,MAAM,sBAAsB,EAAE,OAAO,CAAC,aAAa,CAIzD,CAAC;AAIF,aAAa;AACb,MAAM,MAAM,cAAc,GAAG,QAAQ,GAAG,QAAQ,GAAG,OAAO,CAAC;AAE3D,aAAa;AACb,MAAM,WAAW,OAAO;IACtB,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,sBAAsB;IACtB,gBAAgB,IAAI,aAAa,CAAC;IAClC,mBAAmB;IACnB,qBAAqB,IAAI,kBAAkB,CAAC;IAC5C;;;;;OAKG;IACH,SAAS,CAAC,QAAQ,EAAE,cAAc,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IACrF,mBAAmB;IACnB,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;CAC1B;AAID,cAAc;AACd,MAAM,WAAW,cAAc;IAC7B,WAAW;IACX,MAAM,CAAC,EAAE,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,OAAO,CAAC,aAAa,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IACtE,eAAe;IACf,GAAG,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,GAAG,SAAS,CAAC;IACrC,aAAa;IACb,OAAO,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACnC,aAAa;IACb,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;CAC7B;AAID;;;GAGG;AACH,eAAO,MAAM,wBAAwB,EAAE,YAAY,EAyFlD,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,qBAAqB,EAAE,MAAM,EAezC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/sandbox/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/sandbox/types.ts"],"names":[],"mappings":"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"}
@@ -11,7 +11,10 @@ export interface AskUserArgs {
11
11
  type: InteractionType;
12
12
  /** 选项列表(choice / multi-choice 类型) */
13
13
  options?: InteractionOption[];
14
- /** 是否允许自由文本输入 */
14
+ /**
15
+ * 是否允许自由文本输入。
16
+ * 未显式传入时按类型推断:`input` 为 true,其余类型为 false。
17
+ */
15
18
  allowFreeText?: boolean;
16
19
  }
17
20
  /** ask_user 工具定义 */
@@ -1 +1 @@
1
- {"version":3,"file":"ask-user.d.ts","sourceRoot":"","sources":["../../../src/tool/ask-user.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,cAAc,EAAE,cAAc,EAAe,MAAM,YAAY,CAAC;AAC9E,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AACpE,OAAO,KAAK,EAAyC,eAAe,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAiBzH,qBAAqB;AACrB,MAAM,WAAW,WAAW;IAC1B,SAAS;IACT,KAAK,EAAE,MAAM,CAAC;IACd,WAAW;IACX,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW;IACX,IAAI,EAAE,eAAe,CAAC;IACtB,qCAAqC;IACrC,OAAO,CAAC,EAAE,iBAAiB,EAAE,CAAC;IAC9B,iBAAiB;IACjB,aAAa,CAAC,EAAE,OAAO,CAAC;CACzB;AAED,oBAAoB;AACpB,eAAO,MAAM,wBAAwB,EAAE,cA2CtC,CAAC;AAEF;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAAC,kBAAkB,EAAE,kBAAkB,GAAG,cAAc,CAyKxF"}
1
+ {"version":3,"file":"ask-user.d.ts","sourceRoot":"","sources":["../../../src/tool/ask-user.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,cAAc,EAAE,cAAc,EAAe,MAAM,YAAY,CAAC;AAC9E,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AACpE,OAAO,KAAK,EAAyC,eAAe,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAiBzH,qBAAqB;AACrB,MAAM,WAAW,WAAW;IAC1B,SAAS;IACT,KAAK,EAAE,MAAM,CAAC;IACd,WAAW;IACX,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW;IACX,IAAI,EAAE,eAAe,CAAC;IACtB,qCAAqC;IACrC,OAAO,CAAC,EAAE,iBAAiB,EAAE,CAAC;IAC9B;;;OAGG;IACH,aAAa,CAAC,EAAE,OAAO,CAAC;CACzB;AAaD,oBAAoB;AACpB,eAAO,MAAM,wBAAwB,EAAE,cA2CtC,CAAC;AAEF;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAAC,kBAAkB,EAAE,kBAAkB,GAAG,cAAc,CAqLxF"}
@@ -12,6 +12,17 @@ function ctxKey(sessionId, parentToolCallId) {
12
12
  }
13
13
  /** 超时后返回给 Agent 的收敛指令:明确要求直接继续/结束,不得再次发起交互 */
14
14
  const ASK_USER_TIMEOUT_RESULT = '用户交互请求已超时,未收到回答。请勿再次发起同类交互,直接基于已掌握的信息继续完成任务或给出结论。';
15
+ /**
16
+ * 解析是否允许自由文本输入。
17
+ *
18
+ * `input` 类型的语义就是收集用户键入的文本,未显式传值时默认开启;
19
+ * 显式传入(含 false)始终优先,保证调用方可以关闭输入框。
20
+ */
21
+ function resolveAllowFreeText(type, explicit) {
22
+ if (typeof explicit === 'boolean')
23
+ return explicit;
24
+ return type === 'input';
25
+ }
15
26
  /** ask_user 工具定义 */
16
27
  export const ASK_USER_TOOL_DEFINITION = {
17
28
  type: 'function',
@@ -31,7 +42,7 @@ export const ASK_USER_TOOL_DEFINITION = {
31
42
  },
32
43
  type: {
33
44
  type: 'string',
34
- description: '交互类型:confirm(确认/取消)、choice(单选)、multi-choice(多选)、input(自由文本输入)',
45
+ description: '交互类型:confirm(确认/取消)、choice(单选)、multi-choice(多选)、input(自由文本输入,用户会看到文本输入框)',
35
46
  enum: ['confirm', 'choice', 'multi-choice', 'input'],
36
47
  },
37
48
  options: {
@@ -50,7 +61,7 @@ export const ASK_USER_TOOL_DEFINITION = {
50
61
  },
51
62
  allowFreeText: {
52
63
  type: 'boolean',
53
- description: '是否允许用户额外输入自由文本(默认 false)',
64
+ description: '是否允许用户键入自由文本。input 类型默认为 true(渲染文本输入框),其余类型默认为 false;显式传入时以传入值为准',
54
65
  },
55
66
  },
56
67
  required: ['title', 'message', 'type'],
@@ -73,7 +84,11 @@ export function createAskUserTool(interactionService) {
73
84
  prompt: '### User Interaction (CRITICAL)\n' +
74
85
  '- 当你需要用户**做出选择、确认或提供输入**时,**必须调用 `ask_user` 工具**,而不是在回复中输出"您是否需要我…"、"请确认是否…"等自由文本。\n' +
75
86
  '- `ask_user` 会**暂停当前执行**并等待用户回答;收到答案后继续执行任务。\n' +
76
- '- 适用场景:需要确认(type: confirm)、选择(type: choice/multi-choice)、输入(type: input)\n' +
87
+ '- 适用场景:\n' +
88
+ ' - 需要确认:`type: "confirm"`(不传 options 时自动生成「确认 / 取消」两个选项)\n' +
89
+ ' - 需要选择:`type: "choice"`(单选)/ `type: "multi-choice"`(多选),并提供 `options`\n' +
90
+ ' - 需要用户自由输入文本:`type: "input"`,用户会看到文本输入框,答案通过 `text` 返回,无需传 `options`\n' +
91
+ '- 想在选项之外额外收集用户补充文本时,传 `allowFreeText: true`。\n' +
77
92
  '- 不要用大段文字把问题抛给用户然后结束回复;应当通过 `ask_user` 真正等待答案。\n' +
78
93
  '- 仅在确实需要从用户处获取信息时才使用,避免无谓地打断用户。',
79
94
  executor: async (args, ctx) => {
@@ -84,14 +99,18 @@ export function createAskUserTool(interactionService) {
84
99
  if (TIMED_OUT_CONTEXTS.has(key)) {
85
100
  return ASK_USER_TIMEOUT_RESULT;
86
101
  }
87
- // 构建选项
88
- const options = (typedArgs.options || []).map((opt) => ({
89
- id: String(opt.id),
90
- label: String(opt.label),
91
- value: opt.value ?? opt.id,
92
- primary: Boolean(opt.primary),
93
- danger: Boolean(opt.danger),
94
- }));
102
+ // input 类型的答案落在 text,选项只会干扰用户:即便模型误传 options 也一并忽略
103
+ const isInputType = typedArgs.type === 'input';
104
+ // 构建选项(input 类型不构建,避免把选项下发给交互渠道)
105
+ const options = isInputType
106
+ ? []
107
+ : (typedArgs.options || []).map((opt) => ({
108
+ id: String(opt.id),
109
+ label: String(opt.label),
110
+ value: opt.value ?? opt.id,
111
+ primary: Boolean(opt.primary),
112
+ danger: Boolean(opt.danger),
113
+ }));
95
114
  // 对于 confirm 类型,如果没有选项则自动生成
96
115
  if (typedArgs.type === 'confirm' && options.length === 0) {
97
116
  options.push({ id: 'yes', label: '确认', primary: true }, { id: 'no', label: '取消', danger: true });
@@ -139,7 +158,7 @@ export function createAskUserTool(interactionService) {
139
158
  title,
140
159
  message: typedArgs.message,
141
160
  options: options.length > 0 ? options : undefined,
142
- allowFreeText: typedArgs.allowFreeText ?? false,
161
+ allowFreeText: resolveAllowFreeText(typedArgs.type, typedArgs.allowFreeText),
143
162
  abortSignal: ctx.abortSignal,
144
163
  emit: (request) => {
145
164
  interactionRequestId = request.requestId;
@@ -181,11 +200,14 @@ export function createAskUserTool(interactionService) {
181
200
  .join('、');
182
201
  parts.push(`用户选择了:${selectedLabels}`);
183
202
  }
184
- if (answer.text) {
185
- parts.push(`用户输入:${answer.text}`);
203
+ // 按 trim 后取值,避免纯空白被当作有效输入
204
+ const submittedText = typeof answer.text === 'string' ? answer.text.trim() : '';
205
+ if (submittedText) {
206
+ parts.push(`用户输入:${submittedText}`);
186
207
  }
187
208
  if (parts.length === 0) {
188
- return '用户已确认。';
209
+ // input 类型未收到非空文本时不得表述为「已确认」,避免模型把空回答误读为肯定答复
210
+ return isInputType ? '用户未输入内容,交互已结束。' : '用户已确认。';
189
211
  }
190
212
  return parts.join('\n');
191
213
  }
@@ -1 +1 @@
1
- {"version":3,"file":"ask-user.js","sourceRoot":"","sources":["../../../src/tool/ask-user.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ask-user.js","sourceRoot":"","sources":["../../../src/tool/ask-user.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@cicctencent/agent-core",
3
- "version": "1.0.57",
3
+ "version": "1.0.60",
4
4
  "description": "Core engine for AI agent — LLM orchestration, tool execution, MCP, skill routing, security, and memory pipeline.",
5
5
  "type": "module",
6
6
  "main": "./dist/cjs/index.js",