feat(agent): 触发器新增「工具调用」条件 + 定时触发改为复选框展开

- 定时触发统一为前置复选框,勾选后展开「每 N 秒」+ 消息(与其它条件一致)
- 新增工具调用触发(P3 第 5 种条件):
  - 选中系统工具列表(至少一个),任务执行中这些工具每次调用完成即触发 agent
  - 触发消息带上任务 id/描述/目标 + 工具名 + 入参 + 返回内容(各截断 1500 字)
  - 只读任务执行的 activity,触发跑的会话写 conversation_activities,天然无自触发循环
- DB: agent_triggers 加 on_tool_call/tool_call_message/tool_names 三列;
  已发版,附幂等 ALTER TABLE ADD COLUMN IF NOT EXISTS 供旧库升级补列
- scheduler: 新增 last_toolcall_id 水位线(首启 seed) + fireToolCalls,以 tool_result
  为水位、回连 tool_use 取入参,按选中工具集合匹配后触发

Co-Authored-By: Claude Opus 4.8 <[email protected]>
This commit is contained in:
Autumn-27andClaude Opus 4.8 committed 2026-08-08 02:59:07 -04:00
1 parent 82bd19a1cd
commit f9716269ea
6 files changed
+275 -51

No files matched your search

+3
View File
@@ -227,10 +227,13 @@ export interface AgentTrigger {
on_finding: boolean; // 任意任务发现 finding 时触发
on_goal_met: boolean; // 任意任务达成目标时触发
on_task_timeout: boolean; // 任意任务超时时触发
on_tool_call: boolean; // 选中工具被调用(执行完成)时触发
interval_message: string; // 各触发条件的独立用户消息
finding_message: string;
goal_message: string;
task_timeout_message: string;
tool_call_message: string;
tool_names: string[]; // on_tool_call 选中的工具 key(至少一个)
last_fire?: string;
}