So, Robin and I (Paul) have begun some discussion about the possible role of LLM-based “AI” in the development of Ardour. Before going any further, let’s clarify what remains unchanged in our assessment:
- machine generated code cannot be copyrighted; it therefore cannot be licensed, which means that if it is not public domain (a concept that doesn't really exist within the EU), it cannot be compatible with existing FLOSS licenses, including the GPL2+ that Ardour uses.
- US courts (and others) have indicated that some amount of human intervention in the generation of code by a machine makes it copyrightable, but they have not indicated precisely what level of intervention/involvement/modification is required.
- currently, the most capable LLM's remain under the tight control of high-value corporations, who can price access to it as they see fit, as well as withdraw or curtail access for any (or no) reason at all.
- using LLM's requires large amounts of energy and highly specialized and very expensive hardware. This is typically not local to the user, but "in the cloud".
- the construction of the "data centers" where this hardware is located is a focus of worldwide opposition, partly but not wholly attributable to the energy and water consumption that these centers require.
- LLMs have been trained unscrupulously on the vast mass of open source projects, along with an unknown amount of non-open source code. When they are asked to generate code, the extent to which they are violating the terms of the licenses of the code they were trained on is subject to significant debate; it is sufficient to note that there are questions to be raised here about both the morality and the legal provenance of the generated code.
- LLMs can generate new code (and thus new "pull requests") that arrive at open source projects like Ardour) at a rate that almost always outstrips the capacity of human programmers to review it effectively. This either means massive overload for code reviewers, or the adoption of large amounts of unreviewed code, or both.
- Overall, widespread adoption of LLM-based technology appears likely to have profound economic, political, social and environmental impacts, with many/most of them negative for the foreseeable future. For this reason, we are extremely reluctant to adopt it within the Ardour project.
In the interests of "knowing the enemy", we have experimented a little with Claude ourselves, and watched several LLM-generated PRs sent to the Ardour project. More recently, we've seen the emergence of at least four "vibe coded" complete DAWs, written in a tiny percentage of the time Ardour took and at least superficially very feature complete. This has caused us to consider whether our absolute position on "no LLM code" in Ardour is correct, and we've decided to open this discussion up to our community. But before that, please read more to see the sorts of things we're thinking about.
Bad LLM code/design
It is clear from some of the PRs we've seen that LLMs are entirely capable of generating problem-riddled code designs. We think that this may be partly a function of the fact that person prompting the LLM doesn't know much about Ardour's internal architecture or about what we consider "good design". We do not want to spend any time reviewing such PRs and we don't want their code inside the program. Even on one small project that Paul attempted, the initial LLM-generated solution was completely wrong and deeply flawed from a design perspective (it did provide a few clues on how to move forward with human-based development, though).
Amazing LLM code generation
Paul recently tried Claude's capability to implement a large body of code (16k lines of C++) that could address a fairly significant issue for Ardour's future prospects. This was mostly grunt work, implementing several hundred functions required by an API, but using a technology that has so far played no part in our codebase. Claude was apparently able to complete this task in a single digit number of hours, after 14 iterations with feedback and insights from Paul. We do not believe there is any human being alive on the planet who would have voluntarily completed this task, let alone in the time frame that Claude appears to have taken. In this case, the resulting work could benefit many other projects who are currently grappling with potential irrelevancy on future Linux systems.
Developer-constrained Development
Over the years, Ardour has benefitted from the amazing contributions of developers and others. However, it remains true that for most of its life, the project has been severely constrained by available developer-hours. Some of the tasks we have on our roadmap are deep, intense, far-ranging projects. It is (to be frank) quite intimidating to think about starting these when the scope of the changes and the likely time to get them release-ready are so large.
Although the new "vibe-coded" DAWs are lacking in innumerable details that Ardour (and other traditionally developed DAWs) have gained over the decades, there is every sign that their codebase can evolve at astonishingly fast rates. They may not be contenders for serious use today, but in 3 months or a year, that could be a very different situation.
Based on what we have seen of Claude (and others) so far, there is no way that any human development team can effectively keep up with what a good LLM coding harness is capable of.
Who's going to do it? Who's going to care?
Continuing on from the previous point: there is no queue of programmers lined up waiting to work on Ardour. If we use an LLM to accomplish a task, we have not taken that task away from a human developer, we've simply made it more likely that the task gets done.
Further, Ardour is a tool, not a final product for the overwhelming majority of our users. Extending and improving the capabilities of that tool takes nothing away from the audio productions that our users undertake with Ardour.
So ...
... the question becomes: how to proceed here? Here is an outline of an approach that Robin and I discussed:
- We do not accept LLM-generated code (*) generated for/by people without write-access to our repository. Possibly the limitation would be both more specific and more arbitrary than that: we need to feel confident that the code has been generated at the direction of someone who understands Ardour's internal architecture and design. This would likely lead to some dissatisfaction since the criteria will likely appear arbitrary to some. (*) This would be waived for 1-5 line bug fixes whose purpose and intent is clear.
- We should preferentially use LLM's to generate code for features/projects that are developer-time limited, rather than inspiration limited. To give an example from our current context (fall of 2026): this principle would support using LLMs to work on a feature like folder tracks, but not helping Ardour to be more friendly to non-western musical culture.
- When using an LLM we should strive to play a significant role in the design and evolution of the code, to the extent that we can confidently claim copyright (in the face of the legal situation mentioned above).
- When reviewing LLM-generated code, we may reject it en masse for any reason, without explanation. This is critical for limiting the chance that we are just overwhelmed by LLM-generated PR's. We cannot stop those from being queued, but we need to remain free to take a very quick look and just reject it without explanation. We know this may be hard on some possible contributors, but the project cannot become dominated by PR reviews. The first point above notwithstanding, it would be ideal to first discuss features with developers before asking an LLM to generate code that has a strong chance of being summarily rejected.
- We continue to have zero to very limited interest in AI-assisted workflows within Ardour. The only possible exception at this time might be stem separation. We do not work on automated mixing, automated composition, automated accompaniment etc. etc.
In as tiny a nutshell as it can be put: what do you think about using LLM coding tools to speed up the development of Ardour (under something like the guidelines described above), versus remaining free of such tools' output but also moving at a notably slow pace compared to other DAWs (notably the new "vibe coded" ones)? Again, this is not a question about AI tools within Ardour, but the use of AI tools to work on development.
Let us know (we're sure you will). This discussion is not binding on us, but we are seriously and genuinely interested in your opinions.