squabble-mcp
Version:
Engineer-driven development with critical-thinking PM collaboration - MCP server for Claude
57 lines • 2.07 kB
TypeScript
import { PMSession } from '../types.js';
import { WorkspaceManager } from '../workspace/manager.js';
/**
* Manages PM sessions for the --resume functionality
* Handles spawning PM with claude CLI and tracking session UUIDs
*/
export declare class PMSessionManager {
private workspaceManager;
constructor(workspaceManager: WorkspaceManager);
/**
* Parses tool usage from Claude CLI stream-json output and writes to activity log
* Also extracts session ID from system events
*/
private logPMActivity;
/**
* Formats tool usage events into human-readable activity log entries
*/
private formatToolUse;
/**
* Formats tool result events (optional - for showing what PM found)
*/
private formatToolResult;
/**
* Spawns a new PM session or resumes an existing one
* @param prompt The initial prompt or continued conversation
* @param systemPrompt The PM's system prompt
* @param resumeSessionId Optional session ID to resume from
* @returns The PM's response and session information
*/
consultPM(prompt: string, systemPrompt: string, resumeSessionId?: string): Promise<{
response: string;
sessionId: string;
}>;
/**
* Gets the Claude project sessions directory for the current project
*/
private getProjectSessionsDir;
/**
* Updates the PM session tracking - keeps only current session
* Cleans up previous session file from Claude's project directory
*/
private updatePMSession;
/**
* Gets the current PM session information
*/
getCurrentSession(): Promise<PMSession | null>;
/**
* Creates the PM system prompt with proper context and instructions
* @deprecated Use createPMSystemPromptWithCustom for custom prompt support
*/
static createPMSystemPrompt(): string;
/**
* Creates the PM system prompt with custom prompt support
*/
static createPMSystemPromptWithCustom(workspaceRoot: string): string;
}
//# sourceMappingURL=session-manager.d.ts.map