AI Policy
AI tooling is increasingly part of the software development landscape, and Buddies of Budgie is no exception; we use these tools ourselves. This document outlines our expectations for transparency, accountability, and quality when AI is involved in contributions.
Budgie Desktop is used by people around the world as their daily computing environment. Every change has the potential to affect the experience of countless users. We take that responsibility seriously, and contributors (whether using AI tools or not) must do the same.
We take great pride in our work. Writing software is pragmatic by nature. It has to work, be maintainable, and be easy to reason about (at least, as easy as one can reason about an entire desktop environment). But we also treat writing code as a craft. We would rather move deliberately than move fast and break things. That care and intentionality is something we want to preserve in every contribution.
Our Stance
Buddies of Budgie follows a human-centric development model. It is our position that only humans can be authors and ultimately be held accountable. People develop for and deliver the Budgie Desktop experience to other people, whereas "AI" / LLMs are merely tools used to facilitate our objectives.
We recognize that AI tools like Claude, Gemini, Copilot, opencode, and others can be valuable. They can help explore ideas, work with the author to draft or explore technical implementations, accelerate development, and improve the clarity of communicating everything from blog posts to writing issues and pull requests.
This policy does not endorse or discourage any particular model or provider. Contributors are free to make their own informed choices about which tools they use.
Budgie 11
The use of AI tooling and large language models for Budgie 11 contributions remains extremely limited and scoped for the foreseeable future.
Budgie 11 is a ground-up rewrite in C++ with a new architecture. The team needs the opportunity to properly learn how to write Qt and modern C++, as well as design our architecture through hands-on experience. Without that foundation, it is not trivial, even for the core team, to distinguish AI-generated code that looks reasonable from code that introduces bad practices or architectural problems.
We kindly request that contributions to Budgie 11 minimize the use of large language models and AI tooling for code generation. Research and learning assistance is fine, but the code itself should be crafted by a human.
This restriction will be revisited as the project matures and the team builds confidence in evaluating AI-assisted C++ contributions.
Code Contributions
Testing Requirements
All contributions must be tested before submission. When AI tools are involved, this is especially important as AI-generated code can be subtly wrong in ways that look correct at first glance.
- Non-trivial AI-assisted code must be built, installed, and tested by the contributor
- Substantial changes (refactors, new features, behavioral changes) require rigorous, thorough testing
- The contributor must verify the changes work as intended in a running Budgie Desktop session where applicable
"Trivial" is intentionally loosely defined. Typo fixes, documentation corrections, comment updates are considered trivial. If you're unsure whether your change qualifies, err on the side of testing it. When in doubt, build and install.
Attribution
When AI tools assisted with code changes (writing, modifying, or generating code), add an Assisted-by trailer to the commit message with the tool and model identifier. This is in addition to the requirements outlined in our Contributing documentation:
feat(panel): add workspace indicator tooltip
Implement hover tooltips showing workspace names in the workspace
indicator applet.
Assisted-by: Claude:claude-opus-4-6
Signed-off-by: Your Name <your.email@example.com>
Format
Assisted-by: <Tool>:<model-id>
Examples
| Tool | Trailer |
|---|---|
| Claude | Assisted-by: Claude:claude-opus-4-6 |
| Gemini | Assisted-by: Gemini:gemini-2.5-pro |
| GitHub Copilot | Assisted-by: Copilot:gpt-4o |
| ChatGPT | Assisted-by: ChatGPT:gpt-4o |
This follows the Linux kernel's precedent for tool attribution in commit trailers.
When Attribution Is Required
- AI wrote or generated code that ended up in the commit
- AI substantially modified or refactored existing code
- AI generated an implementation that the contributor then adapted
When Attribution Is NOT Required
- AI was used for research only - asking questions, understanding APIs, exploring approaches - but the human wrote all the code
- AI performed purely mechanical tasks like formatting, running commands, or committing
- AI was used to help write documentation for issues or pull requests (not committed code)
The distinction is about code in the repository. If you used AI to understand how GTK layer shell works and then wrote the implementation yourself, no trailer is needed. If AI generated the implementation and you reviewed/adapted it, include the trailer.
Enforcement
Intentional obfuscation of AI tooling usage for source code changes is grounds for rejection of the contribution and may result in the individual being blocked from future contributions.
We are not interested in policing every keystroke. The goal is honest, transparent collaboration. If you used AI to help write code, say so. It's that simple.
Pull Request Guidance
When submitting a pull request that includes AI-assisted code:
- Ensure all relevant commits include the
Assisted-bytrailer and align with our Contributing documentation - Your test plan should reflect that you actually built, installed, and verified the changes
- Supplemental comments on the PR with AI prompt/planning information are welcome and encouraged for research and learnings, but not mandatory
If you used an AI agent for planning or implementation, sharing that context as a PR comment can be valuable for reviewers and for the project's collective learning. However, AI planning documents should not be committed to the source repository. Share them as PR comments instead.
Blog Posts and Written Content
The attribution requirements in this policy are specific to source code contributions. Blog posts and other written content are a different matter. Writing is inherently a process of drafting, editing, and refining, and AI tools can be a natural part of that workflow.
AI tools may be used to assist with writing blog posts, release announcements, and other project communications. No Assisted-by attribution is required for written content. The author is still expected to review, refine, and stand behind what is published; the final voice should be theirs.
Content that is wholly generated by AI tooling without meaningful human involvement is never acceptable. Readers should never expect that a blog post or any form of written content by Buddies of Budgie was produced entirely by AI. There is always a human involved in the process of shaping the narrative, ensuring accuracy, and making it our own.
This Policy Applies Equally
This policy is tool-agnostic. It applies to Claude, Gemini, Copilot, ChatGPT, locally-hosted models, and any other current or future models. The expectations are the same regardless of which tool you use.
Living Document
This policy is subject to change as the AI landscape and our own experience with these tools evolve. Contributors are expected to be mindful of updates to this policy and to periodically revisit it to ensure their practices remain in alignment.