Skip to main content

Overview

Sirji is a framework for creating and running custom AI agents to help developers with their daily tasks.

Implemented as a VS Code extension, Sirji offers an interactive chat interface within the IDE, utilizing features like the Editor, Terminal, and Project Explorer.

Sirji is an open-source project. Check out the GitHub repository here.

What is a Custom Agent?

A Custom Agent is a modular AI component that performs specific tasks based on predefined pseudocode.

Pseudocode is written in plain English. It reflects a developer's understanding of the repository's architecture, design patterns, and conventions. Pseudocode helps Sirji execute tasks as instructed.

For more information on creating custom agents, visit here.

Who is Sirji for?

Sirji is greatly beneficial for teams having existing repositories and problems that are similar in nature.

For instance:

  1. If a team frequently adds new APIs to one or more backend repositories with a similar framework, a custom agent can handle this task across different repositories.
  2. If a team frequently adds test cases for multiple backend APIs, a custom agent can handle this task accross different APIs.

So Sirji is for teams that understand their repository well and can write custom agents for their specific use cases.

For example, writing a new API in a backend repository with a predefined framework requires listing the steps needed to update different files (example: validation, configs, service, formatters, etc). This pseudocode can be reused for similar tasks, saving development time.

Sirji is unlike GitHub Copilot that works right out of the box but generates code that doesn’t follow your coding conventions and lacks domain context. Instead, Sirji is for teams that are willing to put in the initial effort of explaining their problem-solving approach and writing a custom agent.

How have we used Sirji?

We used Sirji to develop in an existing repository with backend REST APIs in Node.js. We wrote custom agents for tasks, including:

  • Generating sequence diagrams, DBML files, and OpenAPI specs for backend APIs.
  • Writing new APIs in Node.js backend repositories.
  • Writing test cases for APIs in backend repositories.

We invite the community to write their own custom agents for their repositories.