How johnivanov092-glitch/elira_ai works
Elira AI is a self-hosted AI workspace: people use a React interface in a browser or Tauri desktop shell, which communicates with a local FastAPI backend. The main interaction is submitting a chat or project task, having backend runtimes route it through model inference and available tools, then returning a response or streamed run events. Separate capabilities cover workflows and approvals, memory, web research, media and voice, and local project operations. The README documents these broader features; sampled excerpts establish only selected entry points and runtime wiring, so uncertain internal links are omitted.
Main entry points: main.py FastAPI app · agent_loop.py Code-agent loop · openai_compatible.py Local model client · App.tsx React workspace
Components 20
Workspace clients
- React workspace
frontend/src/App.tsx - API client
frontend/src/api/client.ts - Tauri shell
src-tauri/src/main.rs
Backend API
- FastAPI app
backend/app/main.py - Chat routes
backend/app/api/routes/chat_agent.py - Code-agent routes
backend/app/api/routes/code_agent_routes.py - Workflow routes
backend/app/api/routes/workflow_routes.py
Agent runtime
- Chat runtime
backend/app/application/chat/runtime.py - Code-agent loop
backend/app/application/code_agent/agent_loop.py - Tool executor
backend/app/application/agent_kernel/executor.py - Tool registry
backend/app/application/tool_registry/runtime.py
Workspace capabilities
- Workflow engine
backend/app/application/workflows/runtime.py - Web search
backend/app/application/web_search/runtime.py - Memory services
backend/app/application/memory/service.py - Media processing
backend/app/application/media/processing.py - Knowledge library
backend/app/application/library/runtime.py
State and providers
- SQLite state
backend/app/infrastructure/db/connection.py - Local model client
backend/app/infrastructure/llm/openai_compatible.py
Other components
- Workspace user
- Inference server
Connections 18
- Workspace user → React workspace: uses
- React workspace → API client: requests
- API client → FastAPI app: HTTP API
- Tauri shell → FastAPI app: starts backend
- FastAPI app → Chat routes: mounts routes
- FastAPI app → Code-agent routes: mounts routes
- FastAPI app → Workflow routes: mounts routes
- Chat routes → Chat runtime: dispatches
- Code-agent routes → Code-agent loop: starts and streams
- Workflow routes → Workflow engine: dispatches
- Code-agent loop → Tool executor: executes tools
- Tool executor → Tool registry: resolves tools
- Chat runtime → Local model client: requests inference
- Code-agent loop → Local model client: requests inference
- Local model client → Inference server: OpenAI-compatible API
- Workflow engine → SQLite state: persists runs
- Memory services → SQLite state: stores memory
- Web search → Inference server