report_friction
Diagnostic et système · macOS · Windows
Effet: envoi. État: disponibilité conditionnelle.
«Disponibilité conditionnelle» signifie que l’outil peut dépendre de la version, de la plateforme, des autorisations, du compte ou de la configuration. Il n’est pas forcément actif partout.
macOS
Objectif
Envoie à l’équipe LMCP un signal anonyme indiquant qu’un outil LMCP a échoué, n’a rien renvoyé d’utile ou n’a pas pu faire ce que l’utilisateur demandait, afin que l’équipe puisse le corriger. Proposez-le à l’utilisateur après un tel échec et envoyez-le s’il est d’accord. Il contient une catégorie, le nom de l’outil et des faits que LMCP rassemble lui-même : la classe de l’erreur, le type et la taille approximative de chaque argument de l’appel en échec (jamais sa valeur), les noms et résultats des dix derniers appels d’outils, et si l’app est installée, en cours d’exécution et autorisée. Il ne contient jamais la demande, le message ou le contenu des e-mails de l’utilisateur, les noms de comptes ni d’autres données personnelles. Il est envoyé lors de cet appel (il n’y a pas d’aperçu), et rien n’est envoyé lorsque l’utilisateur a désactivé les signaux anonymes.
Entrées requises
friction_type
Les noms restent exactement ceux exigés par l’outil. Les définitions techniques canoniques en anglais figurent dans le schéma dépliable ci-dessous.
Autorisations et confirmation
Le schéma ne déclare aucun paramètre de confirmation explicite. Cela n’autorise aucune action sans permission : vérifiez l’effet et obtenez une autorisation.
- Utilisez uniquement les applications, comptes et ressources autorisés par l'utilisateur sur cette plateforme. Consultez la description spécifique à la plate-forme de cet outil pour connaître ses exigences de connexion et d'autorisation ; ce catalogue ne revendique pas d'étendues OAuth ou de droits d'exploitation supplémentaires pour le système d'exploitation.
Schéma technique canonique en anglais — macOS
{
"properties": {
"attempt_count": {
"description": "How many times this was attempted (optional).",
"type": "integer"
},
"error_category": {
"description": "Category of what went wrong (optional).",
"enum": [
"permission",
"timeout",
"empty",
"not_found",
"parse",
"wrong_result",
"missing_capability",
"crash",
"other"
],
"type": "string"
},
"friction_type": {
"description": "What kind of friction you observed.",
"enum": [
"repeated_failure",
"task_abandoned",
"workaround_needed",
"cannot_complete",
"other"
],
"type": "string"
},
"intent_category": {
"description": "What the user was trying to do, chosen from this list (optional). Pick the closest one; do not describe the request.",
"enum": [
"find_email",
"read_email",
"send_email",
"send_message",
"read_messages",
"schedule_event",
"read_calendar",
"manage_reminder",
"manage_note",
"manage_contact",
"read_file",
"write_file",
"search_files",
"document_work",
"cloud_storage",
"browse_web",
"run_command",
"other"
],
"type": "string"
},
"tool_attempted": {
"description": "Name of the LMCP tool involved (e.g. list_emails). Optional.",
"type": "string"
}
},
"required": [
"friction_type"
],
"type": "object"
}Exemple documentaire
Exemple de documentation pour report_friction. N’exécutez pas cet exemple. Les arguments présentés appartiennent à un jeu de données fictif ; résolvez les identifiants réels et obtenez une autorisation avant tout appel réel.
{
"friction_type": "cannot_complete"
}Windows
Objectif
Envoie à l’équipe LMCP un signal anonyme indiquant qu’un outil LMCP a échoué, n’a rien renvoyé d’utile ou n’a pas pu faire ce que l’utilisateur demandait, afin que l’équipe puisse le corriger. Proposez-le à l’utilisateur après un tel échec et envoyez-le s’il est d’accord. Il contient une catégorie, le nom de l’outil et des faits que LMCP rassemble lui-même : la classe de l’erreur, le type et la taille approximative de chaque argument de l’appel en échec (jamais sa valeur), les noms et résultats des dix derniers appels d’outils, et si l’app est installée, en cours d’exécution et autorisée. Il ne contient jamais la demande, le message ou le contenu des e-mails de l’utilisateur, les noms de comptes ni d’autres données personnelles. Il est envoyé lors de cet appel (il n’y a pas d’aperçu), et rien n’est envoyé lorsque l’utilisateur a désactivé les signaux anonymes.
Entrées requises
friction_type
Les noms restent exactement ceux exigés par l’outil. Les définitions techniques canoniques en anglais figurent dans le schéma dépliable ci-dessous.
Autorisations et confirmation
Le schéma ne déclare aucun paramètre de confirmation explicite. Cela n’autorise aucune action sans permission : vérifiez l’effet et obtenez une autorisation.
- Utilisez uniquement les applications, comptes et ressources autorisés par l'utilisateur sur cette plateforme. Consultez la description spécifique à la plate-forme de cet outil pour connaître ses exigences de connexion et d'autorisation ; ce catalogue ne revendique pas d'étendues OAuth ou de droits d'exploitation supplémentaires pour le système d'exploitation.
Schéma technique canonique en anglais — Windows
{
"properties": {
"attempt_count": {
"description": "How many times this was attempted (optional).",
"type": "integer"
},
"error_category": {
"description": "Category of what went wrong (optional).",
"enum": [
"permission",
"timeout",
"empty",
"not_found",
"parse",
"wrong_result",
"missing_capability",
"crash",
"other"
],
"type": "string"
},
"friction_type": {
"description": "What kind of friction you observed.",
"enum": [
"repeated_failure",
"task_abandoned",
"workaround_needed",
"cannot_complete",
"other"
],
"type": "string"
},
"intent_category": {
"description": "What the user was trying to do, chosen from this list (optional). Pick the closest one; do not describe the request.",
"enum": [
"find_email",
"read_email",
"send_email",
"send_message",
"read_messages",
"schedule_event",
"read_calendar",
"manage_reminder",
"manage_note",
"manage_contact",
"read_file",
"write_file",
"search_files",
"document_work",
"cloud_storage",
"browse_web",
"run_command",
"other"
],
"type": "string"
},
"tool_attempted": {
"description": "Name of the LMCP tool involved (e.g. list_emails). Optional.",
"type": "string"
}
},
"required": [
"friction_type"
],
"type": "object"
}Exemple documentaire
Exemple de documentation pour report_friction. N’exécutez pas cet exemple. Les arguments présentés appartiennent à un jeu de données fictif ; résolvez les identifiants réels et obtenez une autorisation avant tout appel réel.
{
"friction_type": "cannot_complete"
}