Confer — 系统架构

高层架构

┌────────────────────────────────────────────────────────────┐
│  Clients (Tauri 2.0)                                       │
│  iOS · Android · Windows · macOS · Linux                   │
└──────────────────────────┬─────────────────────────────────┘
                           │ WSS / HTTPS / SSE
                           ▼
┌────────────────────────────────────────────────────────────┐
│  Edge API Gateway  (Bun + Hono)                            │
│  Auth · Rate limit · Routing · WS fan-out                  │
└─────┬─────────────┬─────────────────┬────────────────┬─────┘
      │             │                 │                │
      ▼             ▼                 ▼                ▼
 ┌────────┐  ┌─────────────┐  ┌────────────┐  ┌──────────────┐
 │ Agent  │  │Conversation │  │ Identity & │  │ MCP / Tools  │
 │Runtime │  │     Hub     │  │A2A Gateway │  │  Connector   │
 └───┬────┘  └──────┬──────┘  └─────┬──────┘  └──────┬───────┘
     │              │               │                │
     ▼              ▼               ▼                ▼
┌──────────────────────────────────────────────────────────────┐
│  Data layer: PostgreSQL · Redis · NATS · Vector (Qdrant)·S3 │
└──────────────────────────────────────────────────────────────┘
       │                              │
       ▼                              ▼
 LLM providers              Other instances' Agents
 (Claude / GPT /            (federation via A2A
  DeepSeek / Qwen)           over HTTPS)

设计原则

服务边界

1. Edge API Gateway

参考 docs/05-api.md

2. Agent Runtime

每个用户对应一个常驻 Agent 实例。

3. Conversation Hub

4. Identity & A2A Gateway

详细协议设计参考 docs/03-protocol.md

5. MCP / Tools Connector

数据层

组件 用途
PostgreSQL 用户、Agent、对话、消息、权限、peer 关系(主存储)
Redis session、presence、限流计数、热数据缓存
NATS Streams 消息扇出(user.{uid}.events)+ Agent runtime 任务队列
Qdrant 或 pgvector Agent 长期记忆 RAG、用户资料库索引
S3-compatible (MinIO) 文件附件、DID document 备份、对话归档

客户端架构

跨平台覆盖

平台 通过
iOS Tauri 2.0 iOS support
Android Tauri 2.0 Android support
Windows Tauri 2.0
macOS Tauri 2.0
Linux Tauri 2.0

单一代码库,无原生 fallback。

Claude Code 插件

参考 docs/06-claude-code-plugin.md

部署架构

单实例(个人/小团队)

docker-compose.yml:
  - gateway       (Bun 服务)
  - agent-runtime (Bun 服务)
  - conversation  (Bun 服务)
  - identity      (Bun 服务)
  - postgres
  - redis
  - nats
  - qdrant
  - minio
  - caddy / traefik  (反向代理 + TLS)

部署方式:docker compose up -d 起来就能用。

企业实例

云端(Confer 自家云)

联邦化(跨实例)

任何一个 Confer 实例(自建或云端)都可以通过 A2A 协议和其他实例互通。

[acme.com]              [vendor-x.com]            [confer.cloud]
 Agent A    <─── A2A ───> Agent B    <─── A2A ───> Agent C

身份和发现:

可观测性

安全边界

关键技术决策

决策 选择 备选 理由
后端语言 Bun + TypeScript Go MCP/A2A SDK 是 TS-first;全栈类型共享
Web 框架 Hono Elysia, Fastify 轻、快、生态稳
客户端 Tauri 2.0 Flutter, Electron 单代码库 5 平台,Rust 安全,体积小
主存储 PostgreSQL 16 MySQL JSON 支持好,扩展性强,pgvector 可选
消息总线 NATS Kafka, Redis Pub/Sub 轻、持久化、精确订阅
向量库 Qdrant Pinecone, pgvector 自托管成熟、Rust 写的性能稳
身份 DID:web DID:key, OAuth-only 与 web 基建兼容,NANDA 推荐
协议 A2A + MCP + AgentFacts 自有协议 押注开放协议生态
← Back to Confer A2A · DID:web · RFC 9421 · NANDA