repomix
Version:
A tool to pack repository contents to single file for AI consumption
40 lines (39 loc) • 1.64 kB
TypeScript
import type { CallToolResult } from '@modelcontextprotocol/sdk/types.js';
import type { ProcessedFile } from '../../core/file/fileTypes.js';
export declare const registerOutputFile: (id: string, filePath: string) => void;
export declare const getOutputFilePath: (id: string) => string | undefined;
export interface McpToolMetrics {
totalFiles: number;
totalCharacters: number;
totalTokens: number;
fileCharCounts: Record<string, number>;
fileTokenCounts: Record<string, number>;
processedFiles: ProcessedFile[];
safeFilePaths: string[];
}
export interface McpToolContext {
directory?: string;
repository?: string;
}
interface BaseMcpToolResponse {
description?: string;
errorMessage?: string;
}
type McpToolStructuredContent = (BaseMcpToolResponse & Record<string, unknown>) | undefined;
export declare const createToolWorkspace: () => Promise<string>;
export declare const generateOutputId: () => string;
export declare const formatPackToolResponse: (context: McpToolContext, metrics: McpToolMetrics, outputFilePath: string, topFilesLen?: number) => Promise<CallToolResult>;
export declare const convertErrorToJson: (error: unknown) => {
errorMessage: string;
details: {
stack?: string;
name: string;
cause?: unknown;
code?: string | number;
timestamp: string;
type: "Error" | "Unknown";
};
};
export declare const buildMcpToolSuccessResponse: (structuredContent: McpToolStructuredContent) => CallToolResult;
export declare const buildMcpToolErrorResponse: (structuredContent: McpToolStructuredContent) => CallToolResult;
export {};