এই পাতাটি চীনা মূল থেকে অনূদিত। দুটির মধ্যে অমিল হলে মূল পাঠই প্রামাণ্য।

Confer — সিস্টেম আর্কিটেকচার

এই নথি লক্ষ্য আর্কিটেকচার বর্ণনা করে, বর্তমান বাস্তবায়ন নয়। এখনকার gateway এক প্রসেস, এক ইনস্ট্যান্স: WebSocket সংযোগের তালিকা, A2A রিপ্লে-সুরক্ষার nonce আর হার-সীমার কাউন্টার — সবই gateway প্রসেসের স্মৃতিতে থাকে (ws/handler.ts, lib/nonce-cache.ts, middleware/rate-limit.ts)।

তাই gateway-এর দ্বিতীয় রেপ্লিকা চালানো যায় না। রেপ্লিকা যোগ করলেই A2A রিপ্লে-সুরক্ষা নিঃশব্দে ভেঙে পড়ে — পুনরাবৃত্ত অনুরোধ অন্য রেপ্লিকায় গিয়ে পড়ে, যেখানে nonce তালিকা ফাঁকা, আর সোজা ছাড়পত্র পেয়ে যায়। পাশাপাশি WS বিজ্ঞপ্তি সেই ব্যবহারকারীদের কাছে পৌঁছায় না যাঁরা অন্য রেপ্লিকায় যুক্ত, আর হার-সীমার থ্রেশহোল্ড রেপ্লিকার সংখ্যা দিয়ে গুণ হয়ে যায়।

নিচে যে NATS / Redis-এর কথা আছে, সেগুলো অনুভূমিক সম্প্রসারণের জন্য ভাবা পরিকল্পনা; আজ সেগুলো মোতায়েনও নেই, কোথাও যুক্তও নেই (২০২৬-০৮-০৭-এ docker-compose*.yml ও env.ts থেকে সরানো হয়েছে; তার আগে সেগুলো ছিল খালি ঘোরা কনটেইনার আর এমন একটি এনভায়রনমেন্ট ভেরিয়েবল যা কেউ কখনও পড়েনি)। সত্যিই অনুভূমিকভাবে বাড়াতে হলে আগে এই তিনটি প্রসেস-স্মৃতির অবস্থা একটি ভাগাভাগি করা স্টোরে সরাতে হবে — সবার আগে nonce, কারণ সেটাই নিরাপত্তার দিক থেকে সংকটজনক।

উচ্চ স্তরের আর্কিটেকচার

┌────────────────────────────────────────────────────────────┐
│  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)

নকশার নীতি

সেবার সীমানা

১. Edge API Gateway

দেখুন docs/05-api.md।

২. Agent Runtime

প্রত্যেক ব্যবহারকারীর জন্য একটি স্থায়ী Agent ইনস্ট্যান্স।

৩. Conversation Hub

৪. Identity & A2A Gateway

প্রোটোকলের বিস্তারিত নকশা আছে docs/03-protocol.md-এ।

৫. MCP / Tools Connector

ডেটা স্তর

উপাদান কীসের জন্য অবস্থা
PostgreSQL ব্যবহারকারী, Agent, কথোপকথন, বার্তা, অনুমতি, peer সম্পর্ক (প্রধান ভাণ্ডার) ✅ ব্যবহৃত
Qdrant Agent-এর দীর্ঘমেয়াদি স্মৃতির RAG, ব্যবহারকারীর জ্ঞানভাণ্ডারের সূচক ✅ ব্যবহৃত
S3-সঙ্গত (MinIO) জ্ঞানভাণ্ডারের ফাইল সংরক্ষণ ✅ ব্যবহৃত
Redis সেশন, উপস্থিতি, সীমার কাউন্টার, গরম তথ্যের ক্যাশ ⬜ মোতায়েন নয়; কেবল অনুভূমিক সম্প্রসারণে দরকার
NATS Streams বার্তা বিতরণ (user.{uid}.events) + Agent Runtime-এর কাজের সারি ⬜ মোতায়েন নয়; কেবল অনুভূমিক সম্প্রসারণে দরকার

