# Sympozium vs kagent #sympozium #porównanie #kagent ## Fundamentalna różnica | | Sympozium | kagent | |---|-----------|--------| | **Model wykonania** | Ephemeral Pod (Job) per run | Persistent engine process | | **Optymalizuje dla** | Izolacja, bezpieczeństwo, auditability | Niska latencja, konwersacja | ## Szczegółowe porównanie | Wymiar | Sympozium | kagent | |--------|-----------|--------| | **Agent runtime** | Ephemeral Pod (K8s Job) | Long-running engine (Python/Go ADK) | | **Tool isolation** | Sidecar per skill + ephemeral RBAC | In-process (MCP client w engine) | | **Kernel sandbox** | gVisor/Kata via agent-sandbox + warm pools | Brak | | **Multi-tenancy** | Namespace-per-tenant, per-instance RBAC, webhooks | Namespace-scoped CRDs | | **Agent packaging** | PersonaPacks (bundle personas+skills+schedules+memory) | Individual Agent CRDs | | **Persistent memory** | SQLite + FTS5 na PVC | Vector-backed (in-engine) | | **Channels** | Telegram, Slack, Discord, WhatsApp (dedykowane Deployments + NATS) | Slack, Discord (in-engine) | | **Scheduled runs** | SympoziumSchedule CRD + concurrency policies | Brak | | **MCP** | MCPServer CRD + auto-discovery + tool filtering + managed deploy | MCP tools as CRDs | | **Human-in-the-loop** | SympoziumPolicy CRD (admission-time) | Tool-level approve/reject w UI | ## Analiza: Tool Isolation **To najważniejsza różnica z perspektywy bezpieczeństwa.** ### kagent (in-process): ``` Engine process (z credentials) ↓ Tool call: kubectl get pods ↓ Wykonanie w tym samym procesie z tymi samymi credentials ``` Jeśli LLM "przekona" engine do złośliwego tool call → pełne uprawnienia engine'a. ### Sympozium (sidecar): ``` Agent container (BEZ credentials K8s) ↓ Tool call: kubectl get pods ↓ /ipc/tools/cmd.json → IPC Bridge → NATS → Skill Sidecar ↓ Sidecar (z scoped, ephemeral RBAC: ONLY get pods) ``` Agent nigdy nie ma bezpośrednich credentials. Sidecar ma minimum wymaganych uprawnień. ## Kiedy który? ### Wybierz Sympozium gdy: - Agenty wykonują cluster-admin operations (kubectl, helm, scaling) - Multi-tenant environment (wiele zespołów, jeden klaster) - Scheduled, unattended runs (nocne sweepy, triage alertów) - Kanały poza Slack/Discord (Telegram, WhatsApp) - Kernel-level sandboxing (untrusted agent code) - Auditability i compliance requirements ### Wybierz kagent gdy: - Low-latency conversational agents (brak cold-start) - Google ADK, CrewAI, LangGraph integration - Single-tenant experimentation - A2A (Agent-to-Agent) protocol support - Lżejszy setup ## Trade-off spectrum ``` Szybkość odpowiedzi ←─────────────────────────→ Izolacja/Bezpieczeństwo kagent Sympozium (persistent engine, (ephemeral pods, fast responses, strong isolation, shared process) per-run RBAC) ``` --- Powiązane: [[Model efemerycznych agentów]] | [[Skill Sidecars i auto-RBAC]] | [[Agent Sandbox - gVisor i Kata]]