Anakin AI is an All-in-One Platform for AI Models. Forget about paying complicated bills for all AI Subscriptions, Anakin AI handles it All.
You can test out ANY LLM online, and comparing their output in Real Time!
Devika is an open-source AI software engineer developed by Stition AI that aims to revolutionize the way we build software. This advanced AI system can understand high-level human instructions, break them down into steps, research relevant information, and write code to achieve the given objective. Devika's goal is to provide an intelligent and competitive open-source alternative to Devin, an AI software engineer created by Cognition AI.
Key Features of Devika, the Open Source Alternative to DevIn AI
Devika boasts an impressive array of features that enable it to tackle complex software engineering tasks:
- 🧠 AI planning and reasoning to break down high-level objectives into actionable steps
- 🔍 Contextual keyword extraction to focus on the most relevant information
- 🌐 Seamless web browsing and information gathering to research programming concepts and solutions
- 💻 Code writing capabilities in multiple programming languages
- 📊 Dynamic agent state tracking and visualization to monitor progress
- 💬 Natural language interaction through a user-friendly chat interface
- 📂 Project-based organization and management for efficient workflow
- 🔌 Extensible architecture for adding new features and integrations
System Architecture of Devika
Devika's system architecture consists of several key components that work together to deliver its intelligent programming capabilities:
- Agent Core: Manages conversation history, project context, and agent state updates
- Specialized Agents: Perform specific tasks such as planning, research, coding, debugging, and reporting
- LLM Interface: Communicates with underlying language models through prompt templates
- Service Integrations: Enables interaction with external services like GitHub and Netlify
- Utility Modules: Provide reusable functionality for configuration, logging, code reading, and more
Quick Start to Use Devika As Your AI Programmer
To quickly get started with Devika, follow these steps:
-
Clone the Devika repository:
git clone https://github.com/stitionai/devika.git
-
Install the required dependencies:
cd devika pip install -r requirements.txt
-
Set up the necessary API keys and configuration settings in the
config.toml
file. -
Run the Devika server:
python devika.py
-
Access the Devika web interface by navigating to
http://localhost:3000
in your web browser.
How to Install Devika Locally
To install Devika on your local machine, you'll need to have the following dependencies:
- Python 3.7+
- Node.js 14+
- Bun (JavaScript runtime)
- Git
Once you have the dependencies installed, follow these steps:
-
Clone the Devika repository:
git clone https://github.com/stitionai/devika.git
-
Navigate to the project directory:
cd devika
-
Install the Python dependencies:
pip install -r requirements.txt
-
Install the JavaScript dependencies:
cd ui bun install
-
Set up the necessary API keys and configuration settings in the
config.toml
file.
Getting Started with Devika
To start using Devika, follow these steps:
-
Make sure you have completed the installation process.
-
Run the Devika server:
python devika.py
-
In a separate terminal, start the Devika web interface:
cd ui bun run dev
-
Open your web browser and navigate to
http://localhost:3000
. -
Create a new project by clicking on the "New Project" button and providing a project name.
-
Start interacting with Devika by entering your high-level instructions or questions in the chat interface.
-
Devika will process your input, perform the necessary planning, research, and coding tasks, and provide you with the results.
-
You can view the generated code, project files, and agent state updates in real-time through the web interface.
Configuration of Devika
Devika requires certain configuration settings and API keys to function properly. The configuration file config.toml
contains the following settings:
OPENAI_API_KEY
: Your OpenAI API key for accessing GPT models.GITHUB_ACCESS_TOKEN
: Your GitHub access token for interacting with repositories.NETLIFY_API_KEY
: Your Netlify API key for deploying and managing web projects.PROJECTS_DIR
: The directory where Devika will store project files and data.
Make sure to provide the necessary API keys and adjust the configuration settings according to your environment.
How Devika, the Open Source Alternative to DevIn AI, Works Under The Hood
Devika employs advanced AI techniques and algorithms to achieve its intelligent programming capabilities. Some of the key components and techniques used in Devika include:
-
AI Planning and Reasoning: Devika uses AI planning algorithms to break down high-level objectives into actionable steps. The planning process involves understanding the user's intent, extracting relevant information, and generating a step-by-step plan to achieve the desired outcome.
-
Contextual Keyword Extraction: Devika employs natural language processing techniques to extract relevant keywords and phrases from the user's input and the researched information. These keywords help guide the research process and ensure that the generated code is focused and relevant to the task at hand.
-
Web Browsing and Information Gathering: Devika leverages web browsing capabilities to research programming concepts, libraries, and solutions related to the given task. It can navigate web pages, extract relevant information, and synthesize the gathered knowledge to inform its code generation process.
-
Code Generation: Devika uses advanced language models and code generation techniques to write functional and efficient code in various programming languages. It takes into account the researched information, best practices, and coding conventions to generate clean, readable, and maintainable code.
-
Agent Architecture: Devika's agent-based architecture allows for modular and extensible development. Each specialized agent focuses on a specific aspect of the software engineering process, such as planning, research, coding, debugging, and reporting. The agents work together seamlessly to deliver a comprehensive solution to the user's request.
Devika Open Source Community
Devika is an open-source project, and the community plays a vital role in its development and growth. There are several ways to get involved and contribute to the Devika project:
-
GitHub Issues: If you encounter any bugs, have feature requests, or want to discuss improvements, you can create an issue on the Devika GitHub repository. The maintainers and community members will review and address your concerns.
-
Pull Requests: If you want to contribute code changes, bug fixes, or new features to Devika, you can submit a pull request on GitHub. Make sure to follow the contribution guidelines and provide a clear description of your changes.
-
Discord Server: Join the Devika community on Discord to connect with other developers, ask questions, share ideas, and stay updated with the latest developments. The Discord server is a great place to collaborate and get support from the community.
How You Can Contribute to Devika
Devika welcomes contributions from the open-source community. If you want to contribute to the project, please follow these steps:
-
Fork the Devika repository on GitHub.
-
Create a new branch for your feature or bug fix:
git checkout -b my-feature
-
Make your changes and commit them with descriptive messages:
git commit -m "Add new feature"
-
Push your changes to your forked repository:
git push origin my-feature
-
Open a pull request on the main Devika repository, describing your changes and the motivation behind them.
-
The maintainers will review your pull request, provide feedback, and merge it if it aligns with the project's goals and quality standards.
What is the License of Devika?
Devika is released under the MIT License. You are free to use, modify, and distribute the software in accordance with the terms and conditions of the license.
Conclusion
Devika is an ambitious open-source project that aims to revolutionize software development by providing an intelligent AI software engineer. With its advanced features, modular architecture, and active community, Devika has the potential to streamline the coding process and empower developers to build software more efficiently.
As an open-source alternative to proprietary AI systems like Devin, Devika democratizes access to cutting-edge AI technology and fosters collaboration among developers worldwide. By contributing to the Devika project, you can help shape the future of AI-assisted software engineering and be part of a vibrant community of innovators.
To get started with Devika, visit the GitHub repository, follow the installation instructions, and dive into the world of intelligent programming. Happy coding with Devika!
Anakin AI is an All-in-One Platform for AI Models. Forget about paying complicated bills for all AI Subscriptions, Anakin AI handles it All.
You can test out ANY LLM online, and comparing their output in Real Time!