MyBotBoxMyBotBox

@yarlisai Framework

Le framework @yarlisai/* est un ensemble de packages npm qui alimentent MyBotBox. Chaque package suit le contrat port/adapter afin que les consommateurs dépendent d'interfaces stables, et non de SDK fournisseurs.

Ces packages se trouvent dans packages/ dans le monorepo public. mybotbox-platform lui-même est le consommateur de référence — consultez apps/sat/lib pour voir comment chaque fonctionnalité est connectée à un port.

Contenu

  • @yarlisai/core — Primitives partagées — helpers d'environnement, logger, types de streaming, types de traces.
  • @yarlisai/ai — Port LLM unifié — OpenAI, Anthropic, Bedrock, Gemini, et 12 autres adaptateurs de fournisseurs.
  • @yarlisai/agents — Registre de gestionnaires d'agents — react, planner, reflection, research, evaluator, et plus.
  • @yarlisai/email — Envoi et validation d'e-mails. Adaptateurs Resend + SendGrid + Azure ACS.
  • @yarlisai/cache — Port CacheProvider + adaptateurs mémoire + redis avec TTL.
  • @yarlisai/queue — Port QueueProvider + adaptateurs cloud-tasks + mémoire.
  • @yarlisai/storage — Port StorageProvider + adaptateurs GCS + S3 + mémoire.
  • @yarlisai/security — Constructeur CSP, middleware de limitation de débit, RBAC, fetch sécurisé contre SSRF.
  • @yarlisai/billing — Port BillingProvider + adaptateurs Stripe + Paddle.
  • @yarlisai/audit — Journalisation d'audit — journal en écriture seule et inviolable des événements liés à la sécurité.
  • @yarlisai/brand — Schéma multi-marque (icône, logo, og, e-mail, impression) + CLI de synchronisation.
  • @yarlisai/otel — Observabilité OpenTelemetry — adaptateurs OTLP + Sentry + noop.
  • @yarlisai/sandbox — Bac à sable d'exécution de code modulaire — adaptateurs worker-threads + mémoire.
  • @yarlisai/triggers-core — Primitives de déclencheurs génériques — cadence de sondage, état OAuth, chiffrement de secrets.
  • @yarlisai/workflow-validation — Validateurs DAG purs — vérifications des références de blocs et de la topologie.
  • @yarlisai/auth — Port d'authentification — adaptateurs Firebase + JWT.
  • @yarlisai/secrets — Secrets modulaires — adaptateurs GCP Secret Manager + mémoire avec cache TTL.
  • @yarlisai/test-utils — Exécuteurs de conformité de port partagés + adaptateurs d'enregistrement pour les tests.
  • @yarlisai/platform — Méta-package — réexporte tous les packages du framework pour une installation en une ligne.
  • @yarlisai/cli — Outils CLI pour la génération de code et les workflows de développement.
  • @yarlisai/cicd — Helpers CI/CD — génération de workflows, portes de déploiement, générateurs de journaux de modifications.
  • @yarlisai/create-app — Bootstrap en une commande — bun x @yarlisai/create-app génère un nouveau produit.

Pourquoi le pattern port/adapter

  • Développement plus rapide — construire une fois, réutiliser dans plusieurs applications et produits
  • Cohérence — l'interface utilisateur, l'authentification, la journalisation, les clients API et la validation partagés se comportent de la même façon partout
  • Maintenance réduite — corriger un bug une seule fois dans le package plutôt que chez chaque consommateur
  • Évolutivité — les nouveaux produits sont lancés sur la même base
  • Qualité — les packages sont livrés avec leurs propres tests, versionnage et CI/CD
  • Monétisation — les packages internes peuvent ultérieurement devenir des outils open source, des SDK ou des outils de développement payants
  • Portabilité fournisseur — les adaptateurs isolent la logique spécifique au cloud/fournisseur derrière des interfaces réutilisables