woaru
Version:
Universal Project Setup Autopilot - Analyze and automatically configure development tools for ANY programming language
77 lines • 2.21 kB
TypeScript
export interface PromptTemplate {
name: string;
description: string;
version: string;
author: string;
tags: string[];
system_prompt: string;
user_prompt: string;
parameters: {
max_tokens: number;
temperature: number;
focus_areas: string[];
};
output_format: {
structure: string;
sections: string[];
[key: string]: unknown;
};
[key: string]: unknown;
}
/**
* PromptManager - Manages dynamic prompt templates for LLM analysis
*
* Features:
* - Load and manage prompt templates from YAML files
* - Copy standard templates during LLM setup
* - Dynamic prompt loading based on user selection
* - Template validation and error handling
*/
export declare class PromptManager {
private static instance;
private readonly woaruDir;
private readonly promptsDir;
private readonly templatesDir;
private constructor();
/**
* Get singleton instance of PromptManager
*/
static getInstance(): PromptManager;
/**
* Initialize prompt directories
*/
initialize(): Promise<void>;
/**
* Copy standard prompt templates for a specific LLM provider
*/
copyStandardPrompts(providerId: string): Promise<void>;
/**
* Load a specific prompt template for a provider
*/
loadPrompt(providerId: string, promptName?: string): Promise<PromptTemplate>;
/**
* Load prompt template from file
*/
private loadPromptFile;
/**
* List available prompts for a provider
*/
listAvailablePrompts(providerId: string): Promise<string[]>;
/**
* Get prompt directory for a provider
*/
getProviderPromptsDir(providerId: string): string;
/**
* Validate prompt template structure
*/
validatePromptTemplate(template: unknown): boolean;
/**
* Interpolate variables in prompt text
*/
interpolatePrompt(promptText: string, variables: Record<string, string>): string;
/**
* Create a new prompt template from scratch
*/
createPromptTemplate(providerId: string, templateData: Partial<PromptTemplate>): Promise<void>;
}
//# sourceMappingURL=PromptManager.d.ts.map