# Struktura repozytorium #sympozium #kod ## Layout ``` sympozium/ ├── api/v1alpha1/ # Definicje typów CRD (Go) ├── cmd/ # Binaria │ ├── agent-runner/ # Agent w podzie (LLM loop + tool execution) │ ├── controller/ # Controller manager (wszystkie reconcilery) │ ├── apiserver/ # HTTP + WebSocket API server │ ├── ipc-bridge/ # IPC bridge sidecar (fsnotify → NATS) │ ├── memory-server/ # Memory sidecar (SQLite + FTS5) │ ├── web-proxy/ # Web proxy (OpenAI-compat + MCP gateway) │ ├── webhook/ # Admission webhook │ ├── node-probe/ # DaemonSet odkrywający inference providers │ └── sympozium/ # CLI + TUI (Bubble Tea) ├── web/ # Web dashboard (React + TypeScript + Vite) ├── channels/ # Implementacje kanałów │ ├── telegram/ │ ├── slack/ │ ├── discord/ │ └── whatsapp/ ├── internal/ # Pakiety wewnętrzne │ ├── controller/ # 6 reconcilerów + routery │ ├── orchestrator/ # PodBuilder & Spawner │ ├── apiserver/ # Handlery API │ ├── mcpbridge/ # MCP bridge sidecar │ ├── eventbus/ # NATS JetStream │ ├── ipc/ # IPC bridge │ ├── webhook/ # Enforcement polityk │ ├── webproxy/ # OpenAI proxy + MCP + rate limiting │ ├── session/ # Sesje (PostgreSQL) │ └── channel/ # Bazowe typy kanałów ├── config/ # Manifesty K8s │ ├── crd/bases/ # Wygenerowane CRD YAML │ ├── personas/ # Wbudowane PersonaPacks │ ├── skills/ # Wbudowane SkillPacks │ ├── policies/ # Presety SympoziumPolicy │ └── samples/ # Przykładowe CR ├── charts/sympozium/ # Helm chart ├── migrations/ # Migracje PostgreSQL ├── test/integration/ # Testy integracyjne (shell) ├── docs/ # Dokumentacja └── images/ # Dockerfiles ``` ## Kluczowe pliki | Plik | Rola | |------|------| | `api/v1alpha1/*_types.go` | Definicje wszystkich CRD | | `internal/controller/agentrun_controller.go` | Serce systemu - reconciliation AgentRun → Job/Sandbox | | `internal/controller/sympoziuminstance_controller.go` | Zarządzanie instancjami, kanałami, memory | | `internal/orchestrator/podbuilder.go` | Budowanie spec'ów podów agentów | | `cmd/agent-runner/tools.go` | 7 wbudowanych narzędzi agenta | | `internal/eventbus/types.go` | Definicje tematów NATS | ## Komponenty jako kontenery | Komponent | Obraz | Rola | |-----------|-------|------| | `controller` | Controller manager | Reconciluje wszystkie CRD | | `apiserver` | API server | HTTP + WebSocket + embedded web UI | | `agent-runner` | Agent | LLM provider agnostic runner | | `ipc-bridge` | Sidecar | fsnotify → NATS bridge | | `mcp-bridge` | Sidecar | MCP protocol translator | | `memory-server` | Sidecar/Deployment | SQLite + FTS5 | | `web-proxy` | Web proxy | OpenAI-compat API | | `webhook` | Admission webhook | Policy enforcement | | `node-probe` | DaemonSet | Inference discovery | | `channel-*` | Channel pods | Telegram, Slack, Discord, WhatsApp | --- Powiązane: [[Czym jest Sympozium]] | [[Control Plane]]