feat(agent): 系统提示规定汇报格式(AGUI-3)

新增「汇报格式」一节:第一句写结论;对象用名字,不写函数名、工具名、字段名、UUID 或 hash;
不超过 10 行;列举 3 个以上资源才用表格;不写标题和 HTML。证据规则改为写对象名称和关键数值。
方案规则改为只在真有分歧时给方案,并说明方案绑定计划、选定即批准的用法;步骤标题不写工具名。
子会话与视觉子流程汇报给父会话(audience: agent),不加用户汇报格式。
加 prompt 回归测试,快照断言汇报格式的关键约束句。

Co-Authored-By: Claude Opus 5.5 <[email protected]>
This commit is contained in:
rootandClaude Opus 5.5 committed 2026-09-29 22:41:13 +08:00
1 parent 4e0e6712da
commit 2ab6d452dd
6 files changed
+112 -8

No files matched your search

@@ -292,6 +292,7 @@ async function runChild(
const systemPrompt = buildSystemPrompt({
role: "网页挑战处理员",
goal,
audience: "agent",
constraints: [
`只能用这些工具:${VISION_CAPABILITIES.join(", ")};每个工具都要传 sessionId = ${input.sessionId}。`,
"先 browser.screenshot 看页面;坐标一律以最近一张截图的像素为准,点击 / 输入 / 滚动之后会返回新截图,按新截图继续。",
+2
View File
@@ -291,6 +291,8 @@ function systemPromptFor(
role: run.trigger === "event" ? "媒体库异常调查员" : "媒体库自动化智能体",
goal: run.goal,
constraints,
// 子会话汇报给父会话汇总(可带对象 ID);其余会话按「汇报格式」写给用户
audience: run.parent_run_id ? "agent" : "user",
// 自动化优先:用户会话默认执行,先出步骤清单;有取舍时给方案;"先看方案再执行"是会话选项
...(canAskUser(run)
? {