ক্লায়েন্ট আর্কিটেকচার

বহু-প্ল্যাটফর্ম বিস্তার

প্ল্যাটফর্ম যার মাধ্যমে
iOS Tauri 2.0-এর iOS সমর্থন
Android Tauri 2.0-এর Android সমর্থন
Windows Tauri 2.0
macOS Tauri 2.0
Linux Tauri 2.0

একটিই কোডবেস, কোনো নেটিভ বিকল্প নেই।

Claude Code প্লাগইন

দেখুন docs/06-claude-code-plugin.md।

মোতায়েন আর্কিটেকচার

একক ইনস্ট্যান্স (ব্যক্তি / ছোট দল)

আসল docker-compose.prod.yml (agent-runtime ও identity gateway-এর ভেতরের লাইব্রেরি, আলাদা সেবা নয়):

  - gateway   (Bun সেবা, একক রেপ্লিকা — উপরের নোট দেখুন)
  - client    (nginx-এর পরিবেশিত ফ্রন্টএন্ড)
  - migrate   (একবারের কাজ)
  - postgres
  - qdrant
  - minio

মোতায়েন: docker compose -f docker-compose.prod.yml up -d চালালেই কাজ শুরু।

প্রতিষ্ঠানের ইনস্ট্যান্স

ক্লাউড (Confer-এর নিজের ক্লাউড)

পূর্বশর্ত: gateway এখন একক রেপ্লিকা (অবস্থা প্রসেসের ভেতরে)। একাধিক করার আগে WS সংযোগ তালিকা, A2A nonce ও সীমার কাউন্টার ভাগাভাগি করা স্টোরে সরাতে হবে, নইলে রিপ্লে-সুরক্ষা নিঃশব্দে অকেজো হয়ে যাবে।

ফেডারেশন (ইনস্ট্যান্সের মধ্যে)

Confer-এর যেকোনো ইনস্ট্যান্স — নিজে হোস্ট করা হোক বা ক্লাউডের — A2A প্রোটোকলে অন্য ইনস্ট্যান্সের সঙ্গে যোগাযোগ করতে পারে।

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

পরিচয় ও আবিষ্কার:

পর্যবেক্ষণযোগ্যতা

নিরাপত্তার সীমানা

মূল প্রযুক্তিগত সিদ্ধান্ত

সিদ্ধান্ত বাছাই বিকল্প কারণ
ব্যাকএন্ডের ভাষা Bun + TypeScript Go MCP/A2A-র SDK আগে TS-এর জন্য বানানো; পুরো স্ট্যাকে টাইপ ভাগাভাগি
ওয়েব ফ্রেমওয়ার্ক Hono Elysia, Fastify হালকা, দ্রুত, স্থিতিশীল বাস্তুতন্ত্র
ক্লায়েন্ট Tauri 2.0 Flutter, Electron এক কোডবেসে পাঁচ প্ল্যাটফর্ম, Rust-এর নিরাপত্তা, ছোট আকার
প্রধান ভাণ্ডার PostgreSQL 18 MySQL JSON-এর ভালো সমর্থন, বহু বিস্তারযোগ্য, চাইলে pgvector
বার্তা বাস NATS Kafka, Redis Pub/Sub হালকা, স্থায়িত্বসহ, নির্ভুল সাবস্ক্রিপশন
ভেক্টর ভাণ্ডার Qdrant Pinecone, pgvector নিজে হোস্ট করায় পরিণত, Rust-এ লেখা, স্থিতিশীল কর্মক্ষমতা
পরিচয় DID:web DID:key, শুধু OAuth বিদ্যমান ওয়েব অবকাঠামোর সঙ্গে সঙ্গতিপূর্ণ, NANDA-র সুপারিশ
প্রোটোকল A2A + MCP + AgentFacts নিজস্ব প্রোটোকল আমরা উন্মুক্ত প্রোটোকলের বাস্তুতন্ত্রে বাজি ধরছি
← Confer-এ ফিরে যান A2A · DID:web · RFC 9421 · NANDA