Files
superwork/vscode/src/panel/brainstormContinue.ts
T

16 lines
754 B
TypeScript

/**
* 「续聊」按钮的三条路径。终端还活着就直接把提示词打进去(不管有没有
* 记录到 sessionId,新建工单流程里 id 可能还没落盘);终端没了但有
* sessionId 且本机有它的会话文件就 `--resume` 并带上提示词;否则新开会话
* ——会话 id 来自共享状态,别的机器上开的会话本机 resume 不了。
*/
export type BrainstormContinuePath = 'inject' | 'resume' | 'fresh'
export function pickBrainstormContinuePath(opts: { liveTerminal: boolean, sessionId: string | undefined, sessionFileExists: boolean }): BrainstormContinuePath {
if (opts.liveTerminal)
return 'inject'
if (opts.sessionId && opts.sessionFileExists)
return 'resume'
return 'fresh'
}