MyBotBoxMyBotBox

@yarlisai Framework

@yarlisai/* 框架是一套为 MyBotBox 提供支持的 npm 包。每个包都遵循端口/适配器契约,使消费者依赖稳定的接口,而非特定厂商的 SDK。

这些包位于公共 monorepo 的 packages/ 目录下。mybotbox-platform 本身是参考消费者 —— 查看 apps/sat/lib 了解每个功能是如何与端口进行连接的。

包含内容

  • @yarlisai/core — 共享基础类型 —— 环境变量助手、日志记录器、流式类型、追踪类型。
  • @yarlisai/ai — 统一 LLM 端口 —— OpenAI、Anthropic、Bedrock、Gemini 及 12 个以上的提供商适配器。
  • @yarlisai/agents — Agent 处理器注册表 —— react、planner、reflection、research、evaluator 等。
  • @yarlisai/email — 电子邮件发送与验证。支持 Resend + SendGrid + Azure ACS 适配器。
  • @yarlisai/cacheCacheProvider 端口 + 内存 + 带 TTL 的 Redis 适配器。
  • @yarlisai/queueQueueProvider 端口 + cloud-tasks + 内存适配器。
  • @yarlisai/storageStorageProvider 端口 + GCS + S3 + 内存适配器。
  • @yarlisai/security — CSP 构建器、速率限制中间件、RBAC、防 SSRF 的 fetch。
  • @yarlisai/billingBillingProvider 端口 + Stripe + Paddle 适配器。
  • @yarlisai/audit — 审计日志 —— 防篡改的安全相关事件只写日志。
  • @yarlisai/brand — 多品牌 schema(图标、Logo、OG、邮件、打印)+ 同步 CLI。
  • @yarlisai/otel — OpenTelemetry 可观测性 —— OTLP + Sentry + noop 适配器。
  • @yarlisai/sandbox — 可插拔代码执行沙箱 —— worker-threads + 内存适配器。
  • @yarlisai/triggers-core — 通用触发器基础类型 —— 轮询节奏、OAuth 状态、密钥加密。
  • @yarlisai/workflow-validation — 纯 DAG 验证器 —— 块引用 + 拓扑检查。
  • @yarlisai/auth — 认证端口 —— Firebase + JWT 适配器。
  • @yarlisai/secrets — 可插拔密钥管理 —— GCP Secret Manager + 带 TTL 缓存的内存适配器。
  • @yarlisai/test-utils — 共享端口一致性测试运行器 + 用于测试的录制适配器。
  • @yarlisai/platform — 元包 —— 重新导出所有框架包,支持一行安装。
  • @yarlisai/cli — 用于脚手架和开发工作流的 CLI 工具。
  • @yarlisai/cicd — CI/CD 助手 —— 工作流脚手架、部署门控、变更日志生成器。
  • @yarlisai/create-app — 一键引导 —— bun x @yarlisai/create-app 快速搭建新产品脚手架。

为什么选择端口/适配器

  • 更快的开发速度 —— 一次构建,跨多个应用和产品复用
  • 一致性 —— 共享的 UI、认证、日志、API 客户端、验证在任何地方表现一致
  • 更低的维护成本 —— 只需在包中修复一次 bug,而无需在每个消费者中逐一修复
  • 可扩展性 —— 新产品在相同的基础上快速启动
  • 质量 —— 包随附自身的测试、版本管理和 CI/CD
  • 商业化 —— 内部包日后可以成为开源工具、SDK 或付费开发者工具
  • 供应商可移植性 —— 适配器将云/提供商特定逻辑隔离在可复用接口之后