How evovexai/evoflow works
EvoFlow is a long-running, multi-agent runtime and control plane. Its principal workflow is a user starting a conversation or plan, the runtime coordinating agent work and tools, and progress and results returning through streaming UI or task channels. The README also describes goals, approvals, automation, workspaces and code indexing, knowledge, memory, integrations, and governance. The graph combines documented capabilities with sampled backend relationships; several subsystems are represented at directory level because their implementation was not excerpted.
Main entry points: gateway Gateway API · lead_agent Lead agent · src Desktop interface · collab Agent collaboration
Components 20
User entry
- Desktop interface
evopanel/src - Stream turn engine
evopanel/src/react/lib/stream-turn-engine.ts - IM channels
backend/app/channels
Agent runtime
- Lead agent
backend/packages/harness/evoflow/agents/lead_agent - Goal runtime
backend/packages/harness/evoflow/agents/goal - Agent middleware
backend/packages/harness/evoflow/agents/middlewares
Task execution
- Agent collaboration
backend/packages/harness/evoflow/collab - Unattended task pipeline
backend/app/gateway/unattended_task_pipeline.py - Proactive engine
backend/packages/harness/evoflow/proactive/engine.py - Scheduler
backend/packages/harness/evoflow/scheduler/engine.py
State and knowledge
- Chat sessions
backend/packages/harness/evoflow/persistence/chat_session_service.py - Knowledge pipeline
backend/packages/harness/evoflow/knowledge/owned/pipeline.py - Agent memory
backend/packages/harness/evoflow/agents/memory - Collaboration storage
backend/packages/harness/evoflow/collab/storage.py - Application database
backend/packages/harness/evoflow/persistence/db.py - Data repositories
backend/packages/harness/evoflow/persistence/repositories.py
Control plane
- Gateway API
backend/app/gateway - Governance and observability
backend/app/gateway/routers - Evaluation engine
backend/packages/harness/evoflow/eval/eval_engine.py
Other components
- User
Connections 22
- User → Desktop interface: starts work
- Desktop interface → Gateway API: submits requests
- Gateway API → Chat sessions: manages sessions
- Gateway API → Lead agent: starts agent runs
- Lead agent → Agent middleware: runs through
- Lead agent → Goal runtime: supports goals
- Lead agent → Agent collaboration: delegates tasks
- Unattended task pipeline → Agent collaboration: authorizes dispatch
backend/app/gateway/unattended_task_pipeline.py - Proactive engine → Collaboration storage: reads task state
backend/packages/harness/evoflow/proactive/engine.py - Agent collaboration → Collaboration storage: stores task data
backend/packages/harness/evoflow/collab/storage.py - Collaboration storage → Data repositories: loads task bundles
backend/packages/harness/evoflow/collab/storage.py - Data repositories → Application database: uses SQLite
backend/packages/harness/evoflow/persistence/repositories.py - Lead agent → Knowledge pipeline: retrieves knowledge
- Lead agent → Agent memory: uses memory
- Scheduler → Agent collaboration: coordinates work
- IM channels → Lead agent: dispatches messages
- Gateway API → IM channels: configures integrations
backend/app/channels/services/goal_service.py - Gateway API → Governance and observability: exposes controls
backend/app/gateway/routers/apps.py - Gateway API → Evaluation engine: provides evaluation
- Gateway API → Stream turn engine: streams events
- Stream turn engine → Desktop interface: projects updates
evopanel/src/react/lib/stream-turn-engine.ts - Desktop interface → User: shows results