Aller au contenu
Console
Try one

    Notes de version

    Suivez les changements apportés au produit Thalovant, aux SDK, au MCP et à la documentation, et trouvez le guide de mise à niveau utile.

    Consultez cette page pour trouver les changements du produit, les versions prises en charge des SDK et du MCP, et le guide qui explique votre prochaine étape. Les entrées plus anciennes décrivent les versions offertes à leur date. Pour choisir la version à installer aujourd’hui, utilisez le tableau de compatibilité.

    Vérification et récupération de compte plus claires — 22 septembre 2026

    Section intitulée « Vérification et récupération de compte plus claires — 22 septembre 2026 »

    À l’inscription, les instructions à suivre dans votre boîte de réception restent maintenant à l’écran. Le courriel de vérification a un nouveau design, et un formulaire de récupération couvre les liens manquants ou expirés. Les pages de confirmation suivent le thème du tableau de bord et indiquent l’étape suivante pour vous connecter.

    Le nouveau point de terminaison additif POST /v1/auth/verify/resend accepte une adresse courriel et renvoie une réponse générique d’acceptation. Les formats de requête existants pour l’inscription et la vérification restent compatibles. L’enrôlement à l’authentification multifacteur (AMF) est maintenant facultatif sur le forfait Free. Un facteur que vous avez déjà activé reste exigé à la connexion, et les comptes payants gardent la politique d’enrôlement attribuée au compte. Les clients SDK et MCP existants n’ont pas besoin de mise à niveau. Consultez l’accès au compte pour les limites de renvoi et la récupération.

    Sessions gérées, inventaire et revendication des réponses — 13 septembre 2026

    Section intitulée « Sessions gérées, inventaire et revendication des réponses — 13 septembre 2026 »

    Python 0.7.4, Node, Kotlin, .NET et Swift 0.7.1, Go 0.9.1 et Rust 0.9.0 offrent des sessions de hub gérées et des modèles d’inventaire et de cache présentables. Les sessions conservent les abonnements quand la connexion est remplacée et ne rejouent pas les requêtes après un envoi incertain. La relance automatique d’Ask qu’offraient auparavant les sessions gérées de Python est retirée. Un Ask peut déclencher une action, alors c’est à l’application de décider si une nouvelle tentative est sûre.

    Python intègre aussi un correctif en amont contre les événements entrants en double avant les rappels des abonnés.

    Les réponses exposent maintenant, dans l’ordre, les identifiants du pipeline et des compétences, ainsi qu’un statut de revendication indicatif. Une réponse venue seulement d’un repli garde son texte et son statut de réussite, mais n’est pas revendiquée. Les anciennes réussites sans marquage restent revendiquées. Ces champs ne vérifient pas l’identité du pair.

    Les caches d’inventaire valident les enregistrements, écrivent de façon privée et atomique, et conservent la langue d’exemple par défaut lors de la sérialisation JSON. Une prise en charge inconnue d’une langue dans le catalogue reste distincte d’une langue connue comme non prise en charge. Les SDK gérés partagent aussi des cas de conformité pour la détection des questions et l’inventaire.

    MCP 0.5.1 ajoute la vue de présentation partagée à son outil d’inventaire, tout en conservant les champs de sortie existants et l’isolation d’identité propre à chaque appel. Le C embarqué 0.6.1 ajoute une extraction bornée des identifiants de réponse et une classification des revendications gérée par l’appelant. Consultez le tableau de compatibilité des SDK et le guide d’inventaire MCP.

    Abonnements Python lors des reconnexions — 13 septembre 2026

    Section intitulée « Abonnements Python lors des reconnexions — 13 septembre 2026 »

    Python 0.6.11 conserve les abonnements on() actifs quand la connexion est remplacée. Il corrige aussi des situations de concurrence de la 0.6.9 qui pouvaient enregistrer un gestionnaire deux fois ou restaurer un abonnement fermé. Les enregistrements qui échouent restent inactifs après les reconnexions suivantes. Les sessions rouvertes par la bibliothèque sous-jacente gardent leurs écouteurs sans les enregistrer de nouveau, ce qui préserve le correctif de la 0.6.10. Consultez le guide du SDK Python.

    Correctifs de connexion WebSocket pour Kotlin — 13 septembre 2026

    Section intitulée « Correctifs de connexion WebSocket pour Kotlin — 13 septembre 2026 »

    Kotlin 0.6.3 remplace les valeurs d’autorisation WebSocket périmées par l’identité actuelle, y compris dans les noms de requête encodés. Les autres paramètres de requête et les fragments d’URL sont conservés. Les erreurs de connexion ne retiennent plus les messages réseau ni les causes qui contiennent des identifiants. Les transports pris en charge et les API de listage ne changent pas. Consultez le guide du SDK Kotlin.

    Python 0.6.8, Node, Swift et .NET 0.6.1, Kotlin 0.6.2, Go et Rust 0.8.1, et MCP 0.4.1 appliquent les mêmes règles de listage de thalovant-languages 0.2.1. Les questions en espagnol reçoivent maintenant leur point d’interrogation. Les variantes régionales héritent de leur langue de base, et les phrases complètes comme le français coupe le son gardent leur point final. Les langues sans règles connues restent telles quelles. Les API de listage et la prise en charge des transports ne changent pas.

    Installez les versions actuelles à partir des guides des SDK. Le C embarqué reste à 0.6.0, avec des emplacements et un transport fournis par l’appelant.

    Listages adaptés à la langue dans les SDK et le MCP

    Section intitulée « Listages adaptés à la langue dans les SDK et le MCP »

    Node 0.6.0, Go/Rust 0.8.0, Kotlin/Swift/.NET 0.6.0 et MCP 0.4.0 apportent aux autres clients gérés la fonction de listage en phrases de Python. Ils intègrent les mêmes données de langue et associent les étiquettes de langue régionales à l’aide des distances OVOS. Ils remplissent les emplacements d’exemple avant les remplacements explicites, et seuls les exemples rendus uniques et non vides comptent dans les limites. Les méthodes existantes d’exemples bruts restent disponibles. Consultez les guides des SDK pour l’appel propre à chaque langage.

    MCP 0.4.0 gère aussi proprement SIGTERM et SIGINT en mode stdio et HTTP, y compris quand il s’exécute comme PID 1 dans son conteneur. Le nettoyage a un délai d’échec de dix secondes.

    Python 0.6.7 corrige la suppression des messages de dépréciation OVOS répétés au sujet du format imbriqué de l’emplacement du hub. Ce correctif de journalisation propre à Python conserve les autres avertissements et ne change ni le protocole ni le listage. Le C embarqué reste à 0.6.0, avec un rendu explicite dans le tampon de l’appelant et sans tables de langue intégrées.

    Listages d’intentions Python adaptés à la langue

    Section intitulée « Listages d’intentions Python adaptés à la langue »

    Python 0.6.5 ajoute as_sentence() et HubIntent.examples(sentence=True). Installez thalovant[listing] pour obtenir la ponctuation propre à chaque langue et des exemples d’emplacements tirés du paquet de données partagé thalovant-languages. Sans langue précisée, la langue de l’enregistrement choisi est conservée; une variante régionale choisit l’enregistrement le plus proche. Les rendus vides ou répétés ne comptent pas dans la limite d’exemples. Consultez le guide de listage Python.

    Aides de requête des SDK et mises à jour de configuration protégées

    Section intitulée « Aides de requête des SDK et mises à jour de configuration protégées »

    Python 0.6.4 prend un instantané de la configuration imbriquée et des personas avant les E/S de fusion, et copie la session de requête même sans indication de pipeline. Les SDK gérés coordonnés gardent la même charge utile de l’appelant lors des nouvelles tentatives après un conflit de configuration. Python relève aussi le minimum de Requests à 2.33.0 et celui de cryptography à 50.0.0 pour exclure des versions vulnérables connues.

    Node 0.5.0, Go/Rust 0.7.0, Kotlin/Swift/.NET 0.5.0, C embarqué 0.6.0 et MCP 0.3.0 ajoutent, comme Python, les indications de langue, de pipeline et d’emplacement dans les requêtes, des aides pour l’audio intégré et des exemples d’intentions prononçables. Les SDK gérés limitent l’audio à 4 MiB par extrait et 16 MiB par réponse. Le C embarqué fournit plutôt des primitives de collecte gérées par l’appelant. Le MCP garde les octets audio hors du texte et offre des blocs média distincts avec includeAudio.

    Les versions de suivi Node/Swift 0.5.1 et Rust 0.7.1 empêchent la corruption des valeurs numériques pendant les fusions protégées. Node refuse les valeurs non finies et les entiers non sûrs dans la configuration et les personas. Rust et Swift conservent les entiers natifs et refusent les valeurs à virgule flottante hors de la plage des entiers exacts. Ces vérifications couvrent aussi la configuration stockée avant l’écriture. Pour les entiers qui dépassent la plage prise en charge par votre SDK, utilisez des identifiants sous forme de chaîne.

    Les aides de mise à jour de configuration gérées font maintenant par défaut une fusion protégée par révision. Elles font au plus trois tentatives et ne réessaient que sur HTTP 412. Il faut une API compatible ainsi que hubs:read et hubs:write, qui exige un forfait payant. Les applications existantes qui ont besoin d’un remplacement complet doivent choisir l’opération de remplacement explicite. Consultez les capacités des SDK et le guide de migration de la configuration.

    Mises à jour simultanées de la configuration Python

    Section intitulée « Mises à jour simultanées de la configuration Python »

    Python 0.6.3 corrige la perte de mises à jour quand des clients distincts fusionnent la configuration du runtime en même temps. Il utilise les révisions de configuration et un PUT conditionnel. Sur HTTP 412, il relit la configuration et réapplique les changements d’origine, avec au plus trois tentatives d’écriture. Une API compatible est requise; les serveurs plus anciens échouent sans rien écrire. merge=False reste un remplacement inconditionnel. Consultez les mises à jour simultanées de la configuration.

    Python 0.6.1 ajoute des options de langue, de pipeline et d’emplacement pour les requêtes, une collecte bornée de l’audio intégré, l’indication de la langue de la réponse et des exemples d’intentions prononçables. La fabrique de clients expose maintenant self_signed, avec la vérification des certificats activée par défaut. Python 0.6.2 conserve la priorité des phrases complètes quand il limite les exemples d’intentions rendus. Les aides existantes pour les compétences du runtime partagé restent prises en charge. Consultez le guide du SDK Python.

    Python 0.6.0, Node.js 0.4.0, Go et Rust 0.6.0, ainsi que Kotlin, Swift et .NET 0.4.0 permettent de lister, d’installer, de mettre à jour et de retirer les compétences d’un hub, et d’en consulter l’historique. Les écritures peuvent, au choix, attendre la fin de l’opération. Conservez la réponse acceptée au complet pour reprendre après un échec d’interrogation sans répéter l’écriture.

    Les opérations de compétences adressées à un hub touchent le groupe de runtime rattaché et tous les hubs qui le partagent. Utilisez des groupes de runtime distincts quand des hubs ont besoin de compétences différentes. Les jetons restreints doivent couvrir tous les hubs servis par le groupe.

    MCP 0.2.0 utilise le SDK Node 0.4.0 et ajoute thalovant_list_hub_skill_history, y compris en mode lecture seule. Consultez Ajouter une compétence à un hub et les guides des SDK pour les noms de méthodes et des exemples.

    Corrections de l’interrogation des compétences de hub

    Section intitulée « Corrections de l’interrogation des compétences de hub »

    Python 0.5.16 et Node.js 0.3.16 ne lancent plus de nouvelle lecture d’état une fois l’échéance d’interrogation atteinte. Si une lecture d’état échoue, les deux gardent l’identifiant de l’opération acceptée et l’erreur d’API d’origine, nettoyée. L’appelant peut ainsi reprendre l’interrogation sans soumettre une autre écriture. L’échéance n’annule pas une requête HTTP déjà en cours. Python refuse aussi les lignes mal formées de la liste des compétences au lieu de les ignorer en silence, et corrige les consignes d’attente du CLI partagé.

    MCP 0.1.24 exige le SDK Node 0.3.16 et utilise ses méthodes publiques de compétences de hub. Il conserve les vérifications d’annulation du MCP et le catalogue par défaut actuel de 45 outils. Consultez Ajouter une compétence à un hub pour les clients offerts et la marche à suivre pour reprendre après un échec.

    Les versions de suivi sont Python 0.5.14, Node.js 0.3.14, Go 0.5.4, Rust 0.5.2, Kotlin et .NET 0.3.3, Swift 0.3.2, C embarqué v0.5.1 et MCP 0.1.22.

    • Les SDK de haut niveau refusent, dans la portée de leur client, les identifiants de requête Ask actifs et les identifiants Query en double, ce qui préserve des espaces de noms indépendants. Utilisez aussi de nouveaux identifiants pour les opérations suivantes; une réponse retardée peut survivre à une annulation.
    • Node refuse une confiance enregistrée mal formée et sérialise entre les processus les transactions complètes sur l’état du système de fichiers. Dans le navigateur, l’état reste limité à la file d’une seule page. Des onglets actifs en parallèle ont besoin d’identités et d’espaces de noms distincts.
    • Go et Rust resserrent aussi la validation des épingles enregistrées; la méthode de premier contact de Rust refuse les remplacements contradictoires. Python, Node, Go et Rust reconnaissent les encodages hexadécimaux équivalents d’une épingle sans traiter la casse comme un changement de clé du serveur.
    • Tous les SDK de haut niveau distinguent les définitions d’intentions partielles utilisables des réponses vides ou en erreur suivies d’un silence. Une description vide reçue au complet reste valide. .NET garde les manifestes de moteur reçus quand un autre moteur refuse ou reste silencieux.
    • Go et Rust refusent les etags de hub vides avant l’envoi; Kotlin refuse les notes hors de l’intervalle 1–5. Les exemples de nouvelle tentative exigent une clé d’idempotence explicite et conservée. La configuration d’un groupe de runtime remplace les valeurs précédentes. Elle exige des écritures sérialisées, car l’API n’offre pas de jeton d’écriture conditionnelle.
    • Le C embarqué refuse les séparateurs d’objet mal formés après un champ demandé au lieu de renvoyer un succès prématuré. Ses exemples s’arrêtent sur les erreurs du constructeur et du codec.
    • Le masquage des noms d’identifiants couvre maintenant les métadonnées imbriquées d’identité et d’amorçage, alors que la persistance explicite des secrets reste possible. Rust omet les corps d’erreur HTTP non structurés. Il signale aussi la fermeture WSS par le pair avec son code d’état, au lieu d’un délai d’authentification dépassé.
    • Le MCP utilise le SDK Node 0.3.14; ses tests de provisionnement couvrent les résultats d’outils réussis et la création protégée des fichiers d’identité. Son guide des politiques indique maintenant clairement que le refus global a préséance.

    Consultez les versions actuelles et les consignes sur les clés enregistrées.

    Les méthodes de compétences adressées à un hub gèrent les rattachements du groupe de runtime de ce hub; tous les hubs qui le partagent sont touchés. Le groupe peut commencer sans aucune compétence et en recevoir une à la fois. Les changements s’appliquent en direct en environ 15 secondes, sans redémarrage.

    • Dans l’application : onglet Skills, Add skill, choisissez la compétence et une version, puis confirmez. La ligne affiche l’état d’installation jusqu’à ce qu’il se stabilise. Update et Remove se trouvent sur chaque ligne.
    • API : GET et POST sur /v1/hubs/{hub_id}/skills; PATCH et DELETE sur le même chemin suivi de /{skill}. Désignez la compétence par son identifiant, pas par son slug. Le listage exige hubs:inspect. Les écritures exigent hubs:write et un forfait payant, et renvoient HTTP 202 avec un operation_id à interroger sur /v1/operations/{operation_id}. Elles répondent 409 (skill_version_already_installed) si la compétence est déjà à cette version, ou 404 (hub_without_runtime_group) s’il n’y a pas de groupe de runtime. Les erreurs sont du JSON de problème avec un code à la racine.
    • Le SDK Python 0.5.15 ajoute list_hub_skills, install_hub_skill, update_hub_skill et remove_hub_skill, ainsi que les sous-commandes CLI thalovant skills list|add|update|remove. Le SDK Node 0.3.15 ajoute listHubSkills, installHubSkill, updateHubSkill et removeHubSkill. Par défaut, wait interroge l’opération toutes les 2 secondes pendant au plus 120 secondes.
    • MCP 0.1.23 ajoute quatre outils correspondants, thalovant_list_hub_skills et ses équivalents d’installation, de mise à jour et de retrait; le catalogue par défaut passe à 45 outils.

    Go, Rust, Kotlin, Swift et .NET n’offrent pas encore ces appels. Consultez Ajouter une compétence à un hub.

    Parité des fonctions des SDK et sécurité des identifiants

    Section intitulée « Parité des fonctions des SDK et sécurité des identifiants »

    L’ensemble coordonné comprend Python 0.5.12, Node.js 0.3.12, Go 0.5.2, Rust 0.5.1, Kotlin et .NET 0.3.2, Swift 0.3.1, C embarqué v0.5.0 et MCP 0.1.21.

    • Dans les SDK de haut niveau, les processus du runtime partagé couvrent maintenant les requêtes routées, les conversations et l’attente d’événements. Les flux utilisent des files bornées lorsqu’elles existent; Node utilise des abonnements directs par rappel. Un listage d’intentions resté sans réponse se rabat sur les manifestes de moteur. La découverte de repli facultative distingue une prise en charge inconnue d’un résultat vide et offre une vérification prudente de la langue.
    • Les délais d’Ask, de Query et d’attente d’événements incluent la connexion et la disponibilité authentifiée, ainsi que l’envoi et la collecte des réponses qui s’appliquent. Un appelant en file qui est annulé ne peut pas fermer la connexion active. Le nettoyage garde la responsabilité jusqu’à l’arrêt du travail; les écritures incertaines ne sont jamais rejouées automatiquement.
    • Le nettoyage HTTP signale une réponse de déconnexion refusée ou invalide. Il garde la responsabilité d’une session distante non confirmée jusqu’à ce que le nettoyage soit confirmé. Un accusé documenté « déjà déconnecté » permet la reprise quand une réponse réussie antérieure a été perdue. Le SDK garde la responsabilité du nettoyage, et le MCP empêche les outils suivants de réutiliser cette identité dans le même processus.
    • Les appels d’API refusent les redirections et les informations d’utilisateur dans l’URL. Les appels authentifiés et les corps de requête exigent HTTPS, sauf pour les points de terminaison de développement explicites en boucle locale. Le correctif .NET exige de migrer depuis un HttpClient injecté arbitraire pour les appels qui portent des identifiants; consultez son guide.
    • Go 0.5.0 exige Go 1.26; Rust 0.5.0 exige Rust 1.88. Les deux conservent les structures existantes de requête et d’inventaire grâce à des options additives et à des enveloppes de capacités.
    • Le MCP ajoute des outils de Query routée, d’inventaire des intentions du runtime et d’état des opérations. Il utilise le SDK Node 0.3.12 et lie les identifiants configurés à l’origine d’API configurée. L’annulation d’une requête MCP atteint les opérations du runtime prises en charge. Un outil en file annulé ne s’exécute jamais plus tard, et le travail accepté garde son identité jusqu’au nettoyage.
    • Consultez Limites des plateformes pour les runtimes et les systèmes d’exploitation pris en charge.

    Les niveaux de transport ne changent pas : Kotlin, Swift et .NET utilisent WSS; le C embarqué fournit des aides de protocole avec un transport géré par l’appelant. Gardez les clés enregistrées de chaque client pendant les mises à niveau. Python remplace l’attente de disponibilité supplémentaire, faite au mieux depuis la 0.5.7, par un seul budget de connexion strict. Consultez le tableau de compatibilité des SDK.

    Suivi Python pour les sessions et le listage des intentions

    Section intitulée « Suivi Python pour les sessions et le listage des intentions »

    Python 0.5.7 conserve les correctifs de l’état de confiance et des erreurs de délai de la 0.5.6. Il ajoute une attente de disponibilité bornée après la connexion, pour que les opérations suivantes puissent réutiliser la session. Son inventaire d’intentions par défaut se rabat sur les manifestes de moteur quand la requête de listage ne reçoit pas de réponse. Consultez le SDK Python pour le comportement des délais et du repli.

    • Python 0.5.6 conserve les erreurs de délai après le nettoyage HTTPS et signale les épingles enregistrées mal formées sans écraser l’état de confiance.
    • Le SDK Node 0.3.5 impose TLS pour MQTT après la normalisation du point de terminaison. Il garde aussi la configuration MQTT et le nettoyage après un échec HTTPS dans le délai de connexion. MCP 0.1.19 inclut cette mise à jour du SDK.
    • .NET 0.2.1 publie des clés et des épingles complètes, pour qu’une écriture interrompue ne puisse pas corrompre l’identité enregistrée.
    • Swift 0.2.1 permet aux appels simultanés de se joindre à une seule tentative de connexion authentifiée. Le C embarqué v0.4.1 et Swift imposent l’étape finale d’authentification.
    • Rust 0.4.8 partage la négociation de session et son cache d’identifiants entre WSS, HTTPS et MQTT.

    La prise en charge actuelle des transports et des plateformes ne change pas. Gardez les clés enregistrées de chaque client lors de la mise à niveau.

    • Les huit SDK ouvrent maintenant la même session chiffrée et authentifiée avec un hub. Kotlin, Swift et .NET restent limités à WSS, et le C embarqué exige le transport de l’application. Le tableau de compatibilité des SDK donne les versions exactes des paquets.
    • Python, Node.js, Go et Rust authentifient les sessions WSS, HTTPS et MQTT, gardent leurs clés enregistrées d’une reconnexion à l’autre et conservent leur session HTTPS. Un échec d’authentification ne remplace jamais l’identité de hub enregistrée et ne revient jamais à un transport plus ancien.
    • MCP 0.1.18 utilise le SDK Node 0.3.4 pour ses outils de runtime de hub. Gardez ses clés enregistrées d’un redémarrage à l’autre et utilisez des identités différentes pour des processus MCP simultanés.
    • Mettez à niveau les anciens clients avant de les connecter à un hub actuel; le crypto_key d’une ancienne identité ne donne plus accès à rien. Consultez la page de chaque langage pour les exigences de stockage, les limites de mémoire en embarqué et le runtime WebSocket qu’exige Swift sous Linux.
    • Mise à jour des guides par langage et de la page d’accueil des développeurs pour les huit SDK actuels, y compris les restrictions liées au navigateur et aux plateformes.
    • Correction des exemples Python d’actions et de réponses enrichies, qui utilisent maintenant les noms de méthodes et les champs de réponse publiés.
    • Précision : l’authentification à l’API du MCP et l’identité utilisée pour se connecter à un hub sont deux étapes de configuration distinctes.
    • Ajout de consignes de dépannage de connexion pour les versions non prises en charge, les identités de serveur modifiées et les identités de client partagées. Précision : la capacité Autoscaling se choisit sur un hub, séparément des paramètres du runtime partagé.
    • Un client connecté peut maintenant lister toutes les intentions auxquelles son hub répond, par langue, avec les phrases qu’une personne dit pour atteindre chacune. La réponse passe par la session du client lui-même, donc aucun jeton d’API n’entre en jeu.
    • La connexion doit être autorisée à publier ovos.intent.list, et aussi ovos.intent.describe quand le SDK doit demander les phrases séparément. Le SDK demande au hub de les renvoyer avec la liste. Un runtime qui respecte include_definitions ne lui fait donc jamais envoyer de describe, et ce second type n’y est pas nécessaire. Aucun runtime livré ne le respecte aujourd’hui, y compris celui de Thalovant, alors autorisez les deux types. Un hub qui refuse répond aussitôt par une erreur de politique qui nomme le type. Le SDK se rabat alors sur les seuls noms d’intentions, à condition que le hub autorise les anciens manifestes de moteur. Les connexions créées pour les clients SDK et Thalovant Voice autorisent les deux types par défaut.
    • Quand un hub répond à une requête par une erreur, cela veut dire deux choses différentes. Un listage échoué lève l’erreur de runtime du SDK avec le texte d’erreur du hub, car un listage qui a échoué n’est pas un hub vide. Un describe échoué laisse cette intention sans phrases et ne lève rien : le hub ne connaît pas cet enregistrement.
    • Le SDK Python 0.4.36 fournit client.intents(...), list_intents, describe_intent, ThalovantPolicyDeniedError et la commande thalovant intents. Node.js, Go, Rust, Kotlin, Swift, .NET et la bibliothèque C embarquée publient maintenant les mêmes appels, chacun avec sa propre graphie : @thalovant/sdk 0.2.39, thalovant-go-sdk v0.3.14, thalovant 0.3.1 sur crates.io, com.thalovant:thalovant-sdk 0.1.8, thalovant-swift-sdk v0.1.9, Thalovant.Sdk 0.1.13 et thalovant-embedded-c v0.3.0. Ces versions, et Python 0.4.40, sont les premières à signaler un listage échoué comme une erreur. Chaque page de SDK contient un exemple fonctionnel.
    • Consultez Que peut-on demander à mon hub? et Lister ce que l’on peut demander au hub.
    • Chaque SDK peut maintenant se connecter par votre navigateur : le SDK affiche un code court, vous approuvez la demande à https://dash.thalovant.com/activate, et le SDK reçoit un jeton d’API limité et révocable au lieu de manipuler votre mot de passe. Il faut Python 0.4.22, Node.js 0.2.25, Go v0.3.3, Rust v0.2.20, ou Kotlin, Swift et .NET 0.1.1.
    • Ajout de la page Jetons d’API : créez des jetons limités et à durée fixe pour les scripts, l’intégration continue (CI) et les agents d’IA. Copiez le secret, qui ne s’affiche qu’une fois, suivez la dernière utilisation et révoquez le jeton au besoin. Créer et approuver des jetons exige un forfait payant pour l’espace de travail.
    • Chaque SDK documente aussi l’authentification directe par jeton d’API avec le constructeur de son plan de contrôle. Consultez Se connecter sans mot de passe.
    • Le serveur MCP 0.1.9 recommande un THALOVANT_API_TOKEN limité pour les configurations d’IA et de CI. Son outil d’état de configuration indique le mode d’authentification déclaré. Consultez Serveur MCP.

    Connaissances Source Scout sans restriction, avec protection selon l’âge facultative

    Section intitulée « Connaissances Source Scout sans restriction, avec protection selon l’âge facultative »
    • Source Scout ne limite plus les hubs pour adultes à une liste de sujets autorisés. Il accepte toute question non vide comme dernier repli appuyé sur des sources, une fois que les compétences plus précises ont eu la chance de répondre.
    • Les propriétaires du runtime peuvent protéger explicitement les publics de moins de 13, 16, 18 ou 21 ans. Ce réglage vérifie les questions et les réponses, et bloque la réponse quand une classification protégée ne peut pas aller au bout.
    • Le réglage par défaut, sans restriction, n’appelle pas la classification par âge. Les réponses protégées et sans restriction utilisent des identités de cache distinctes.
    • Source Scout conserve les étiquettes OVOS de langue, d’écriture et de région, et ne se limite pas à l’anglais et au français.
    • Consultez Compétences et Configurer le runtime pour la marche à suivre du propriétaire.

    Mise à l’échelle automatique des hubs selon le forfait

    Section intitulée « Mise à l’échelle automatique des hubs selon le forfait »
    • La création et la modification d’un hub offrent maintenant une capacité Standard ou Autoscaling.
    • Team comprend un hub Autoscaling avec deux instances de travail toujours prêtes, et huit au maximum. Pour Enterprise, la capacité est fixée par contrat, jusqu’à 32 instances de travail par hub.
    • La facturation indique l’utilisation des places Autoscaling et le plafond d’instances de travail enregistré pour chaque hub.
    • Les hubs existants restent en Standard. Autoscaling répond au moyen des compétences installées; les réponses Persona et les réponses générales du LLM ne sont pas offertes dans ce profil.
    • Consultez Créer un hub, Hubs et Facturation et forfaits pour la marche à suivre.
    • Thalovant Voice se reconnecte maintenant automatiquement après un redémarrage normal du hub, une tentative de connexion échouée ou l’expiration d’un ping réseau.
    • Chaque reconnexion crée une nouvelle session chiffrée et continue de vérifier l’identité de hub enregistrée.
    • La reconnexion automatique est offerte sur macOS, Windows et Linux.
    • Les clients déjà jumelés peuvent installer la mise à jour sans créer de nouvelle connexion. Si l’application signale que l’identité du serveur a changé, arrêtez-vous et faites confirmer le changement par le soutien au lieu de contourner l’avertissement.

    Mises à jour de sécurité des dépendances des SDK

    Section intitulée « Mises à jour de sécurité des dépendances des SDK »
    • Le SDK Go v0.3.0 met à jour golang.org/x/net vers sa version corrigée et exige donc Go 1.25 ou plus récent. Il inclut le durcissement de l’allocation des trames binaires de la v0.2.17.
    • Le SDK Rust v0.2.17 retire le chemin de dépendance vulnérable rustls-webpki 0.102 en utilisant le TLS natif du système d’exploitation pour MQTT. HTTPS et WSS restent sur la branche corrigée de Rustls.
    • Ajout du Guide de la bêta privée. Il couvre les attentes en matière de consentement, le premier parcours utile, la mesure respectueuse de la vie privée, le soutien, le retrait, l’exportation et la suppression du compte. Il rappelle aussi de n’utiliser que des données de paiement de test.
    • La participation à la bêta privée est mesurée avec des identifiants aléatoires et des jalons agrégés. Ces mesures n’enregistrent ni noms, ni adresses courriel, ni invites, ni réponses, ni identifiants de connexion, ni données de paiement.
    • Le SDK Go v0.2.16 est offert comme module Go public. Un environnement vierge peut l’installer par le proxy public de modules Go, sans identifiants GitHub ni configuration de module privé.
    • Mise à jour du guide du SDK Go avec la commande d’installation de la version vérifiée et immuable.
    • Ajout de jalons de configuration respectueux de la vie privée, pour mesurer de façon agrégée l’accueil des nouveaux utilisateurs et le temps avant la première valeur. Les invites, les réponses, le contenu de la mémoire, les adresses courriel, les jetons, les identifiants et les secrets sont exclus des métadonnées d’activation.
    • Avant de retirer un compte, sa suppression efface maintenant la télémétrie produit liée, les jalons d’activation, les résumés et exportations d’analytique, et les traces d’audit liées à l’identité.
    • Mise à jour des pages Analytique et Audit avec le comportement visible en matière de confidentialité et de suppression.
    • Ajout de consignes sur le flux d’état : événements de condition versionnés, curseurs de séquence ordonnés, relecture bornée, suppression des doublons et récupération par instantané après une réinitialisation explicite du curseur.
    • Précision : les SDK officiels n’encapsulent pas encore le point de terminaison SSE d’état du plan de contrôle.
    • Un problème d’aperçu dans le navigateur ne change pas la visibilité du hub. Utilisez votre connexion client habituelle tant que l’aperçu n’est pas disponible.
    • Ajout des origines des SDK pour les demandes d’origine de navigateur, les avis aux réviseurs, le relais par courriel et le comportement CORS sans identifiants.
    • Mise à jour des consignes sur les SDK, les points de terminaison, l’identité et le tableau de bord. Les applications de navigateur utilisent des origines approuvées, et les secrets de longue durée restent côté serveur.
    • Simplification de la page d’accueil de la documentation, pour que les nouveaux lecteurs voient d’abord le parcours utile le plus court : apprendre les bases, faire une configuration, connecter un client ou régler un problème visible.
    • Resserrement des pages de première lecture et des pages à forte friction. Les actions verrouillées, les limites, les liens de configuration et la vérification du premier signal de présence (heartbeat) y sont plus faciles à trouver.
    • Mise à jour du guide de style et du gabarit de page pour privilégier une promesse claire, une première action claire et moins de liens concurrents.
    • Ajout de Connecter un client pour le parcours actuel de Connections.
    • Mise à jour des consignes sur les clients pour les liens de configuration à usage unique, Thalovant Voice, les commandes de configuration Linux et la vérification du premier signal de présence.
    • Actualisation du démarrage rapide, de la première configuration réussie, du dépannage, des limites et des pages de sécurité. Les liens de configuration y passent maintenant avant la manipulation manuelle des fichiers.

    Mises à jour des compétences, du runtime, des hubs et de la facturation

    Section intitulée « Mises à jour des compétences, du runtime, des hubs et de la facturation »
    • Ajout de Gérer les mises à jour, la page de référence en langage simple pour les mises à jour des compétences, du runtime et des hubs, et pour les contrôles liés au forfait.
    • Actualisation des pages Runtime, Compétences, Hubs, Tableau de bord, Facturation et Limites connues. Vous pouvez ainsi savoir si une mise à jour relève d’un paquet de compétence, d’une cible de conteneur du runtime, d’une cible de conteneur du hub ou d’une vérification du forfait.
    • Mise à jour du vocabulaire des limites de forfait, pour que la page Billing reste la référence des allocations exactes de l’espace de travail.
    • Ajout de la page Analytique : analytique d’utilisation, signaux de demande, géographie, posture des clients et filtrage détaillé par hub ou par client.
    • Mise à jour des consignes du tableau de bord pour les panneaux actuels Fleet overview, Fleet snapshot, Client activity, d’attention et de mises à jour.
    • Ajout de la page Audit : piste du compte, historique des sessions, actions visibles et dossiers d’historique sûrs à transmettre au soutien.
    • Précision : l’accès payant au Skill Store est indiqué par le forfait, plutôt que fixé dans la documentation.
    • Actualisation des consignes sur le runtime pour les langues principale et secondaires. Les consignes sur la topologie couvrent maintenant le rattrapage différé de l’état après une panne de service étendue.
    • Ajout de la page d’état aux consignes d’aide, de limites, de dépannage, de demande de soutien et de configuration Discord.
    • Mise à jour des modèles de soutien, pour que chacun indique s’il a consulté la page d’état avant de signaler un problème de service étendu.
    • Ajout de la page publique Obtenir de l’aide, avec des modèles de demande de soutien, de signalement de bogue et de demande de fonctionnalité.
    • Ajout de Limites connues, avec une vérification des limites qui commence par le forfait.
    • Ajout de l’Index de dépannage pour passer d’un symptôme visible à la page qui en traite.
    • Ajout de canaux de soutien publics sur Discord et d’un message d’accueil.
    • Ajout d’un texte de transfert au soutien. Il avertit de ne pas partager de jetons, de mots de passe, de clés d’API, de secrets client, de fichiers de connexion, de données privées de clients ni de captures d’écran sensibles.
    Ouvrir Obtenir de l’aide