Herramientas y extensiones
Más allá del chat, TomoriBot puede llamar a herramientas para buscar en la web, leer documentos, generar medios, configurar recordatorios e interactuar con mensajes de Discord. Ella decide cuándo usarlos según la conversación. Esta página cubre las herramientas integradas, cómo ampliarla con servidores MCP y cómo mantener las indicaciones optimizadas con el modo de herramienta deliberada.
A continuación se muestran algunos ejemplos de lo que las herramientas permiten en la conversación:
- 1. Comprobador de bienestar
Every few hours, do a mandatory wellness check on @bau_h.Ask them how they feel right now and if they've taken a break from coding recently.Track their emotional state over time with {memory_tool} and/or {memory_update_tool} to report back to them later.
- 2. Noticias semanales de Yuri
Every Friday, compile the week's notable yuri manga chapters, anime episodes, and community fanart drops using {web_search_tool}.Present findings with {voice_message_tool} in a seductive ASMR voice.
- 3. Policía del sueño
If you notice through {message_metadata_tool} that someone is chatting past 2 AM, use {voice_message_tool} to send them a threateningly calm ASMR lullaby telling them to go to bed.If they keep talking 10 minutes later, use {manage_message_tool} to delete their message for their own good and remind them that sleep deprivation is a leading cause of their issues.
Herramientas integradas
Section titled “Herramientas integradas”Las herramientas dependen del proveedor activo y del modelo que respalda la llamada de herramientas. Muchos están cerrados detrás de un indicador de característica (/config > Permisos), un permiso Discord, una capacidad de modelo o una clave API opcional.
| Herramienta | Macro rápida | Requiere | que hace |
|---|---|---|---|
| Capacidades de revisión | {capabilities_tool} | - | Verifique las capacidades, comandos o configuraciones actuales del chat antes de responder. |
| Crear/actualizar memoria a largo plazo | {memory_tool} / {memory_update_tool} | self_teaching_enabled | Guarda o reemplace un dato de servidor estable o una preferencia de usuario. |
| Actualizar la memoria a corto plazo | {short_term_memory_tool} | (no en NovelAI) | Guarda la memoria de trabajo temporal para el canal actual o el arco de la historia. |
| Crear/actualizar tarea | {task_tool} / {task_update_tool} | - | Programe o edite recordatorios y tareas automáticas (consulte Tareas programadas). |
| Mensaje multicanal | {cross_channel_tool} | (no en NovelAI) | Actuar en otro canal o hilo, con reporte opcional. |
| Crear hilo | {create_thread_tool} | thread_creation_enabled + permisos de hilo | Abre un hilo público y publique su mensaje inicial. |
| Seleccionar sticker | {sticker_tool} | sticker_usage_enabled | Agrega una etiqueta de servidor coincidente o una expresión personalizada a una respuesta. |
| Administrar mensaje | {manage_message_tool} | manage_message_enabled | Anclar, editar o eliminar mensajes recientes (el ancla necesita Administrar mensajes). |
| Bloquear/desbloquear usuario | {block_user_tool} / {unblock_user_tool} | user_blocking_enabled | Silenciar/bloquear a un usuario con alcance personal (no toca los recuerdos). |
| Interactuar con mensaje reciente | {message_interaction_tool} | - | Reacciona o envía una breve respuesta a un mensaje reciente. |
| Echar un vistazo a la foto de perfil | {profile_picture_tool} | modelo de visión o vision_llm | Inspecciona el avatar de una usuario o de la persona. |
| Leer documento | {document_tool} | - | Extraiga texto de un PDF o cualquier archivo de texto UTF-8: código fuente (.py/.ts/.rs/…), .json, .yaml, .md, .txt y cualquier archivo adjunto no binario. |
| Revelar metadatos del mensaje | {message_metadata_tool} | - | Anota giros recientes con identificadores y marcas de tiempo para apuntar con precisión. |
| Procesar vídeo de YouTube | {youtube_tool} | modelo con soporte de video | Analiza un enlace específico de YouTube bajo demanda. |
| Analizar imagen | {image_analysis_tool} | configurado vision_llm | Delegar la comprensión de la imagen a un modelo de visión independiente. |
| Generar imagen/imagen anime | {image_generation_tool} / {anime_image_generation_tool} | Proveedor compatible con imagegen_enabled + | Genere o edite imágenes (consulte Generación de medios). |
| Búsqueda de etiquetas en Danbooru | {tag_search_tool} | danbooru_enabled | Convierte nombres de personajes, apodos y conjeturas en etiquetas exactas de Danbooru (consulta Búsqueda de etiquetas de Danbooru). |
| Búsqueda de arte en Danbooru | {booru_post_search_tool} | danbooru_enabled | Publica hasta 4 imágenes existentes de Danbooru para 1 o 2 etiquetas (consulta Búsqueda de arte y lectura de publicaciones). |
| Lectura de publicaciones en Danbooru | - | danbooru_enabled | Lee las etiquetas agrupadas de una publicación de Danbooru a partir de su ID o enlace. |
| Generar mensaje de voz | {voice_message_tool} | Tecla ElevenLabs + voz personal + voice_message_enabled | Envíe una respuesta de voz hablada Discord. |
Bloques de prompt condicionales
Section titled “Bloques de prompt condicionales”El texto de aviso que admite las macros de herramientas anteriores también admite condicionales de ámbito:
{{if capability:self_teaching}}Use {memory_tool} when a detail is worth remembering.{{else}}Do not promise to save long-term memories.{{/if}}Utilice capability:<name> para una configuración TomoriBot habilitada, o tool:<function_name> cuando el texto debería aparecer solo si esa herramienta exacta está disponible para el proveedor y modelo activo. Utilice tool_family:url_fetch cuando esté disponible el lector de URL incluido o un reemplazo del gremio MCP. Anteponga una condición con ! para invertirla. Los bloques se pueden anidar y pueden contener un {{else}}; No se admiten expresiones generales and/or.
Los nombres de capacidad admitidos son tool_use, self_teaching, personal_memories, emoji_usage, sticker_usage, web_search, manage_message, thread_creation, image_generation, video_generation, voice_message, user_blocking, short_term_memory y time_awareness.
Las condiciones de la herramienta reflejan la compatibilidad del proveedor/modelo, la configuración del servidor, los backends configurados, los reemplazos de MCP y la lista de permitidos actual del modo de herramienta deliberada. No omiten ni predicen las comprobaciones de permisos Discord realizadas cuando se ejecuta una herramienta. Los nombres de capacidades desconocidas se evalúan como falsos y se registran; Se omiten los bloques mal formados. Los mensajes de chat sin procesar, los resultados del modelo y los resultados de las herramientas nunca se tratan como plantillas condicionales.
Búsqueda de etiquetas de Danbooru
Section titled “Búsqueda de etiquetas de Danbooru”Los modelos de imágenes de anime como NovelAI leen etiquetas de Danbooru, por lo que una etiqueta supuesta (half-up braid en vez de half up braid) o un atuendo desconocido debilitan la imagen. Con Búsqueda en Danbooru activada (/config > Plugins > Herramientas disponibles, activada de forma predeterminada), ella puede buscar etiquetas antes de dibujar:
- Los nombres, apodos y errores tipográficos se resuelven a la etiqueta real (
ryzapasa a serreisalin stout), indicando cuántas publicaciones la usan. Una coincidencia corregida o parcial puede ser algo distinto, por lo que ella lo comprueba. - Para un personaje o uno de sus atuendos, también obtiene las etiquetas que aparecen con más frecuencia junto a él, sus atuendos nombrados, la etiqueta de cosplay y un breve resumen de wiki. Estas etiquetas provienen exclusivamente de publicaciones generales y sensibles, en todos los canales.
Cada búsqueda publica una tarjeta de Búsqueda de etiquetas de Danbooru con lo encontrado, incluyendo las etiquetas del personaje en un bloque que puedes copiar y pegar en un prompt manual de /generate image. La tarjeta permanece visible en cualquier nivel de detalle de avisos, y las respuestas posteriores pueden reutilizar sus etiquetas sin volver a buscar. Puedes ocultarla en /config > Comportamiento > Comportamiento de avisos como cualquier otro aviso.
Búsqueda de arte y lectura de publicaciones
Section titled “Búsqueda de arte y lectura de publicaciones”El mismo interruptor le permite compartir arte existente y leer las etiquetas de una publicación:
- Si le pides que muestre arte de algo, publica hasta 4 imágenes aleatorias bien valoradas de Danbooru en un solo mensaje, con un enlace a cada publicación. Las imágenes cuestionables y explícitas se ocultan tras un spoiler. Danbooru solo permite 2 etiquetas por búsqueda, así que ella elige las más específicas, habitualmente el personaje o la serie.
- Si le das un ID de publicación de Danbooru o un enlace
danbooru.donmai.us/posts/, lee sus etiquetas agrupadas en personaje, serie, artista, meta y general. En el modo de herramientas deliberado, basta con que el mensaje contenga un enlace a una publicación para ofrecerle esta herramienta.
Cualquiera puede ejecutar también /booru search para obtener la misma galería sin pedírselo a ella. Sugiere etiquetas a medida que escribes, convierte un apodo o error tipográfico en la etiqueta real, y el pie de página muestra lo que se buscó. El parámetro opcional count define cuántas imágenes enviar, de 1 a 10 (por defecto: 4). Si coinciden menos publicaciones, envía los resultados disponibles. El interruptor solo controla sus herramientas, no el comando; para restringir quién puede usar /booru search, usa Ajustes del servidor > Integraciones en Discord.
Las clasificaciones siguen las reglas del canal. Las publicaciones generales y sensibles funcionan en cualquier lugar; las cuestionables y explícitas solo en canales para mayores de edad. Un hilo sigue a su canal principal, y los mensajes directos cuentan como no restringidos por edad. Una publicación con clasificación superior a general que esté etiquetada como loli, shota o toddlercon nunca se publica ni se lee, en ningún canal.
Búsqueda web y lectura de URL
Section titled “Búsqueda web y lectura de URL”El modelo ve una única herramienta web_search(query, category) unificada. Detrás de él, un despachador dirige cada llamada a través de una cadena de motores y devuelve el primer éxito:
Brave → SearXNG → DuckDuckGo
- Brave se ejecuta primero cuando se configura una clave Brave API (configúrela con
/providers); Agrega búsqueda de imágenes, videos y noticias. 🟡 Establece un límite de uso de $5 en el panel de Brave para evitar cargos sorpresa. - DuckDuckGo es la opción predeterminada cuando no se ha configurado ninguna clave. Solo cubre búsquedas de texto. Cuando DuckDuckGo aplica un límite de velocidad al bot o muestra una verificación antibot, la búsqueda falla y TomoriBot publica un aviso sugiriendo Brave.
- SearXNG y Crawl4AI son servidores autohospedados opcionales que agregan más categorías y búsquedas de páginas renderizadas por el navegador; consulte Autohospedaje.
Para leer una página específica, utiliza fetch_url. No está disponible en NovelAI.
Servidores MCP
Section titled “Servidores MCP”MCP (Model Context Protocol) la amplía con herramientas externas que registras tú mismo.
Añadir un MCP en línea
Section titled “Añadir un MCP en línea”Usa un endpoint HTTPS directo de un proveedor que admita MCP Streamable HTTP o SSE:
- Obtén el endpoint MCP y sus requisitos de autenticación del proveedor.
- Abre
/config> Plugins > Servidores MCP y elige+ Agregar MCP. - Pega el endpoint en
URL, ingresa su token Bearer enToken de autenticaciónsi es necesario y elige elTipo de servidorrequerido. Uso general está seleccionado por defecto. EligeCorrector de prosapara un corrector que quieras como comprobador de reglas en la Revisión de respuestas: Tomori nunca llama a sus herramientas ella misma y aparece bajoComprobaciones de reglasen la página de Revisión de respuestas.
Desactivar un registro seleccionado para búsqueda o lectura de URL restablece la selección integrada de TomoriBot; dejarlo activado impide un cambio automático. Los nombres de herramientas guardados describen el último descubrimiento, por lo que no garantizan que la conexión aún funcione.
Las respuestas se detienen a los 8 MiB durante la descarga. Los catálogos grandes de herramientas o resultados voluminosos pueden dejar un plugin no disponible o hacer que una llamada a una herramienta falle. Para conexiones SSE, el límite cubre todo el flujo de respuestas, incluidas las actualizaciones sucesivas. Pide al proveedor resultados más pequeños, paginación o enlaces a archivos cuando una herramienta devuelva documentos grandes o contenido multimedia incrustado.
Si un servidor no necesita autenticación, deja vacío Token de autenticación. Tu token de autenticación se cifra en reposo y nunca vuelve a mostrarse. Abre la misma página de Config para revisar el estado configurado, activar o desactivar un servidor, o eliminarlo con confirmación explícita. Eliminarlo lo desconecta de inmediato y libera un espacio. Cada fila guardada también muestra los nombres de herramientas acotados de su último descubrimiento exitoso. ninguna descubierta es un resultado conocido de cero herramientas; descubrimiento desconocido identifica una fila heredada o un servidor que aún no tiene una instantánea exitosa. Abrir la superficie de administración de MCP solo lee metadatos guardados y no contacta al servidor remoto.
Servidores MCP locales
Section titled “Servidores MCP locales”Los servidores MCP locales solo son compatibles con instancias con autoalojamiento: el bot público alojado requiere HTTPS y bloquea direcciones locales o privadas. Si ejecutas tu propia instancia, consulta Configuración: servidor MCP local.
Modo de herramientas deliberado
Section titled “Modo de herramientas deliberado”Cada herramienta declarada aumenta el tamaño del prompt. El Modo de Herramientas Deliberado mantiene las declaraciones fuera de los turnos normales de chat, salvo que el mensaje necesite una herramienta de tarea; así reduce el prompt y ayuda a los modelos pequeños o locales a responder más rápido. La selección de stickers sigue disponible para expresarse espontáneamente cuando el uso de stickers y herramientas está activado y el proveedor lo admite. Las restricciones de DM, suplantación y rol siguen vigentes. Desactiva el uso de stickers para impedir respuestas con stickers. Cuando vence el plazo de actualización de la memoria a corto plazo, su herramienta de mantenimiento también queda disponible sin una solicitud del usuario.
- Primero comprueba el mensaje en busca de la intención de la herramienta. Los activadores integrados cubren solicitudes comunes (recordatorios, búsqueda web, actualizaciones de memoria, mensajes entre canales, generación de imágenes/vídeo/voz, análisis de medios, creación de hilos, acciones de mensajes). Las preguntas sobre su modelo actual, herramientas, configuraciones o por qué una capacidad no está disponible exponen la revisión de capacidades y el acceso a la documentación oficial juntos. Las frases de seguimiento también funcionan, como “haz eso de nuevo pero más enojado” después de una solicitud de mensaje de voz.
- Los administradores de servidores pueden agregar frases de activación personalizadas literales con
/server trigger add, por ejemplo, asignandopic,imgopfpa la generación de imágenes. - Los disparadores incorporados leen frases en inglés. Otros idiomas llegan a las mismas herramientas a través de la lista de palabras clave de cada idioma. La lista de cada idioma enviado se verifica en cada mensaje, cualquiera que sea su configuración de idioma, por lo que un servidor bilingüe funciona en ambos idiomas.
- Las frases personalizadas en japonés, chino o coreano también coinciden dentro de palabras más largas, porque esos idiomas no separan las palabras con espacios. Una frase que termina en
*coincide con cualquier palabra que comience con ella:remind*cubrereminderyreminding.
Controles
Section titled “Controles”/server dtm: los administradores del servidor lo alternan./personal config: las usuarios lo anulan por sí mismas.- Con un canal de registro de pensamiento configurado (
/server thought-logs), las llamadas exitosas a la herramienta en modo deliberado se registran allí junto con el disparador que expuso la herramienta.
El modo de herramienta deliberada solo decide qué herramientas se muestran al modelo, pero el modelo aún tiene que elegir llamar a una. En /help, elija Comportamiento y luego Modo de Herramientas Deliberado para obtener el resumen de Discord.
Actualizaciones estructuradas de información del usuario
Section titled “Actualizaciones estructuradas de información del usuario”TomoriBot puede actualizar automáticamente tu perfil y tus preferencias de nombres de personas cuando preguntas directamente en el chat (como “llámame Capitán” o “mis pronombres son ellos”):
| Preferencia | Alcance | Efecto |
|---|---|---|
| Apodo, prefijo, sufijo | por persona | Sólo la persona activa se dirige a usted con este nombre o título. |
| Identidad de género, pronombres, estilo de direccionamiento, zona horaria. | Global | Cada persona usa el mismo valor en todos los servidores. |
- Eliminar un título: pedirle que deje de usar un título (como “deja de llamarme Maestro”) lo borra para esa persona.
- Privacidad: los niveles de privacidad restrictivos bloquean nuevas adiciones y ediciones y al mismo tiempo te permiten borrar los datos existentes.
- Permisos: los administradores de servidores pueden alternar actualizaciones automáticas usando
Actualizaciones de Información del Usuarioen/config>Permisos. Siempre puedes editar tu perfil manualmente con/personal config.
Para conocer los esquemas de parámetros de herramientas y el diseño de almacenamiento de la base de datos, consulte la arquitectura del sistema de herramientas.