import { app } from 'electron'; import * as fs from 'fs'; import * as path from 'path'; import { parseSessionKey } from '@runtime/lib/agents'; export function getTranscriptFilePath(sessionKey: string): string { const parsed = parseSessionKey(sessionKey); let agentId = parsed.isAgentSession ? parsed.agentId : 'default'; let sessionId = parsed.isAgentSession ? parsed.sessionId : sessionKey; if (!sessionId) { sessionId = 'unknown'; } const baseDir = path.join(app.getPath('userData'), 'agents', agentId, 'sessions'); return path.join(baseDir, `${sessionId}.jsonl`); } export function appendTranscriptLine(sessionKey: string, lineObject: any): void { const filePath = getTranscriptFilePath(sessionKey); fs.mkdirSync(path.dirname(filePath), { recursive: true }); fs.appendFileSync(filePath, JSON.stringify(lineObject) + '\n', 'utf-8'); }