Aller au contenu principal

createNotificationInboxTool()

Ajouté dans : @mastra/core@1.39.0

createNotificationInboxTool() crée un Tool Mastra qui permet à un Agent d’inspecter et de gérer les enregistrements de la boîte de réception de notifications du fil de discussion actuel.

Utilisez ce Tool avec des Signals de notification durables. Pour envoyer des enregistrements de notification, consultez Agent.sendNotificationSignal().

Exemple d’utilisation
Lien direct vers Exemple d’utilisation

L’exemple suivant ajoute le Tool de boîte de réception à un Agent.

src/mastra/agents/support-agent.ts
import { Agent } from '@mastra/core/agent'
import { createNotificationInboxTool } from '@mastra/core/notifications'

const notificationsStorage = await storage.getStore('notifications')

export const supportAgent = new Agent({
id: 'support-agent',
name: 'Support Agent',
instructions: 'Help the user triage updates.',
model: 'openai/gpt-5.6-sol',
tools: {
notificationInbox: createNotificationInboxTool({ storage: notificationsStorage }),
},
})

Paramètres
Lien direct vers Paramètres

options:

object
Configuration du Tool.
object

storage:

NotificationsStorage
Domaine de stockage des notifications renvoyé par storage.getStore('notifications').

Entrée du Tool
Lien direct vers Entrée du Tool

Le Tool généré possède l’ID notification-inbox et accepte les champs d’entrée suivants.

action:

'list' | 'read' | 'markSeen' | 'dismiss' | 'archive' | 'search'
Action à effectuer dans la boîte de réception.

threadId?:

string
ID du fil de discussion à inspecter. Utilise par défaut le fil de discussion actuel de l’Agent lorsqu’il est disponible.

id?:

string
ID de la notification. Obligatoire pour markSeen, dismiss et archive. Facultatif pour read.

status?:

'pending' | 'delivered' | 'seen' | 'dismissed' | 'archived' | 'discarded'
Filtre d’état pour les actions list, read ou search.

priority?:

'low' | 'medium' | 'high' | 'urgent'
Filtre de priorité pour les actions list, read ou search.

source?:

string
Filtre de source pour les actions list, read ou search.

query?:

string
Requête de recherche. Obligatoire lorsque action vaut search.

limit?:

number
Nombre maximal de notifications à renvoyer. Doit être un entier positif.

Actions
Lien direct vers Actions

ActionDescription
listRenvoie les notifications correspondantes.
readTransmet le contenu lisible des notifications sous forme de Signals et marque les enregistrements distribués comme vus.
markSeenMarque une notification comme vue.
dismissMarque une notification comme ignorée.
archiveMarque une notification comme archivée.
searchRecherche des notifications selon une requête et des filtres facultatifs.

Lorsque read trouve des notifications en attente ou distribuées, le Tool transmet leur contenu sous forme de Signals de notification au lieu de renvoyer leur contenu intégral comme une sortie de Tool normale. Utilisez cette action après un Signal <notification-summary> lorsque l’Agent a besoin des enregistrements complets à l’origine du récapitulatif.