@iflow-mcp/ejmockler-brutalist
Version:
Deploy Claude, Codex & Gemini CLI agents to demolish your work before users do. Real file analysis. Brutal honesty. Now with conversation continuation & intelligent pagination.
77 lines • 2.28 kB
TypeScript
/**
* Core abstraction: CriticPersona
*
* Defines who the critic is - their tone, expertise, and prompt template.
* Personas are reusable across domains.
*/
import { CritiqueDomain } from './critique-domain.js';
export type CriticTone = 'brutal' | 'constructive' | 'balanced' | 'pedagogical';
export type ExpertiseLevel = 'junior' | 'mid' | 'senior' | 'principal' | 'architect';
export interface ModelPreferences {
claude?: string;
codex?: string;
gemini?: string;
}
/**
* A template string with variable substitution
*/
export declare class PromptTemplate {
private template;
constructor(template: string);
/**
* Render the template with domain-specific variables
*/
render(domain: CritiqueDomain, additionalVars?: Record<string, any>): string;
/**
* Get the raw template string
*/
getRaw(): string;
}
export interface CriticPersona {
/** Unique identifier for this persona */
id: string;
/** Human-readable name */
name: string;
/** Which domain(s) this persona critiques */
domain?: CritiqueDomain;
/** The system prompt template */
promptTemplate: PromptTemplate;
/** Tone of the critique */
tone: CriticTone;
/** Level of expertise */
expertise: ExpertiseLevel;
/** Preferred models for this persona */
preferredModels?: ModelPreferences;
/** Additional persona characteristics */
characteristics?: {
background?: string;
specialization?: string;
years_experience?: number;
};
}
/**
* Helper to create a persona for a specific domain
*/
export declare function bindPersonaToDomain(persona: CriticPersona, domain: CritiqueDomain): CriticPersona;
/**
* Pre-built prompt templates for common personas
*/
export declare const PromptTemplates: {
/**
* Brutal critic - finds every flaw, no mercy
*/
BRUTAL: PromptTemplate;
/**
* Constructive critic - identifies issues but provides solutions
*/
CONSTRUCTIVE: PromptTemplate;
/**
* Balanced critic - objective analysis with pros and cons
*/
BALANCED: PromptTemplate;
/**
* Pedagogical critic - teaches through critique
*/
PEDAGOGICAL: PromptTemplate;
};
//# sourceMappingURL=critic-persona.d.ts.map