VV VV II BBBBBB EEEEEEE DDDDDD VV VV II BB BB EE DD DD VV VV II BBBBBB EEEEE DD DD V V V II BB BB EE DD DD V V II BBBBBB EEEEEEE DDDDDD
M E T H O D O L O G Y
Welcome to the vibeD Development Methodology. This document is a guide for project managers and developers who want to build software in close collaboration with a Large Language Model (LLM) assistant, such as the Gemini CLI.
vibeD is a hybrid approach that combines the rigor of milestone-driven development with the flexibility of Agile and Scrum. It's designed to maximize the unique capabilities of an LLM, turning it from a simple coding assistant into the primary driver of the development process.
Throughout this guide, we will use the shutri
project as a real-world case study. You can explore its artifacts to see vibeD in action.
It is important to understand that the vibeD
methodology was not created in a vacuum. It was developed and refined alongside the creation of a real-world application: the shutri
audio editor. This project serves as the concrete, living example for every principle described in this guide.
The shutri
project itself was "vibe-coded" from the ground up using this very process. This ensures that the methodology is practical, grounded, and proven—not just a theoretical fantasy. The relationship is symbiotic: shutri
is the product of vibeD
, and vibeD
is the documented process that built shutri
. By exploring the project's artifacts, you are seeing the direct output of the methodology in practice.
In Hindi, the word "shutri" literally means "vibes" :-)
The vibeD methodology is built on a fundamental shift in perspective: the LLM is the developer. The human's role is to act as the Project Manager or Product Owner—setting the vision, defining the goals, and verifying the results.
git
activities—from writing detailed commit messages to staging and committing files—are performed by the LLM.This approach creates a powerful, self-documenting, and highly-auditable development process.
Before writing a single line of code, your first task is to collaborate with your LLM assistant to create a detailed Technical Specification. This document is the blueprint for your project.
Your Goal: To produce a comprehensive TECH_SPECS.md
file.
How to do it:
Case Study:
shutri
The technical specification for theshutri
project was built through this exact iterative process. The result is a detailed document that covers everything from the system architecture to the command-line options.
See the artifact:TECH_SPECS.md
Once the technical vision is clear, the next step is to define the development process itself. This is where you create the vibeD_METHODOLOGY.md
document (the very guide you are reading now).
Your Goal: To establish a clear, documented process for the project.
How to do it:
TECH_SPECS.md
.A Note on Planning Philosophy: The vibeD methodology deliberately avoids detailed, upfront project planning with Work Breakdown Structures (WBS) or tools like Microsoft Project. The focus is on high-level, flexible sprint planning. Each milestone represents a sprint with a clear goal, but the specific tasks to achieve that goal are determined dynamically by the LLM during the development process. This approach maintains agility and leverages the LLM's ability to adapt and solve problems without being constrained by a rigid, pre-defined task list.
Case Study: The
shutri
Development PlanThe following is the complete, multi-phase development plan created for the
shutri
project. It serves as a concrete example of the output of this step.Phase 1: Prototype
This phase focuses on building the core functionality of
shutri
and validating the text-based audio editing concept.
- Milestone 1: Project Setup and Core Data Structures
- Milestone 2: Audio Import and Splitting
- Milestone 3: Transcription File Generation
- Milestone 4: Vim Integration & Playback
- Milestone 5: Audio Export
- Milestone 6: Real Transcription Service & Authentication
- Milestone 7: Polish and Finalize
Phase 2: Dev
This phase focuses on expanding features, stability, and reach.
- Milestone 8: Alpha Release & Community Feedback
- Milestone 9: Feature Complete & API Stability
- Milestone 10: Cross-Platform Support
Phase 3: User
This phase focuses on preparing the application for a wider, non-technical audience.
- Milestone 11: Beta Release & User Acceptance Testing (UAT)
- Milestone 12: General Availability (GA) & Long-Term Support (LTS)
This is the core loop of the vibeD methodology. You will treat each milestone as a self-contained "sprint."
For each new milestone, your first action is to ask the LLM to create a dedicated test plan. This document translates the milestone's goal into a concrete, verifiable checklist. While the LLM can and should write automated unit and integration tests, the milestone test plan is different—it's a list of actions for a human to perform to validate the outcome.
Human-in-the-Loop Testing is Mandatory: The vibeD methodology requires that a human verifies the outcome of every milestone. The LLM's role is to make this process as easy as possible by generating a clear and comprehensive test plan.
Case Study:
shutri
For each milestone, the Gemini CLI created a detailed test plan outlining the steps for manual verification.
See the artifacts:
A successful project relies on well-maintained documentation. In vibeD, this is an active, ongoing process driven by the LLM.
The KNOWLEDGE_BASE.md
is the project's central, living repository of information. It's used to store important context, design decisions, and learnings that don't fit neatly into the technical specs or methodology.
How to do it: As you work with the LLM and make decisions, periodically instruct it to summarize the key takeaways and add them to the knowledge base. This prevents valuable context from being lost in the conversation history.
Case Study:
shutri
The project's knowledge base is used to track architectural decisions and other key project information.
See the artifact:KNOWLEDGE_BASE.md
No plan is perfect. vibeD manages change through two key documents:
DEFECT_TRACKER.md
: Used to log any bug that breaks the functionality of a previously completed milestone.CHANGE_TRACKER.md
: Used to log any proposed enhancement or change that would alter the scope of a previously completed milestone.Case Study:
shutri
These trackers are used to maintain the quality and integrity of the project's approved milestones.
See the artifacts:
GEMINI.md
To ensure the LLM assistant remains perfectly aligned with the project's standards and conventions across different machines and development sessions, vibeD utilizes a special directive file.
GEMINI.md
: This file, located in the project's root directory, contains a set of persistent instructions for the Gemini agent. The agent is required to read and adhere to these instructions every time it is invoked within the project.How to do it:
GEMINI.md
file in the root of your git repository.This practice turns implicit conventions into explicit, automated instructions, further enhancing the consistency and reliability of the LLM-driven development process.
A core principle of vibeD is that quality should improve over time. The primary metric for measuring this is Defect Density.
In the context of vibeD, Defect Density is not measured against lines of code. It is a measure of process stability, calculated as:
Defect Density = (Number of Primary Defects) / (Number of Completed Milestones)
A "Primary Defect" is any bug logged in the DEFECT_TRACKER.md
that represents a regression in a previously completed and verified milestone.
The goal of the vibeD methodology is to reduce Defect Density by 75% in each successive development phase.
Because the LLM assistant maintains the DEFECT_TRACKER.md
, calculating this metric is a straightforward, data-driven process. It is the Project Manager's responsibility to periodically review this metric to ensure the project's quality is improving as expected.
The vibeD methodology provides a structured, transparent, and highly efficient framework for building software with an LLM assistant. By casting the human as the project manager and the LLM as the developer, it leverages the strengths of both to create high-quality, well-documented, and rapidly-developed projects.