mcp-ai-agent-guidelines
Version:
A comprehensive Model Context Protocol server providing advanced tools, resources, and prompts for implementing AI agent best practices
913 lines • 111 kB
JavaScript
#!/usr/bin/env node
/**
* AI Agent Development Guidelines MCP Server
*
* This MCP server provides tools, resources, and prompts for implementing
* AI agent best practices including hierarchical prompting, code hygiene
* analysis, mermaid diagram generation, memory optimization, and sprint planning.
*/
// Dynamic version from package.json using createRequire for ESM compatibility
import { createRequire } from "node:module";
import { Server } from "@modelcontextprotocol/sdk/server/index.js";
const require = createRequire(import.meta.url);
// eslint-disable-next-line @typescript-eslint/no-var-requires -- acceptable for package metadata
const pkg = require("../package.json");
import { StdioServerTransport } from "@modelcontextprotocol/sdk/server/stdio.js";
import { CallToolRequestSchema, GetPromptRequestSchema, ListPromptsRequestSchema, ListResourcesRequestSchema, ListToolsRequestSchema, ReadResourceRequestSchema, } from "@modelcontextprotocol/sdk/types.js";
// Import prompts
import { getPrompt, listPrompts } from "./prompts/index.js";
// Import resources
import { getResource, listResources } from "./resources/index.js";
// Import tool schemas
import { promptChainingBuilderSchema, promptFlowBuilderSchema, } from "./schemas/flow-tool-schemas.js";
import { gapFrameworksAnalyzers } from "./tools/analysis/gap-frameworks-analyzers.js";
import { strategyFrameworksBuilder } from "./tools/analysis/strategy-frameworks-builder.js";
import { cleanCodeScorer } from "./tools/clean-code-scorer.js";
import { codeHygieneAnalyzer } from "./tools/code-hygiene-analyzer.js";
import { PROVIDER_ENUM_VALUES } from "./tools/config/generated/index.js";
import { dependencyAuditor } from "./tools/dependency-auditor.js";
import { designAssistant, } from "./tools/design/index.js";
import { guidelinesValidator } from "./tools/guidelines-validator.js";
import { iterativeCoverageEnhancer } from "./tools/iterative-coverage-enhancer.js";
import { memoryContextOptimizer } from "./tools/memory-context-optimizer.js";
import { mermaidDiagramGenerator } from "./tools/mermaid/index.js";
import { modeSwitcher } from "./tools/mode-switcher.js";
import { modelCompatibilityChecker } from "./tools/model-compatibility-checker.js";
import { projectOnboarding } from "./tools/project-onboarding.js";
import { architectureDesignPromptBuilder } from "./tools/prompt/architecture-design-prompt-builder.js";
import { codeAnalysisPromptBuilder } from "./tools/prompt/code-analysis-prompt-builder.js";
import { coverageDashboardDesignPromptBuilder } from "./tools/prompt/coverage-dashboard-design-prompt-builder.js";
import { debuggingAssistantPromptBuilder } from "./tools/prompt/debugging-assistant-prompt-builder.js";
import { documentationGeneratorPromptBuilder } from "./tools/prompt/documentation-generator-prompt-builder.js";
import { domainNeutralPromptBuilder } from "./tools/prompt/domain-neutral-prompt-builder.js";
import { enterpriseArchitectPromptBuilder } from "./tools/prompt/enterprise-architect-prompt-builder.js";
// Import tool implementations
import { hierarchicalPromptBuilder } from "./tools/prompt/hierarchical-prompt-builder.js";
import { hierarchyLevelSelector } from "./tools/prompt/hierarchy-level-selector.js";
import { l9DistinguishedEngineerPromptBuilder } from "./tools/prompt/l9-distinguished-engineer-prompt-builder.js";
import { promptChainingBuilder } from "./tools/prompt/prompt-chaining-builder.js";
import { promptFlowBuilder } from "./tools/prompt/prompt-flow-builder.js";
import { promptingHierarchyEvaluator } from "./tools/prompt/prompting-hierarchy-evaluator.js";
import { quickDeveloperPromptsBuilder } from "./tools/prompt/quick-developer-prompts-builder.js";
import { securityHardeningPromptBuilder } from "./tools/prompt/security-hardening-prompt-builder.js";
import { sparkPromptBuilder } from "./tools/prompt/spark-prompt-builder.js";
import { semanticCodeAnalyzer } from "./tools/semantic-code-analyzer.js";
import { sprintTimelineCalculator } from "./tools/sprint-timeline-calculator.js";
const server = new Server({
name: "ai-agent-guidelines",
version: pkg.version,
}, {
capabilities: {
tools: {},
resources: {},
prompts: {},
},
});
// Register tool handlers
server.setRequestHandler(ListToolsRequestSchema, async () => {
return {
tools: [
{
name: "hierarchical-prompt-builder",
description: "Build structured prompts with clear hierarchies and layers of specificity. Use this MCP to create prompts with context → goal → requirements hierarchy, supporting multiple prompting techniques (chain-of-thought, few-shot, etc.). Example: 'Use the hierarchical-prompt-builder MCP to create a code review prompt for React components focusing on performance optimization'",
inputSchema: {
type: "object",
properties: {
context: {
type: "string",
description: "The broad context or domain",
},
goal: {
type: "string",
description: "The specific goal or objective",
},
requirements: {
type: "array",
items: { type: "string" },
description: "Detailed requirements and constraints",
},
outputFormat: {
type: "string",
description: "Desired output format",
},
audience: {
type: "string",
description: "Target audience or expertise level",
},
includeDisclaimer: {
type: "boolean",
description: "Append a third-party disclaimer section",
},
includeReferences: {
type: "boolean",
description: "Append a short references list",
},
// 2025 techniques integration
techniques: {
type: "array",
items: {
type: "string",
enum: [
"zero-shot",
"few-shot",
"chain-of-thought",
"self-consistency",
"in-context-learning",
"generate-knowledge",
"prompt-chaining",
"tree-of-thoughts",
"meta-prompting",
"rag",
"react",
"art",
],
},
description: "Optional list of technique hints to include",
},
includeTechniqueHints: {
type: "boolean",
description: "Include a Technique Hints section",
},
includePitfalls: {
type: "boolean",
description: "Include a Pitfalls section",
},
autoSelectTechniques: {
type: "boolean",
description: "Infer techniques automatically from context/goal/requirements",
},
provider: {
type: "string",
enum: PROVIDER_ENUM_VALUES,
description: "Model family for tailored tips",
},
style: {
type: "string",
enum: ["markdown", "xml"],
description: "Preferred prompt formatting style",
},
},
required: ["context", "goal"],
},
},
{
name: "code-analysis-prompt-builder",
description: "Generate comprehensive code analysis prompts with customizable focus areas (security, performance, maintainability). Use this MCP to create targeted code review prompts for specific quality concerns. Example: 'Use the code-analysis-prompt-builder MCP to analyze authentication code for security vulnerabilities'",
inputSchema: {
type: "object",
properties: {
codebase: {
type: "string",
description: "The codebase or code snippet to analyze",
},
focusArea: {
type: "string",
enum: ["security", "performance", "maintainability", "general"],
description: "Specific area to focus on",
},
language: {
type: "string",
description: "Programming language of the code",
},
mode: { type: "string" },
model: { type: "string" },
tools: { type: "array", items: { type: "string" } },
includeFrontmatter: { type: "boolean" },
includeReferences: { type: "boolean" },
includeMetadata: { type: "boolean" },
inputFile: { type: "string" },
forcePromptMdStyle: { type: "boolean" },
},
required: ["codebase"],
},
},
{
name: "architecture-design-prompt-builder",
description: "Generate system architecture design prompts with scale-appropriate guidance. Use this MCP to create architecture planning prompts for different system scales and technology stacks. Example: 'Use the architecture-design-prompt-builder MCP to design a microservices architecture for a medium-scale e-commerce platform'",
inputSchema: {
type: "object",
properties: {
systemRequirements: {
type: "string",
description: "System requirements and constraints",
},
scale: {
type: "string",
enum: ["small", "medium", "large"],
description: "Expected system scale",
},
technologyStack: {
type: "string",
description: "Preferred or required technology stack",
},
mode: { type: "string" },
model: { type: "string" },
tools: { type: "array", items: { type: "string" } },
includeFrontmatter: { type: "boolean" },
includeReferences: { type: "boolean" },
includeMetadata: { type: "boolean" },
inputFile: { type: "string" },
forcePromptMdStyle: { type: "boolean" },
},
required: ["systemRequirements"],
},
},
{
name: "digital-enterprise-architect-prompt-builder",
description: "Guide enterprise architecture strategy with mentor perspectives and current research. Use this MCP to create strategic architecture prompts from an enterprise architect perspective. Example: 'Use the digital-enterprise-architect-prompt-builder MCP to guide cloud migration strategy for our legacy CRM system'",
inputSchema: {
type: "object",
properties: {
initiativeName: {
type: "string",
description: "Name or focus of the architecture initiative",
},
problemStatement: {
type: "string",
description: "Strategic problem or opportunity being addressed",
},
businessDrivers: {
type: "array",
items: { type: "string" },
description: "Key business objectives and desired outcomes",
},
currentLandscape: {
type: "string",
description: "Summary of the current ecosystem or architecture",
},
targetUsers: {
type: "string",
description: "Primary stakeholders or user segments",
},
differentiators: {
type: "array",
items: { type: "string" },
description: "Innovation themes or competitive differentiators",
},
constraints: {
type: "array",
items: { type: "string" },
description: "Constraints or guardrails the solution must respect",
},
complianceObligations: {
type: "array",
items: { type: "string" },
description: "Regulatory or policy considerations",
},
technologyGuardrails: {
type: "array",
items: { type: "string" },
description: "Existing technology standards or preferred platforms",
},
innovationThemes: {
type: "array",
items: { type: "string" },
description: "Innovation themes to explore",
},
timeline: {
type: "string",
description: "Timeline or planning horizon",
},
researchFocus: {
type: "array",
items: { type: "string" },
description: "Research topics to benchmark against current best practices",
},
decisionDrivers: {
type: "array",
items: { type: "string" },
description: "Decision drivers or evaluation criteria to emphasize",
},
knownRisks: {
type: "array",
items: { type: "string" },
description: "Known risks or assumptions to monitor",
},
mode: { type: "string" },
model: { type: "string" },
tools: { type: "array", items: { type: "string" } },
includeFrontmatter: { type: "boolean" },
includeReferences: { type: "boolean" },
includeMetadata: { type: "boolean" },
inputFile: { type: "string" },
forcePromptMdStyle: { type: "boolean" },
},
required: ["initiativeName", "problemStatement"],
},
},
{
name: "debugging-assistant-prompt-builder",
description: "Generate systematic debugging and troubleshooting prompts with structured analysis. Use this MCP to create diagnostic prompts for error investigation and root cause analysis. Example: 'Use the debugging-assistant-prompt-builder MCP to troubleshoot a production database connection timeout issue'",
inputSchema: {
type: "object",
properties: {
errorDescription: {
type: "string",
description: "Description of the error or issue",
},
context: {
type: "string",
description: "Additional context about the problem",
},
attemptedSolutions: {
type: "string",
description: "Solutions already attempted",
},
mode: { type: "string" },
model: { type: "string" },
tools: { type: "array", items: { type: "string" } },
includeFrontmatter: { type: "boolean" },
includeReferences: { type: "boolean" },
includeMetadata: { type: "boolean" },
inputFile: { type: "string" },
forcePromptMdStyle: { type: "boolean" },
},
required: ["errorDescription"],
},
},
{
name: "l9-distinguished-engineer-prompt-builder",
description: "Generate Distinguished Engineer (L9) technical design prompts for high-level software architecture and system design. Use this MCP to create expert-level technical architecture prompts. Example: 'Use the l9-distinguished-engineer-prompt-builder MCP to design a globally distributed real-time data processing platform'",
inputSchema: {
type: "object",
properties: {
projectName: {
type: "string",
description: "Name of the software project or system initiative",
},
technicalChallenge: {
type: "string",
description: "Core technical problem, architectural complexity, or scale challenge",
},
technicalDrivers: {
type: "array",
items: { type: "string" },
description: "Key technical objectives: performance targets, scalability goals, reliability requirements",
},
currentArchitecture: {
type: "string",
description: "Existing system architecture, tech stack, and known pain points",
},
userScale: {
type: "string",
description: "Scale context: users, requests/sec, data volume, geographical distribution",
},
technicalDifferentiators: {
type: "array",
items: { type: "string" },
description: "Technical innovations, performance advantages, or unique capabilities",
},
engineeringConstraints: {
type: "array",
items: { type: "string" },
description: "Technical constraints: latency budgets, backward compatibility, migration windows",
},
securityRequirements: {
type: "array",
items: { type: "string" },
description: "Security, privacy, and compliance requirements",
},
techStack: {
type: "array",
items: { type: "string" },
description: "Current/preferred technologies, languages, frameworks, and platforms",
},
experimentationAreas: {
type: "array",
items: { type: "string" },
description: "Emerging technologies or patterns worth prototyping",
},
deliveryTimeline: {
type: "string",
description: "Engineering timeline: sprints, milestones, or release windows",
},
benchmarkingFocus: {
type: "array",
items: { type: "string" },
description: "Systems/companies to benchmark against or research areas requiring investigation",
},
tradeoffPriorities: {
type: "array",
items: { type: "string" },
description: "Engineering trade-off priorities: latency vs throughput, consistency vs availability, etc.",
},
technicalRisks: {
type: "array",
items: { type: "string" },
description: "Known technical risks, debt, or areas of uncertainty",
},
teamContext: {
type: "string",
description: "Team size, skill distribution, and organizational dependencies",
},
observabilityRequirements: {
type: "array",
items: { type: "string" },
description: "Monitoring, logging, tracing, and debugging requirements",
},
performanceTargets: {
type: "array",
items: { type: "string" },
description: "Specific performance SLOs/SLAs: p99 latency, throughput, availability",
},
migrationStrategy: {
type: "string",
description: "Migration or rollout strategy if re-architecting existing system",
},
codeQualityStandards: {
type: "array",
items: { type: "string" },
description: "Code quality expectations: test coverage, documentation, design patterns",
},
mode: { type: "string" },
model: { type: "string" },
tools: { type: "array", items: { type: "string" } },
includeFrontmatter: { type: "boolean" },
includeReferences: { type: "boolean" },
includeMetadata: { type: "boolean" },
inputFile: { type: "string" },
forcePromptMdStyle: { type: "boolean" },
},
required: ["projectName", "technicalChallenge"],
},
},
{
name: "documentation-generator-prompt-builder",
description: "Generate technical documentation prompts tailored to content type and audience. Use this MCP to create structured documentation generation prompts for API docs, user guides, or technical specs. Example: 'Use the documentation-generator-prompt-builder MCP to create API documentation for our REST endpoints'",
inputSchema: {
type: "object",
properties: {
contentType: {
type: "string",
description: "Type of documentation (API, user guide, technical spec)",
},
targetAudience: {
type: "string",
description: "Intended audience for the documentation",
},
existingContent: {
type: "string",
description: "Any existing content to build upon",
},
mode: { type: "string" },
model: { type: "string" },
tools: { type: "array", items: { type: "string" } },
includeFrontmatter: { type: "boolean" },
includeReferences: { type: "boolean" },
includeMetadata: { type: "boolean" },
inputFile: { type: "string" },
forcePromptMdStyle: { type: "boolean" },
},
required: ["contentType"],
},
},
{
name: "strategy-frameworks-builder",
description: "Compose strategy analysis sections from selected frameworks (SWOT, BSC, VRIO, Porter's Five Forces, etc.). Use this MCP to generate strategic business analysis using established frameworks. Example: 'Use the strategy-frameworks-builder MCP to create a SWOT analysis and Balanced Scorecard for our market expansion plan'",
inputSchema: {
type: "object",
properties: {
frameworks: {
type: "array",
items: {
type: "string",
enum: [
"asIsToBe",
"whereToPlayHowToWin",
"balancedScorecard",
"swot",
"objectives",
"portersFiveForces",
"mckinsey7S",
"marketAnalysis",
"strategyMap",
"visionToMission",
"stakeholderTheory",
"values",
"gapAnalysis",
"ansoffMatrix",
"pest",
"bcgMatrix",
"blueOcean",
"scenarioPlanning",
"vrio",
"goalBasedPlanning",
"gartnerQuadrant",
],
},
description: "Framework identifiers to include",
},
context: { type: "string", description: "Business context" },
objectives: { type: "array", items: { type: "string" } },
market: { type: "string" },
stakeholders: { type: "array", items: { type: "string" } },
constraints: { type: "array", items: { type: "string" } },
includeReferences: { type: "boolean" },
includeMetadata: { type: "boolean" },
inputFile: { type: "string" },
},
required: ["frameworks", "context"],
},
},
{
name: "gap-frameworks-analyzers",
description: "Analyze gaps between current and desired states using various frameworks (capability, performance, maturity, skills, technology, process, etc.). Use this MCP to identify and analyze gaps in capabilities, processes, or technologies. Example: 'Use the gap-frameworks-analyzers MCP to analyze the technology gap between our current monolith and desired microservices architecture'",
inputSchema: {
type: "object",
properties: {
frameworks: {
type: "array",
items: {
type: "string",
enum: [
"capability",
"performance",
"maturity",
"skills",
"technology",
"process",
"market",
"strategic",
"operational",
"cultural",
"security",
"compliance",
],
},
description: "Gap analysis framework types to include",
},
currentState: {
type: "string",
description: "Current state description",
},
desiredState: {
type: "string",
description: "Desired state description",
},
context: { type: "string", description: "Analysis context" },
objectives: { type: "array", items: { type: "string" } },
timeframe: { type: "string" },
stakeholders: { type: "array", items: { type: "string" } },
constraints: { type: "array", items: { type: "string" } },
includeReferences: { type: "boolean" },
includeMetadata: { type: "boolean" },
includeActionPlan: { type: "boolean" },
inputFile: { type: "string" },
},
required: ["frameworks", "currentState", "desiredState", "context"],
},
},
{
name: "spark-prompt-builder",
description: "Build comprehensive UI/UX product design prompts from structured inputs (title, features, colors, typography, animation, spacing, etc.). Use this MCP to create detailed design system prompts for developer tools and user interfaces. Example: 'Use the spark-prompt-builder MCP to design a dark-mode code editor with syntax highlighting and accessibility features'",
inputSchema: {
type: "object",
properties: {
title: { type: "string", description: "Prompt title" },
summary: { type: "string", description: "Brief summary / outlook" },
experienceQualities: {
type: "array",
description: "List of UX qualities",
items: {
type: "object",
properties: {
quality: { type: "string" },
detail: { type: "string" },
},
required: ["quality", "detail"],
},
},
complexityLevel: { type: "string" },
complexityDescription: { type: "string" },
primaryFocus: { type: "string" },
features: {
type: "array",
items: {
type: "object",
properties: {
name: { type: "string" },
functionality: { type: "string" },
purpose: { type: "string" },
trigger: { type: "string" },
progression: { type: "array", items: { type: "string" } },
successCriteria: { type: "string" },
},
required: [
"name",
"functionality",
"purpose",
"trigger",
"progression",
"successCriteria",
],
},
},
edgeCases: {
type: "array",
items: {
type: "object",
properties: {
name: { type: "string" },
handling: { type: "string" },
},
required: ["name", "handling"],
},
},
designDirection: { type: "string" },
colorSchemeType: { type: "string" },
colorPurpose: { type: "string" },
primaryColor: { type: "string" },
primaryColorPurpose: { type: "string" },
secondaryColors: {
type: "array",
items: {
type: "object",
properties: {
name: { type: "string" },
oklch: { type: "string" },
usage: { type: "string" },
},
required: ["name", "oklch", "usage"],
},
},
accentColor: { type: "string" },
accentColorPurpose: { type: "string" },
foregroundBackgroundPairings: {
type: "array",
items: {
type: "object",
properties: {
container: { type: "string" },
containerColor: { type: "string" },
textColor: { type: "string" },
ratio: { type: "string" },
},
required: ["container", "containerColor", "textColor", "ratio"],
},
},
fontFamily: { type: "string" },
fontIntention: { type: "string" },
fontReasoning: { type: "string" },
typography: {
type: "array",
items: {
type: "object",
properties: {
usage: { type: "string" },
font: { type: "string" },
weight: { type: "string" },
size: { type: "string" },
spacing: { type: "string" },
},
required: ["usage", "font", "weight", "size", "spacing"],
},
},
animationPhilosophy: { type: "string" },
animationRestraint: { type: "string" },
animationPurpose: { type: "string" },
animationHierarchy: { type: "string" },
components: {
type: "array",
items: {
type: "object",
properties: {
type: { type: "string" },
usage: { type: "string" },
variation: { type: "string" },
styling: { type: "string" },
state: { type: "string" },
functionality: { type: "string" },
purpose: { type: "string" },
},
required: ["type", "usage"],
},
},
customizations: { type: "string" },
states: {
type: "array",
items: {
type: "object",
properties: {
component: { type: "string" },
states: { type: "array", items: { type: "string" } },
specialFeature: { type: "string" },
},
required: ["component", "states"],
},
},
icons: { type: "array", items: { type: "string" } },
spacingRule: { type: "string" },
spacingContext: { type: "string" },
mobileLayout: { type: "string" },
// Optional prompt md frontmatter controls
mode: { type: "string" },
model: { type: "string" },
tools: { type: "array", items: { type: "string" } },
includeFrontmatter: { type: "boolean" },
includeDisclaimer: { type: "boolean" },
includeReferences: { type: "boolean" },
includeMetadata: { type: "boolean" },
inputFile: { type: "string" },
forcePromptMdStyle: { type: "boolean" },
},
required: [
"title",
"summary",
"complexityLevel",
"designDirection",
"colorSchemeType",
"colorPurpose",
"primaryColor",
"primaryColorPurpose",
"accentColor",
"accentColorPurpose",
"fontFamily",
"fontIntention",
"fontReasoning",
"animationPhilosophy",
"animationRestraint",
"animationPurpose",
"animationHierarchy",
"spacingRule",
"spacingContext",
"mobileLayout",
],
},
},
{
name: "coverage-dashboard-design-prompt-builder",
description: "Generate comprehensive UI/UX design prompts for coverage reporting dashboards. Creates intuitive, accessible, and responsive coverage dashboards following Nielsen's usability heuristics and WCAG standards. Use this MCP to design user-optimized coverage reporting interfaces. Example: 'Use the coverage-dashboard-design-prompt-builder MCP to design a mobile-responsive coverage dashboard with card-based metrics and accessibility support'",
inputSchema: {
type: "object",
properties: {
title: {
type: "string",
description: "Dashboard title",
default: "Coverage Dashboard Design",
},
projectContext: {
type: "string",
description: "Project context or description",
},
targetUsers: {
type: "array",
items: { type: "string" },
description: "Target user personas (e.g., developers, qa-engineers, managers)",
},
dashboardStyle: {
type: "string",
enum: ["card-based", "table-heavy", "hybrid", "minimal"],
description: "Dashboard layout style",
},
primaryMetrics: {
type: "array",
items: { type: "string" },
description: "Primary coverage metrics to display (e.g., statements, branches, functions, lines)",
},
colorScheme: {
type: "string",
enum: [
"light",
"dark",
"auto",
"high-contrast",
"colorblind-safe",
"custom",
],
description: "Color scheme preference",
},
primaryColor: {
type: "string",
description: "Primary color in OKLCH",
},
successColor: {
type: "string",
description: "Success/good coverage color",
},
warningColor: {
type: "string",
description: "Warning coverage color",
},
dangerColor: {
type: "string",
description: "Danger/critical coverage color",
},
useGradients: {
type: "boolean",
description: "Use gradient visual indicators",
},
visualIndicators: {
type: "array",
items: { type: "string" },
description: "Visual indicator types (e.g., progress-bars, badges, sparklines, heat-maps)",
},
fontFamily: { type: "string", description: "UI font family" },
codeFont: { type: "string", description: "Code font family" },
accessibility: {
type: "object",
description: "Accessibility configuration",
properties: {
wcagLevel: { type: "string", enum: ["A", "AA", "AAA"] },
colorBlindSafe: { type: "boolean" },
keyboardNavigation: { type: "boolean" },
screenReaderOptimized: { type: "boolean" },
focusIndicators: { type: "boolean" },
highContrastMode: { type: "boolean" },
},
},
responsive: {
type: "object",
description: "Responsive design configuration",
properties: {
mobileFirst: { type: "boolean" },
touchOptimized: { type: "boolean" },
collapsibleNavigation: { type: "boolean" },
},
},
interactiveFeatures: {
type: "object",
description: "Interactive feature configuration",
properties: {
filters: { type: "boolean" },
sorting: { type: "boolean" },
search: { type: "boolean" },
tooltips: { type: "boolean" },
expandCollapse: { type: "boolean" },
drillDown: { type: "boolean" },
exportOptions: { type: "array", items: { type: "string" } },
realTimeUpdates: { type: "boolean" },
},
},
performance: {
type: "object",
description: "Performance optimization settings",
properties: {
lazyLoading: { type: "boolean" },
virtualScrolling: { type: "boolean" },
dataCaching: { type: "boolean" },
skeletonLoaders: { type: "boolean" },
progressiveEnhancement: { type: "boolean" },
},
},
framework: {
type: "string",
enum: ["react", "vue", "angular", "svelte", "static", "any"],
description: "Preferred frontend framework",
},
componentLibrary: {
type: "string",
description: "Preferred component library",
},
iterationCycle: {
type: "object",
description: "Design iteration configuration",
properties: {
includeABTesting: { type: "boolean" },
includeAnalytics: { type: "boolean" },
includeFeedbackWidget: { type: "boolean" },
includeUsabilityMetrics: { type: "boolean" },
},
},
mode: { type: "string" },
model: { type: "string" },
tools: { type: "array", items: { type: "string" } },
includeFrontmatter: { type: "boolean" },
includeDisclaimer: { type: "boolean" },
includeReferences: { type: "boolean" },
includeMetadata: { type: "boolean" },
inputFile: { type: "string" },
forcePromptMdStyle: { type: "boolean" },
techniques: {
type: "array",
items: {
type: "string",
enum: [
"zero-shot",
"few-shot",
"chain-of-thought",
"self-consistency",
"in-context-learning",
"generate-knowledge",
"prompt-chaining",
"tree-of-thoughts",
"meta-prompting",
"rag",
"react",
"art",
],
},
description: "Prompting techniques to include",
},
includeTechniqueHints: { type: "boolean" },
autoSelectTechniques: { type: "boolean" },
provider: {
type: "string",
enum: PROVIDER_ENUM_VALUES,
},
style: { type: "string", enum: ["markdown", "xml"] },
},
required: [],
},
},
{
name: "clean-code-score