Sirji is an Open Source AI Software Development Agent. Built with ❤️ by True Sparrow
SirjiSirji is a Visual Studio Code extension that works as an AI software development agent. It is a virtual software developer that includes individual agents for planning, coding, researching, and executing projects. Sirji solves users’ problem statements ranging from a new greenfield project to an existing brownfield project where it enhances existing code, fixes bugs, and writes test cases. The extension leverages the capabilities of VS Code, including the Editor, Terminal, and Project Explorer. It provides an interactive chat interface through which users submit their problem statements, answer questions, and provide feedback to Sirji. Additionally and most importantly, Sirji sets up your local development environment by installing system-level packages as well as programming language-specific dependencies. It later executes the generated code in your local development environment. Demo Video
Watch on YouTube: https://www.youtube.com/watch?v=DC_gmz04Ovs PrerequisitesSirji has been tested on macOS only for now. We know there are certain OS-specific functionalities that we will soon generalize. Make sure you have installed all of the following prerequisites on your machine:
Also, you will need an OpenAI API key to access the GPT-4 Turbo model. InstallationYou can start using Sirji by installing this extension from the Visual Studio Marketplace. ArchitectureSirji gets the work done using it's following agents:
Architecture DiagramPyPI PackagesThe Planning Agent, Coding Agent, and Research Agent are developed within the Python package Communication among these agents is facilitated through a defined message protocol. The Message Factory (responsible for creating, reading, updating, and deleting messages according to the message protocol) and the permissions matrix are developed in the Python package The tools for crawling URLs (converting them into markdowns), searching for terms on Google, and a custom logger are developed within the Python package All these packages are invoked by Python Adapter Scripts, which are spawned by the extension. ContributingWe welcome contributions to Sirji! If you're interested in helping improve this VS Code extension, please take a look at our Contributing Guidelines for more information on how to get started. Thank you for considering contributing to Sirji. We look forward to your contributions! Reporting IssuesIf you run into any issues or have suggestions, please report them by following our issue reporting guidelines. Your reports help us make Sirji better for everyone. Stay In TouchLicenseDistributed under the MIT License. See |