/**
 * Parse Pi/GPT agent metadata from VisionClaw log lines ([pi-coding-*]).
 */
import type { WakeCycle } from "./types.js";
export interface PiCodingInit {
    /** Pi runtime session UUID from `[pi-coding-resources] session=...`. */
    sessionId: string;
    /** Transcript file UUID from `sessionFile` / `data.sessionFile` (preferred for matching). */
    transcriptSessionId?: string;
    timestamp: string;
    /** Active tool names for this wake (`activeToolNames` from resources-loaded log). */
    tools: string[];
    /** External MCP server names from `[pi-coding-mcps]`. */
    mcpServers: string[];
    skills: string[];
}
/** Session id used to index and match transcript turns (file UUID when known). */
export declare function piMatchingSessionId(init: PiCodingInit): string;
/**
 * Collect Pi coding-agent init metadata from a wake cycle's log entries.
 * Merges mcps/skills lines that immediately follow a resources line.
 */
export declare function parsePiCodingInitsFromCycle(cycle: WakeCycle): PiCodingInit[];
/** First Pi init in the cycle (typical single-session turn). */
export declare function parsePiCodingInitFromCycle(cycle: WakeCycle): PiCodingInit | null;
/**
 * Synthetic SDK-style system init for Viewer / downstream consumers.
 * `tools` lists all active tool names for the wake; `mcp_servers` lists MCP servers only.
 */
export declare function buildSyntheticPiSystemMessage(init: PiCodingInit): Record<string, unknown>;
//# sourceMappingURL=pi-log-metadata.d.ts.map