Skip to content

Agile Vibe Coding Manifesto

Preamble

Software development increasingly involves collaboration between humans and automated systems capable of generating, modifying, and evolving code.

This shift dramatically increases the speed and scale of software creation. While this creates new opportunities, it also introduces new responsibilities for how software systems are designed, understood, and maintained.

Automation can accelerate development.

Responsibility for the systems we build remains human.

Relationship to the Agile Manifesto

The Agile Manifesto and its twelve principles remain foundational.
They continue to guide how teams deliver value, collaborate, and continuously improve.

The Agile Vibe Coding Manifesto does not replace Agile.
It builds on top of it, extending its philosophy to environments where automated systems participate in the production and evolution of software.

Values

We are discovering better ways of building software through collaboration between humans and automated systems.

Through this work we have come to value:

  • Accountability over anonymous generation
  • Traceable intent over opaque implementation
  • Discoverable domain structure over scattered code
  • Human-readable documentation over implicit knowledge

In the spirit of the original Agile Manifesto:

"While there is value in the items on the right, we value the items on the left more."
— Agile Manifesto (2001)

Principles of Agile Vibe Coding

These principles complement the original Agile principles and address the realities of software development where automated systems participate in producing code.

1. Customer value remains the primary objective

Acceleration in development must translate into validated customer value.
Speed without value is waste.

2. Humans remain accountable for software systems

Regardless of how code is produced, software systems must have clear human responsibility.
Humans remain accountable for the systems that are deployed and operated.

3. Every change has traceable intent

Features, modifications, and generated code must be traceable to a requirement, decision, or problem being solved.

4. Systems remain deterministic and verifiable

Software behaves predictably and is verified through tests.

5. Documentation preserves shared understanding

Clear, human-readable documentation preserves the intent and structure of the system.

6. Code structure reflects the domain

Software is organized around domain concepts rather than technical convenience.

7. Architecture guides and constrains generation

Clear architectural boundaries and patterns guide automated generation.

8. Automation must remain verifiable

Automated systems may generate or modify software, including entire systems. Their outputs remain understandable, reviewable, and verifiable by humans.

9. Generated systems remain understandable and maintainable

Software remains readable, maintainable, and evolvable by humans, regardless of how it was produced.

10. Context is explicit and versioned

Requirements, architecture, prompts, and domain language must be externalized, versioned, and shared.

11. Knowledge remains accessible

Critical system knowledge lives in shared artifacts such as documentation, tests, and architectural records.

12. Teams regularly reflect on the use of automation

Teams regularly evaluate how automated systems are used in development and adjust practices accordingly.

Contributing

This manifesto is a living document.

Proposed changes and discussions are maintained on GitHub:

https://github.com/NachoColl/agilevibecodingmanifesto/

Contributors

This manifesto is the result of collaboration.

Additional contributors will be listed here as they participate in the evolution of the manifesto.

If this resonates, consider starring the repository — it helps others find the manifesto and signals that these principles matter to the community.

Star on GitHub