Skip to main content
Glama
promptLoader.js1.05 kB
import { BaseLoader } from './BaseLoader.js'; import { logger } from '../core/Logger.js'; export class PromptLoader extends BaseLoader { constructor(basePath) { super({ subdirectory: 'prompts', excludedFiles: ['BasePrompt.js', '*.test.js', '*.spec.js'], extensions: ['.js'], }, basePath); } async hasPrompts() { return this.hasItems(); } validateItem(prompt) { const isValid = Boolean(prompt && typeof prompt.name === 'string' && prompt.promptDefinition && typeof prompt.getMessages === 'function'); if (isValid) { logger.debug(`Validated prompt: ${prompt.name}`); } else { logger.warn(`Invalid prompt found: missing required properties`); } return isValid; } createInstance(PromptClass) { return new PromptClass(); } getItemName(prompt) { return prompt.name; } async loadPrompts() { return this.loadItems(); } }

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/madebyaris/rakitui-ai'

If you have feedback or need assistance with the MCP directory API, please join our Discord server