This extension brings a native Spec-Driven Development (SDD) workflow to the Gemini CLI, inspired by the methodology of building software from a detailed specification.
This extension provides a structured workflow for developing software based on a specification. It guides you through initializing a project, defining principles, creating a specification, planning the implementation, breaking it down into tasks, and finally, implementing those tasks with AI assistance.
- Gemini CLI
- Node.js (v16 or higher)
- npm (v8 or higher)
To install the Spec-Driven Development extension from the Git repository, use the following command:
gemini extension install https://github.com/rishops/sddAfter building the extension, you can install it from your local directory:
gemini extension install .The SDD workflow is composed of a series of commands that guide you through the development process:
-
Scaffold a new project: Use the
/scaffoldcommand to create a new SDD project. This will create a new directory with the project name and scaffold the necessary files./scaffold <project-name>
-
Define the principles: Use the
/principalscommand to open theGEMINI.mdfile. This file is for defining the core principles and development workflow of your project./principals
-
Define the specification: Use the
/specifycommand to open theSPEC.mdfile. Here, you will define the detailed specification of what you are building./specify
-
Generate a plan: Use the
/plancommand to generate aPLAN.mdfile from your specification. This plan will outline the technical implementation details./plan
-
Generate tasks: Use the
/taskscommand to break down the plan into actionable tasks in aTASKS.mdfile./tasks
-
Implement tasks: Use the
/implementcommand to get assistance with implementing a specific task from yourTASKS.mdfile./implement <task-number>
To set up the development environment and test the extension locally, follow these steps:
-
Clone the repository:
git clone https://github.com/rishops/sdd cd sdd -
Install dependencies:
npm install
-
Build the extension:
npm run build
-
Link the extension for local development: This will allow you to use the extension locally without having to reinstall it after every change.
gemini extension link .
To run the tests for the extension, use the following command:
npm run testContributions are welcome! Please feel free to open an issue or submit a pull request on the project's repository.
This project is licensed under the MIT License.