/** * 统一调度命令:触发参数(every/at/after/cron)与会话模式(main/isolated)正交,全部组合可用。 * - mode 只决定上下文:main=复用当前聊天主会话,isolated=每次独立会话 * - trigger 只决定何时执行:every=循环,at=定时一次,after=延迟一次,cron=日历表达式 */ export type ScheduleTrigger = "every" | "at" | "after" | "cron"; export type ScheduleMode = "main" | "isolated"; export interface CreateScheduleCommand { type: "create.schedule"; mode: ScheduleMode; trigger: ScheduleTrigger; prompt: string; /** trigger=every:循环间隔(秒) */ intervalSeconds?: number; /** trigger=at:本地时间(如 "2026-08-05 18:00") */ at?: string; /** trigger=after:延迟秒数 */ afterSeconds?: number; /** trigger=cron:5 段表达式 */ cronExpr?: string; description?: string; maxTimes?: number; durationSeconds?: number; untilTime?: string; timeZone?: string; } export type ScheduleAgentCommand = CreateScheduleCommand | { type: "cancel"; scheduleId: string; }; export interface ScheduleAgentCommandResult { output: string; } /** * 解析调度命令并归一化:旧格式 create.loop / create.cron 兼容映射到 create.schedule。 */ export declare function parseScheduleAgentCommand(value: unknown): ScheduleAgentCommand; /** 归一化会话模式:新名 current_session/new_session(直白),兼容名 main/isolated、旧名 loop/cron。 */ export declare function normalizeScheduleMode(value: unknown): ScheduleMode;