Devika's system architecture consists of the following key components:
- User Interface: A web-based chat interface for interacting with Devika, viewing project files, and monitoring the agent's state.
- Agent Core: The central component that orchestrates the AI planning, reasoning, and execution process. It communicates with various sub-agents and modules to accomplish tasks.
- Large Language Models: Devika leverages state-of-the-art language models like Claude, GPT-4, and Local LLMs via Ollama for natural language understanding, generation, and reasoning.
- Planning and Reasoning Engine: Responsible for breaking down high-level objectives into actionable steps and making decisions based on the current context.
- Research Module: Utilizes keyword extraction and web browsing capabilities to gather relevant information for the task at hand.
- Code Writing Module: Generates code based on the plan, research findings, and user requirements. Supports multiple programming languages.
- Browser Interaction Module: Enables Devika to navigate websites, extract information, and interact with web elements as needed.
- Knowledge Base: Stores and retrieves project-specific information, code snippets, and learned knowledge for efficient access.
- Database: Persists project data, agent states, and configuration settings.
Read ARCHITECTURE.md for the detailed architecture of Devika. Read UNDER_THE_HOOD.md for the detailed working of Devika.