Teleprompter
Un servidor para gestionar y reutilizar indicaciones con modelos de lenguaje grandes (LLMs).
Documentación
Teleprompter
Un servidor MCP que gestiona y expone herramientas para permitir la reutilización de prompts con LLMs.
Tabla de Contenidos
- Características
- Configuración de MCP
- Ejemplos de Uso
- Variables de Entorno
- Pruebas
- Contribuciones
- Licencia
- Agradecimientos
Características
- Almacenamiento y Reutilización de Prompts: Almacena, busca y recupera plantillas de prompts para LLMs.
- Servidor MCP: Expone herramientas de prompts a través del Protocolo de Contexto de Modelo (MCP).
- Variables de Prompt: Soporta variables de plantilla (p. ej.,
{{name}}) para la generación dinámica de prompts. - Búsqueda: Búsqueda rápida de texto completo sobre los prompts almacenados usando MiniSearch.
- TypeScript: Código moderno y seguro en cuanto a tipos.
- Pruebas Exhaustivas: Incluye pruebas unitarias y de integración con Vitest.
Configuración de MCP
Para usar Teleprompter con tu cliente LLM, añade esta configuración:
{
"mcpServers": {
"teleprompter": {
"command": "npx",
"args": ["-y", "mcp-teleprompter"],
"env": {
"PROMPT_STORAGE_PATH": "/path/to/your/prompts-directory"
}
}
}
}
Nota: Reemplaza /path/to/your/prompts-directory con la ruta absoluta donde quieras almacenar los prompts.
Ejemplos de Uso
Una vez configurado, puedes usar Teleprompter con tu LLM utilizando etiquetas de prompts en tus conversaciones. Aquí tienes un ejemplo detallado que muestra cómo resuelve el problema de repetir instrucciones complejas:
🎵 Descubrimiento de Música en Spotify
El Problema: Cada vez que quieres recomendaciones musicales, tienes que recordar a tu LLM todas tus preferencias y restricciones:
- "No sugieras canciones que ya tengo en mis listas de reproducción"
- "Evita letras explícitas"
- "Añade canciones a mi cola para revisarlas, no directamente a las listas"
- "Concéntrate en descubrir nuevos artistas, no solo éxitos populares"
- "Considera mi actividad y estado de ánimo actuales"
- "Proporciona breves explicaciones de por qué cada canción encaja"
La Solución: Crea un prompt que capture todas estas instrucciones una sola vez.
Creando el prompt: Pregunta a tu LLM: "Crea un prompt llamado 'spotify-discover' que me ayude a encontrar nueva música con todas mis preferencias específicas y requisitos de flujo de trabajo."
Esto crea una plantilla completa como:
I'm looking for music recommendations for Spotify based on:
**Current mood:** {{mood}}
**Activity/setting:** {{activity}}
**Preferred genres:** {{genres}}
**Recent artists I've enjoyed:** {{recent_artists}}
**Important constraints:**
- DO NOT suggest songs I already have in my existing playlists
- Avoid explicit lyrics (clean versions only)
- Focus on discovering new/lesser-known artists, not just popular hits
- Provide 5-7 song recommendations maximum
**Workflow:**
- Add recommendations to my Spotify queue (not directly to playlists)
- I'll review and save the ones I like to appropriate playlists later
**For each recommendation, include:**
- Artist and song name
- Brief explanation (1-2 sentences) of why it fits my current mood/activity
- Similar artists I might also enjoy
Please help me discover music that matches this vibe while following these preferences.
Usándolo:
>> spotify-discover
Ahora solo tienes que indicar tu estado de ánimo y actividad actuales, y obtendrás recomendaciones perfectamente adaptadas que siguen todas tus reglas—sin necesidad de repetir tus restricciones cada vez.
🔄 Otros Casos de Uso Comunes
📋 Gestión de Tickets de Trabajo
- Crea prompts para el formato de tickets de JIRA/Linear con los requisitos específicos de tu equipo
- Incluye campos estándar, niveles de prioridad, plantillas de criterios de aceptación
- Evita repetir los estándares de tu empresa cada vez
📧 Plantillas de Correo Electrónico
- Respuestas de soporte al cliente con el tono de tu empresa y los avisos legales requeridos
- Secuencias de seguimiento que coincidan con tu estilo de comunicación
- Inclusión automática de firmas, enlaces e información estándar
📝 Guías de Revisión de Código
- Listas de verificación de revisión técnica con los estándares específicos de tu equipo
- Consideraciones de seguridad y criterios de rendimiento
- Requisitos de documentación y expectativas de pruebas
El hilo común: deja de repetirte. Si te encuentras dando las mismas instrucciones detalladas a tu LLM repetidamente, crea un prompt para ello.
🔍 Descubriendo Prompts Existentes
Puedes buscar en tu biblioteca de prompts:
Can you search my prompts for "productivity" or "task management"?
O listar todos los prompts disponibles:
What prompts do I have available?
✏️ Edición Manual
Los prompts se almacenan como archivos markdown simples en tu directorio PROMPT_STORAGE_PATH. También puedes crearlos y editarlos directamente con tu editor de texto favorito:
- Cada prompt se guarda como
{id}.mden tu directorio de prompts - Usa la sintaxis
{{variable_name}}para variables de plantilla - Se admite el formato markdown estándar
- Los cambios en los archivos se detectan automáticamente por el servidor
💡 Mejores Prácticas
-
Usa IDs descriptivos: Elige IDs de prompts que indiquen claramente su propósito (p. ej.,
meeting-notes,code-review-checklist) -
Incluye variables útiles: Usa
{{variable_name}}para contenido dinámico que cambie cada vez que uses el prompt -
Organiza por categoría: Considera usar prefijos como
task-,content-,analysis-para agrupar prompts relacionados
Pruebas
Ejecuta todas las pruebas:
npm test
Ejecuta las pruebas con cobertura:
npm run test:coverage
Las pruebas están escritas con Vitest. Los informes de cobertura se generan en el directorio coverage/.
Contribuciones
¡Las contribuciones son bienvenidas! Por favor:
- Sigue el estilo de código existente (ver
.prettierrc.jsony.eslintrc.mjs). - Añade pruebas para nuevas funciones o correcciones de errores.
Licencia
Este proyecto está licenciado bajo la Licencia MIT. Consulta LICENCIA para más detalles.
Agradecimientos
Hecho con ❤️ por John Anderson