À propos du projet
Unicity AgentSphere est une plateforme Web3 de portefeuille et d'agents conçue pour le réseau Unicity. Elle combine les fonctionnalités de portefeuille de cryptomonnaie avec la messagerie, les discussions de groupe et les fonctions de marché dans une application unifiée.
Les fonctionnalités principales du portefeuille incluent des transferts de jetons rapides et à faible coût, la gestion des jetons et le suivi des soldes, les notifications de paiement entrant, et un système d'étiquettes pour l'identification des utilisateurs. Le portefeuille prend en charge les codes QR, le changement de portefeuille, la gestion des phrases de récupération, et les données de marché en temps réel.
La plateforme implémente le protocole Sphere Connect, qui permet aux dApps externes de se connecter au portefeuille et de demander des opérations. Deux modes de connexion sont pris en charge : le mode iframe, où la dApp est intégrée dans Sphere et communique via PostMessageTransport, et le mode popup, où la dApp ouvre Sphere comme une fenêtre contextuelle pour l'approbation de l'utilisateur. L'accès est basé sur des permissions, les dApps demandant des portées spécifiques que les utilisateurs peuvent approuver ou rejeter. Le protocole prend également en charge la gestion des intentions, permettant aux dApps de déclencher des flux d'envoi, de signature et de messages directs dans l'interface du portefeuille.
Sphere prend en charge un protocole de liens profonds personnalisé (unicity-connect://) pour les liens inter-applications dans les messages directs. Lorsqu'une dApp envoie une URL de lien profond dans un message direct, Sphere l'affiche comme un bouton interactif avec des options pour ouvrir le lien dans Sphere en tant qu'agent iframe ou dans un onglet de navigateur externe. Le protocole est résolu en URLs HTTP/HTTPS standard, avec un traitement spécial pour les adresses localhost.
Le système d'agents permet de charger des interfaces spécialisées comme onglets dans l'application. Les agents actuellement actifs incluent Messages (DM) pour les conversations privées via Nostr, Discussion de groupe pour les canaux publics via NIP-29, et Agents Sphere pour charger toute dApp externe via iframe avec une URL personnalisée. Des types d'agents supplémentaires peuvent être ajoutés via la configuration.
La fonctionnalité de discussion de groupe est basée sur NIP-29, une spécification de protocole Nostr pour la messagerie de groupe basée sur des relais. Les fonctionnalités incluent des groupes publics et privés avec des codes d'invitation, la messagerie en temps réel via WebSocket, la découverte de groupes, les opérations de rejoindre/quitter, et le suivi des messages non lus. Un relais dédié est disponible à wss://sphere-relay.unicity.network.
L'application est construite avec React 19 et TypeScript, utilisant Vite 7 comme outil de construction. Elle exploite TanStack Query v5 pour la gestion d'état côté serveur, Tailwind CSS 4 pour le style, Framer Motion pour les animations, et React Router DOM v7 pour le routage. Toutes les opérations de portefeuille sont gérées via le paquet @unicitylabs/sphere-sdk, qui couvre les fonctionnalités L3, Nostr et IPFS. Les tests sont effectués avec Vitest et jsdom.
Le projet peut être exécuté en mode développement avec npm run dev, construit pour la production avec npm run build, et déployé via Docker Compose sur le port 3010. Les variables d'environnement contrôlent la configuration telle que l'étiquette de bienvenue de l'agent, le délai de bienvenue, les certificats SSL, et le chemin de base de déploiement.
Le projet est sous licence privée par Unicity Labs.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.